1. 程式人生 > >python學習之面向對象程序設計的一些思考

python學習之面向對象程序設計的一些思考

函數 對象 程序 以及 有時 使用實例 狀態 情況 讓其

將屬於一類的對象放在一起:

    如果一個函數操縱一個全局變量,那麽兩者最好都在類內作為特性和方法實現。

  

不要讓對象過於親密:

    方法應該只關心自己實例的特性,讓其他實例管理自己的狀態。

簡單就好:

    讓方法小巧起來,一般來說,多數方法都應在30秒內被讀完,盡量在代碼的行數控制在一頁或者一屏之內。

小心繼承,尤其是多繼承:

    繼承機制有時很有用,但也會在某些情況下讓事情變得過於復雜,多繼承難以正確使用,更難以調試。

在需要思考用什麽類以及類有什麽方法時,可以用以下方法。

1:寫下問題的描述,把所有的名詞、動詞和形容詞加下劃線。

2:對於所有的名詞,用作可能的類。

3:對於所有的動詞,用作可能的方法。

4:對於所有的形容詞,用作可能的特性。

5:將所有的方法和特性分配到類裏。

當我們對即將做的事能抽象出一個模糊的對象草圖時,就可以考慮類和對象之間的關系以及他們的作用。剩下的就是逐漸的精煉模型。

1:寫下一系列的使用實例,也就是程序應用時的場景,試著包含所有的功能。

2:一步步考慮每個使用實例,保證模型包括所有需要的東西。如果有些遺漏的話就添加進去,如果某處不太正確則糾正,直到滿意為止。

python學習之面向對象程序設計的一些思考