前回、なぜオブジェクト指向を使うのか?をフォルダの構造に例えてみたのだけど、その続き。
なぜ継承を使うというとそのプログラムがどんなものか、ぱっと見て分かるようにするため。
今回も身近なものに例えるとファイルの拡張子あたりになるのかな。
たとえば.txtだったらテキストファイル、.bmpだったらビットマップファイル、
.docだったら(私の大嫌いな)ワードファイルという風になんとなくどんなものかイメージをつけやすい。
それと同様に継承することによってどんなものか分かりやすくなるし、
その継承したものの満たすべき要件をある程度の規則をつけることができる。(→オーバーライド)
例えばビットマップファイルのデータであれば
当然、ペイントエディタで読み取れるデータ形式でなければならない。
規則についてはコーディング規約というもので縛ることもできるが無視する人っていると思う。
特に大規模開発においては遵守させるのも一苦労。
それを強制させる役割もあるのではないか?と思ったので書いておく。