python測試開發django-191.Bootstrap3 輪播圖(Carousel)
面向物件和麵向過程的區別
區別簡述
面向過程(Procedure Oriented):以過程為核心,強調事件的流程、順序,如:C語言。
面向物件(Object Oriented):以物件為核心,強調事件的角色、主體,如:C++、Java。
區別
1.思路不同
2.特點不同
3.優勢不同
面向過程是直接將解決的問題分析出來,然後用函式將步驟一步一步實現,然後再一次呼叫就可以了;
面向物件是將構成問題的事物,分解成若干個物件,建立物件的目的不是為了完成一個步驟,而是為了描述某個事物在解決問題過程中的行為。
面向過程思想偏向於我們做一件事的流程,首先應該做什麼,其次做什麼,最後做什麼。
面向物件思想偏向於瞭解一個人,這個人的性格,特長是怎麼樣的,有沒有遺傳到什麼能力,有沒有家族病史。
面向過程是一種以過程為中心的程式設計思想,面向過程程式設計是基於馮諾依曼模型的。
面向過程優點
流程化使得程式設計任務明確,在開發之前基本考慮了實現方式和最終結果,具體步驟清晰,便於節點分析,效率高,面向過程強調程式碼的短小精悍,善於結合資料結構來開發高效率的程式。
面向過程缺點
需要深入的思考,耗費精力,程式碼重用性低,擴充套件能力差,後期維護難度比較大。
面向物件優點
易維護,易擴充套件,易複用,有封裝、繼承、多型的特性、更容易設計出耦合的系統。
面向物件缺點
效能沒有面向過程高
如何理解面向物件的三個特性
封裝
將屬性和方法都放在一個類裡,而且還可以通過訪問類的許可權屬性給區分開,使用者不需要知道我這個類中的屬性和方法到底怎麼寫的,直接呼叫使用即可。更加安全,不想要釋放的功能,可以直接做成私有。
繼承
就是把之前已經實現好的程式碼或者方法通過繼承的方法拿過來使用,能節省大量的程式碼量,符合程式碼設計裡面的繼承優秀程式碼特性。
多型
由於可以繼承多個類,能夠組合成多種特性,但多型的關鍵是覆蓋,就是同一個方法可以用不同的方式去實現,展現出多型性,就是方法和屬性有多種形態。