プリンシプルプログラミング プログラミング

【POP25】アーキテクチャ根底技法④パッケージ化

はじめに

この記事は「プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則」を読んだ際に記した議事録です。

著作権の関係により、詳細には書きません。詳しい詳細を知りたい方はぜひ本書を読んでみてください。

プリンシプルオブプログラミングをPOPと訳します。

What : モジュールをグルーピング

モジュールを意味のある単位にまとめて、それをグループ化します。モジュールがデータやロジックをまとめるのに対してパッケージ化はモジュールをまとめるのでより大きなものとなります。

ソフトウェアの責務や機能を意味のある単位で格納するための物理的なコンテナの役目を果たします。

Why : モジュール群の複雑度を下げる

モジュール作成により、複雑性は下がります。しかし、ソフトウェアが大規模になってくると、モジュールが大量に作成され、複雑性を生むことになります。そこでパッケージ化です。

パッケージ化はモジュールをグルーピングすることで、下記のようなメリットがあります。

  • パッケージという小さい単位に分割されるので複雑性が下がります。
  • パッケージは無関係なモジュールが混じらないため、モジュールの管理が用意になります。
  • 修正の影響がパッケージ内にとどまるのでコードの変更が容易。
  • 依存関係が整理されてパッケージを単位とした再利用をしやすくなります。

How : 大事なことは現場にあり。

パッケージ化はトップダウンでは決められません。ボトムアップで作ります。

まずは、関連性の強いデータやロジックをまとめてモジュールを作ります。そして関連性の強いモジュールをまとめてパッケージを作ります。常に下から下から作っていきます。

まずは、パッケージのことは考えず、モジュール化します。モジュールが増えて複雑になってきたところでパッケージの設計を始めるようにします。一度設計して終わりではありません。プログラミング、プロジェクトの進行と進行とともにパッケージも成長、進化していきます。

終わりに

この記事ではプリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則の議事録を自分用に記しています。

この記事ではカバーしきれていない部分も多いので、是非本書を手にとって読んでみてください。

次回、「【POP26】アーキテクチャ根底技法⑤機能、目的ごとに分離しよう」です。ぜひ、次の記事も読んでみてください。

  • この記事を書いた人
  • 最新記事

ミッチー

小中高と野球漬けの毎日 ▶︎ 大学時に自分が何もできないことに気づき、プログラミング学習開始 ▶︎ PCは疎かったがめげずに継続 ▶︎ 受託で案件を頂きながら、オーダースーツ事業に、通販事業にも参戦 ▶︎ 東証一部Web系自社開発企業にエンジニアとして内定。

-プリンシプルプログラミング, プログラミング

© 2022 オミチャンネル Powered by AFFINGER5