C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■87831 / 1階層)  クラス結合度を落としたい
□投稿者/ にゃるら (29回)-(2018/07/04(Wed) 10:03:05)
No87830 (結合 さん) に返信
> .netの「ツールでコードメトリクスを計算」をしようすると
> メソッドの「クラス結合度」の数値が高い値になっている箇所があります。(25以上)
>
> フィールドに定義したオブジェクト変数のインスタンス生成とオブジェクト変数のプロパティに初期値を入れる処理が多数あるメソッドです。
> そのような処理をしているメソッドのクラス結合度を落とすにはどうすればよいでしょうか。

# 使ったことがない機能ですので具体的な数値の計算方法を知りませんが、機能の意味から考えての思いつきです。
# ちゃんとした回答があれば無視してください。

関係するクラスの数を減らすことになるので、1つのメソッド内で現れるクラス数を減らせばよいのではないでしょうか。
初期化を行うメソッドの処理を複数のメソッドに分け、分けたメソッドを呼び出すような形にすれば解決したりしませんかね。
また保持している変数の見た目上の数を減らすため、ブリッジパターンなどを使ってクラスを分けてみるのも手かもしれないですね。

もしそういった対応となるとプログラム設計での修正となるので、状況次第によっては対応することが適切なのか微妙ですけどね。
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←クラス結合度を落としたい /結合 →Re[2]: クラス結合度を落としたい /結合
 
上記関連ツリー

クラス結合度を落としたい / 結合 (18/07/03(Tue) 22:27) #87830
クラス結合度を落としたい / にゃるら (18/07/04(Wed) 10:03) #87831 ←Now
│└ Re[2]: クラス結合度を落としたい / 結合 (18/07/04(Wed) 21:35) #87844
Re[1]: クラス結合度を落としたい / Jitta (18/07/04(Wed) 22:30) #87845
  └ Re[2]: クラス結合度を落としたい / 774RR (18/07/05(Thu) 09:02) #87846
    └ Re[3]: クラス結合度を落としたい / 結合 (18/07/07(Sat) 21:21) #87856 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信