新規にアプリを開発する際、スピード重視でシンプルなアーキテクチャを採用するべきか、
はたまた将来の拡張性を考えて最初から重厚なアーキテクチャを採用するべきか、といったようなことを悩む人も少なくないと思います。
でもやっぱり、開発スピードも、拡張性も、コードの可読性も、どれも諦めたくない!!!
それらを達成するために試行錯誤し、私が辿り着いた一つの開発手法をご紹介します。
ポイントは以下の3つです。
—————
・VIPERアーキテクチャを用いて各レイヤーを疎結合に!
・機能毎にComponentViewとして分割してViewContollerではそれらを組み合わせるだけに!
・ソースコードを積極的にテンプレート化してコード自動生成をフル活用!
—————