一覧
- 重複したコード
- 長すぎるメソッド
- 巨大なクラス
- 多すぎる引数
- 変更の発散
- 仕様変更が起きた時の修正箇所があちこちに散らばっている
- 変更の分散
- あるクラスを修正すると、他のクラスもあわせて修正しなければならない
- 属性、操作の横恋慕
- データの群れ
- まとめて扱うべき複数のデータが、1つのクラスにまとまっていない
- 基本データ型への執着
- クラスを作らず、intのような基本データ型ばかり使っている
- スイッチ文
- switch文やif文を使って振る舞いを分けている
- パラレル継承
- サブクラスを作るとクラス階層の別のところにもサブクラスを作らなければならない
- 怠け者クラス
- 疑わしき一般化
- いつかこういう拡張もするだろうと期待して、一般化しすぎる
- 一時的属性
- メッセージの連鎖
- 仲介人
- 移譲ばかりしていて、自分では仕事をしていないクラスがある
- 不適切な関係
- その必要がないのに双方向リンクを張っていたり、IS-A関係がないのに継承を使っていたりする
- クラスのインタフェース不一致
- 未熟なクラスライブラリ
- データクラス
- フィールドとgetterメソッドとsetterメソッドしか持っていないクラスがある
- 相続拒否
- 継承しているメソッドなのに、それを呼ぶと問題が起きる
- コメント
Why not register and get more from Qiita?
- We will deliver articles that match you
By following users and tags, you can catch up information on technical fields that you are interested in as a whole
- you can read useful information later efficiently
By "stocking" the articles you like, you can search right away
Sign upLogin