【もじゅーるぎょうしゅうど】
モジュール凝集度 とは?
💡 「このモジュール、一つのことに集中してる?」を測るものさし
📌 このページのポイント
モジュール凝集度って何のこと?
モジュールの中に入っている機能や処理が、どれだけ一つの目的にまとまっているかを示す指標だよ。たとえば「料理だけする部屋」は凝集度が高くて、「料理も洗濯も勉強もする部屋」は凝集度が低いイメージだね
凝集度は高いほうがいいの?
そうだよ。凝集度が高いモジュールは一つのことに集中してるから、修正する理由が限定されて保守しやすいんだ。逆に凝集度が低いと、一つの変更が関係ない機能に影響する「思わぬバグ」が出やすくなるよ
凝集度にはレベルがあるって聞いたんだけど?
7段階あるよ。高い順に言うと、機能的凝集(一つの機能を完結)→逐次的凝集(前の出力が次の入力)→通信的凝集(同じデータを扱う)→手順的凝集(順番に実行)→時間的凝集(同じタイミングで実行)→論理的凝集(似た種類をまとめただけ)→偶発的凝集(無関係な寄せ集め)だよ
偶発的凝集って具体的にはどういうこと?
モジュール結合度とはどう違うの?
📖 おまけ:英語の意味
「Module Cohesion」 = モジュールの凝集性
💬 cohesion は「結束・まとまり」という意味で、モジュールの中身がどれだけギュッとまとまっているかを表す言葉だよ