面向對象
面向對象編程、面向對象設計,在我剛學的時候,感覺這就是最高境界。
以前被別人面試,以及自己面試別人,那是必問的問題。
寫了這么多年小程序,寫了一大堆類,也沒感覺面向對象有什么好,有時還挺煩。
現在越來越不關心這個了,一個系統要開發,先要大家按功能劃分模塊,模塊化搞清楚,模塊間的主要接口搞清楚,模塊內怎么適合就怎么搞。
符合清晰原則就行,能清晰表達業務邏輯。
符合簡潔原則就好,復雜度能低則低。
前幾天往一年前別人開發的Java代碼里添加新功能,經典的MVC框架struts下,邏輯層被搞成3層,一個不大的功能模塊,一堆類一堆方法互相交錯,我感覺到了這個年青的同事果然功力深厚,我要加點功能很吃力了,看來我廉頗老也。
當然,很多時候不是面向對象的問題。
但是,不要會寫類了,知道繼承、多態等了,就以為沒問題了。
一堆類下去,功能總能實現,常見的現象。
善為士者,不武。--<<道德經>>