0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

プログラミングの原則 結果の局所化

Posted at

業務の中で、関係の強いコードはまとめるというレビューをいただき、同じような内容が「プリンシプルオブプログラミング」にも記述があったので整理しました。

どういうこと? 変更の影響を抑える

「結果の局所化」とは、「変更の影響が、局所に留まるようにコードを構成する」ことを指す。
モジュール化もこのために生まれた技術の1つ。モジュールは、そのモジュールの変更の影響を、モジュール内に留めることを目標の1つとして生まれている。

どうして? 修正と確認が容易に

結果の局所化がされていないと、ある部分の変更が、全く別の部分に影響して、変更コストが急増してしまう。
この時、どの部分に影響があるか明確に分かればまだ救われますが、たいていは不明瞭で、影響範囲を探す作業から開始する。

一方で、結果の局所化がされていれば、コードの読む範囲も修正の影響範囲も限られる。またコミュニケーションが円滑になる効果もあり、最初からコード全体を把握する必要がなくなる。

どうすれば? 関係が濃密なコードをまとめる

関係性の高いコードを密集させ、関係性の低いコード同士が依存しないようなコードにする。そのために関係性の高いコードを集約してモジュール化する。

この時、お互いに頻繁に呼び出しあっているモジュールは要注意。つまり本来一緒にいるべき要素が、分散している可能性がある。この場合、適切なモジュールの方に機能を寄せるか、モジュール機能を統合してしまうなど、同一機能の密集性を高めるようにする。


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?