物件導向與面向過程區別

2022-05-02 15:45:10 字數 835 閱讀 6853

物件導向是以事物為中心的程式設計思想,把構建問題事務分解成各個物件,建立物件的目的是為了描述某個事物在整個解決問題的步驟中的行為;

面向過程是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用時依次呼叫就可以了;

區別:物件導向程式設計,往往是從問題的一部分著手,一點一點地構建出整個程式。物件導向設計以資料為中心,類作為表現資料的工具,成為劃分程式的基本單位;物件導向是乙個抽象度更高的程式設計方法,它主要是集中於解決問題,目標是使模組的抽象度更高,可復用性更好,採取空間換時間的策略方式,一般物件導向過程是從下往上的開發過程,相對於面向過程來說,比較容易維護、復用和擴充套件;

面向過程程式設計,強調的是步驟、流程化的設計方式,它考慮的是實際的實現、模組化的思想方法,採取時間換空間的策略方式,一般面向過程是從上往下的開發過程;相對於物件導向來說,減少呼叫時的例項化,效能比更高,常見於嵌入式開發、linux/unix等;

物件導向三大特徵:

1.封裝

封裝是指將資料與具體操作的實現**放物件內部,外部只能通過介面使用該物件;程式在使用物件過程中,並不需要關係物件的資料結構細節以及實現操作的方式,這樣在一定程度上保證了系統的安全性;

2.繼承

繼承主要是用於**的復用,涉及的公用**部分可以在乙個類中提供,其他類只需繼承即可復用;

3.多型

多型是指在繼承體系中,所有派生類都從基類繼承介面,但由於每個派生類都是獨立的實體,因此有不同的效果響應,需要通過擴充套件**模組,實現介面重用;

總的來說:封裝隱藏實現細節同時包含私有成員,使得**模組化並增加安全指數;繼承可以擴充套件已存在的模組,目的是為了**重用;多型則是為了保證類在繼承和派生時,同體系內的任何類的例項被正確呼叫,實現了介面重用;

物件導向與面向過程的區別

面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。例如五子棋,面向過程的設計思路就是首先分析問題的步驟 1 開始遊...

面向過程與物件導向的區別

面向過程 1 現實世界是物件,分析階段是物件,在設計及開發階段是方法與方法之間的呼叫,與現實世界 分析階段不統一,容易出現偏差,增加了開發的難度,容易 出問題。2 因為方法與方法之間的直接呼叫,讓我們系統依賴底層具體實現,而不是 依賴高層概念及巨集觀的商業邏輯。3 方法與方法之間有呼叫 的藕合度太,...

物件導向與面向過程的區別

面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。例如五子棋,面向過程的設計思路就是首先分析問題的步驟 1 開始遊...