面向物件和面向程序的區別

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

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/472243.html
標籤:其他
上一篇:一個關于pyinstaller的 pathex 引數所引發的打包執行報no module name的例外錯誤
下一篇:【小記】與指標和二維陣列過幾招
