エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント3件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Rubyアンチパターン:神クラス
(特にRubyに限った概念ではないですが、他の言語だと微妙に状況が違うかもしれないので、ここではRuby... (特にRubyに限った概念ではないですが、他の言語だと微妙に状況が違うかもしれないので、ここではRubyの例に限定しています。) 機能は追加・改修する際、すでにあるクラスだけでなんとかしようとすると、特定のクラスにあらゆる機能を持たせてしまったりしかねません。そうすると「神クラス」が誕生してしまいます。 典型的な症状 特定のクラスに、メソッドやインスタンス変数がやたらたくさんある状態になったりします ソースコードも当然のように長かったりします 機能追加・機能修正するのが困難なクラスがあったりします どんな機能の修正でもなぜか特定のクラスを修正しないといけなかったりします 生じる問題 壊れやすくなり、修正コストが激増します かんたんな修正であっても、(なぜか)他の機能が壊れたりします。 テストがあれば壊れたことに気づけるかもしれませんが、気づいたところで直すには手間がかかります。テストがなけ
2022/04/13 リンク