我非常業餘,當談到OOP,使用Python自學習。面向對象編程實踐 - 概念/實體到對象
我主要關心的是將概念或實體分解爲對象。
例如,我剛剛編寫了一些代碼,用於控制連接到我的覆盆子pi的交通燈系統。
該系統包含:
- 一輛車掀起交通燈(紅,黃,綠)。
- 一個請求穿越的按鈕。
- 和綠色和紅色的光,告訴行人時越過
現在我結束了我的建模代碼作爲一個完整的類。對象中的方法調用對象中的其他方法。例如。當對象被初始化時,初始化方法調用「等待按鈕按下」方法,當檢測到按鈕被按下時,該方法調用「通過燈光序列」方法。
這是不好的做法?如果每個概念/實體都是單獨的類/對象,例如交通燈對象,按鈕對象,行人燈對象?
對不起,問題的開放性。
感謝您的幫助。
你應該在codereview:http://codereview.stackexchange.com/上發佈這個答案和代碼。一般來說,我會說分解到不同的對象。 – lolopop
嘗試至少區分用於與其他實體(對象)進行交互的方法以及用於初始化或設置的方法。 想一想接口,並嘗試以自然的方式打破你的東西。但儘管如此,我們不要過度簡單地解決簡單問題,而是要慢慢向面向對象的實踐邁進。 – Lemonade
擁有一個龐大的類只是在OO外觀下編寫程序代碼。所以,你應該把問題分解成更小的實體。 – StoryTeller