這學期剛上完Design Pattern的課程,使用的教科書是 J. Vlissides. 1998. Pattern Hatching: Design Patterns Applied. Addison-Wesley Longman Ltd. 這本書的作者跟老師是很好的朋友,Gang of Four之一,作者提到書中所有的設計都離不開兩大宗旨, Favor object composition over class inheritance 和 Program to interface not implementation ,這篇會稍微介紹紀錄一下兩個要點目的是什麼,之後再慢慢介紹其他的pattern。
Favor object composition over class inheritance
當需要重用程式碼時,比較好的方法應該是利用 Composition 而非 Inheritance,利用 Composition 物件只會透過自己 interface 訪問自己的功能,不會打破封裝,關聯性也較低。