SOLID原則
オブジェクト指向プログラミングの重要な5原則の頭文字を取ったもの。すなわち、
- Single Responsibility Principle / 単一責任原則
- Open Close Principle / 閉鎖解放原則
- Liskov Substitution Principle / リスコフの置換原則
- Interface Segregation Principle / インターフェース分離原則
- Dependency Inversion Principle / 依存性逆転原則
リスコフの置換原則
Liskov Substitution Principle
あるクラスがほかのクラスを継承しているとき、その両者が置き換え可能であるというオブジェクト指向の原則。
Javaを例に、もう少し具体的に説明してみる。
Listインターフェースを実装しているクラスは、ArrayListであろうとLinkedListであろうと、
どちらの実装を入れ替えても同じように動作するし、しなければいけない。
逆に言えば、あるインターフェースを使用するときは、その実装を気にする必要がない。
DRY原則・OAOO原則
Don't Repeat Yourself原則
Once And Only Once原則
どちらも、「重複を避けよ」という原則である。
日本語的には、「車輪の再発明」。
ちなみになんでもコピーペーストすることをWET原則(Write every time)という。
KISS原則
Keep it simple stupid
ロッキード社でSR-71を作っていた人の言葉。
シンプルにしろ、間抜け。
複雑なものを作るよりも、シンプルなものを作ることの方がずっと難しい。
単一責任原則
Single Responsibility Principle
ひとつのクラスは一つ以上の機能を持ってはいけない。
カーゴカルト・プログラミング
「import ~
の一文は、おまじないとして入れておいてください」というヤツ。
SIerで一般にみられる。