/note/tech

クリーンアーキテクチャはなぜフロントエンドに合わないのか

さて、結論から書くと、クリーンアーキテクチャとフロントエンドの関係は以下です。

  • クリーンアーキテクチャは、ソフトウェアの中で変わりやすく重要でない部分と変わりにくい重要な部分を、オブジェクト指向プログラミングの機能を使ってオニオン型のレイヤーで分けようというアプローチ
  • クリーンアーキテクチャでは、フロントエンド(UI)やフレームワーク、Web、CLIといった外部と、ビジネスルールを表現する内部を分離、独立させることが重要と説いている
  • モダンフロントエンドは、HTML/CSS/JS をセットにした小さいコンポーネントを組み合わせたUI管理のためのフレームワークを使って、単方向なデータフローでスケーラブルなアプリケーションを作るというアプローチ

両者を比較するだけでも、UI構築を主戦場とするフロントエンドにクリーンアーキテクチャを持ち込むという発想自体がナンセンスであることがわかります。

MEMO: