程式開發並非一定要物件導向不可,物件導向是一種方式,但是不是唯一的方式,這種方式很多時候有用,不代表任何時候都是最高效的,更不是唯一的真理。
物件導向將相關的狀態屬性和操作方法放在乙個實體中,起到了歸類和分而治之的作用。
對於乙個系統來說,這個是最根本的方法。但是物件導向的分而治之並不完美。面向過程也有分而治之的思想和能力,這就是模組開發。物件是複雜的,他有生命過程,有複製轉殖的需要,有保持狀態的需要,他是乙個複雜的實體。而很多時候我們不需要這麼多的東西,而只要乙個函式,乙個過程,乙個狀態。
第二個,物件導向的型別系統非常複雜。
第三個,物件導向的封裝不徹底,預設的實踐是介面和實現同為乙個物件實體,如果要分離處介面和實體就顯得難以程式設計。
程式開發的技巧是:簡單明瞭,分而治之,抽象化程式設計。
物件導向在這三個方面都有違反的表現,比如如果建立多個物件,物件間的相互關係變得非常複雜。程式設計師需要掌握非常多得實體概念。
分而治之就是物件導向對介面的分離和封裝上沒有做到很嚴格。沒有乙個系統的解決方案。父類對子類的影響,物件直接都是直接操作。
抽象化並不是物件導向的專利,比如unix系統的檔案就是典型的非物件導向的抽象。抽象是演算法的範疇,乙個出色的演算法,必然高度抽象他操作的物件,讓演算法適應更多的場合,而物件的型別系統反而會限制了抽象。
物件導向並不是必要的
程式開發並非一定要物件導向不可,物件導向是一種方式,但是不是唯一的方式,這種方式很多時候有用,不代表任何時候都是最高效的,更不是唯一的真理。物件導向將相關的狀態屬性和操作方法放在乙個實體中,起到了歸類和分而治之的作用。對於乙個系統來說,這個是最根本的方法。但是物件導向的分而治之並不完美。面向過程也有...
放棄你,並不是放棄愛你
痛苦的不是過去,而是記憶.回首過往的點滴,這段感情就像乙個沙漏,哪怕自己投入的再多,付出的再多,那沙子還是會一點點的流走,到最後握在手裡的只是一縷清風,和自己早已被風吹幹的淚痕 只有深愛的人才會讓你笑的最甜,卻也讓你痛的最真!回憶固然傷感亦美好,不如把這點唯一的美好,放在心底收藏至永遠.至少,我還有...
堅持,並不是那麼容易的事
一朋友,一本院校畢業,在醫療行業幹了1年,做藥品銷售代表。覺得幹得沒有成就感。就自學計算機謀求轉型。他當時選擇很多人都不願去的非洲,針對性地練習半年英語。社招進了華為。英語尚好,還願意去熱帶,雖然技術次了點,但只要肯學就行,華為也何樂不為。幹了兩年半,女朋友寂寞難耐,提出分手。於是回國,離職。出來以...