我接受了一家公司的採訪,他們問我這個問題?協議設計小類
您在設計子類時遵循的協議是什麼?我的答案是,如果子類共享父類的所有屬性和方法,並且它要實現自己的方法和屬性而不是實現子類。
有人可以讓我知道需要查看的項目列表嗎?
我接受了一家公司的採訪,他們問我這個問題?協議設計小類
您在設計子類時遵循的協議是什麼?我的答案是,如果子類共享父類的所有屬性和方法,並且它要實現自己的方法和屬性而不是實現子類。
有人可以讓我知道需要查看的項目列表嗎?
你的答案是一個良好的開端,但他們可能正在尋找更多:
例如:
是子類在這種情況下,合適的解決方案?
父類的多少功能將適用於 的子類?
你在正確的粒度級別繼承:是你的 子「最終」 - 一個將代表 繼承鏈的末端,或中間類將是父 類的其他子類端點跟隨?
您是否只需要一個子類,或者可能有幾個子類反映父類功能的不同方面,並添加其自己的 。
新功能的哪些方面將在 子類本身中實現,以及可以將多少委託給其他類或 子系統。
聽起來簡單,但以下適當命名原則您 類和子類也很重要:請確保您的 子類的名稱正確地描述了它的功能和 關係,父類。
有些事情要研究 - GOF的書是一個艱難的讀操作,但「Head First設計模式」是更方便,但有時它會變成非常初級的細節。這裏也可能有Python特定的設計書,但是我不熟悉它們。
相關主題可能是:
*)繼承
*)對象組合/代表團VS繼承
*)抽象類/接口
感謝much..Even雖然我的工作但不能像你寫的那樣理解 – user1050619 2013-03-11 18:40:03
這不是一個容易回答的問題 - 範圍非常廣泛,繼承有很多缺點 - 需要謹慎。 – Vector 2013-03-11 19:21:52