物件導向與面向過程有什麼區別?

2021-06-30 16:31:27 字數 652 閱讀 7083

1)出發點不同。物件導向方法使用符合常規思維的方式來處理客觀世界的問題,強調吧問題域的要領直接對映到物件及物件之間的介面上。面向過程方法強調則是過程的抽象化與模組化,它是以過程為中心構造或處理客觀世界的問題。

2)層次邏輯關係不同。物件導向方法則是用計算機的邏輯模擬客觀世界中的物理存在,以物件的集合類為處理問題的基本單位,盡可能是計算機世界向客觀世界靠攏,以使問題的處理更清晰直接,物件導向方法使用類的層次結構來體現類之間的繼承和發展。而面向過程方法處理問題的基本單位是能清晰準確地表達過程的模組,用模組的層次結構概括模組或模組間的關係與功能,把客觀世界的問題抽象成計算機可以處理的過程。

3)資料處理方式與控制程式方式不同。物件導向方法將物件與對應的**封裝成乙個整體,原則上其他物件不能直接修改其資料,即物件的修改只能由自身的成員函式完成,控制程式方式上是通過「事件件驅動」來啟用和執行程式。面向過程方法是直接通過程式來處理資料,處理完畢後即可顯示處理結果,在控制方式上是按照設計呼叫或返回程式,不能自由導航,各模組之間存在控制與被控制、呼叫與被呼叫的關係。

4)分析設計與編碼轉換方式不同。物件導向方法貫穿於軟體生命週期的分析、設計及編碼中,是一種平滑過程,從分析到設計再到編碼是採用一致性的模型表示,即實現的一種無縫連線。面向過程方法強調分析。設計及編碼之間按規則進行轉換,貫穿於軟體宣告週期的分析、設計及編碼中,實現的是一種有縫的連線。

物件導向和面向過程有什麼區別

面向過程程式設計採取的是時間換空間的策略,因為在早期計算機配置低 記憶體小,如何節省記憶體則成了首要任務,哪怕是執行的時間更長。隨著硬體技術的發展,硬體不再成為瓶頸,相反更好的模擬現實世界 系統的可維護性等問題凸顯出來,於是物件導向設計應運而生。當下 應用在 pc機上的一般應用系統,由於不太需要考慮...

物件導向與面向過程區別

物件導向是以事物為中心的程式設計思想,把構建問題事務分解成各個物件,建立物件的目的是為了描述某個事物在整個解決問題的步驟中的行為 面向過程是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用時依次呼叫就可以了 區別 物件導向程式設計,往往是從問題的一部分著手,一點一點地構建出整個程式...

函式式和物件導向程式設計有什麼區別?

左列 int,add,negate 是三個變式 variant eval,tostring,haszero 是三種操作,這裡要做的是填滿這個 分別實現三個變式的三種操作。函式式程式設計是寫三個函式代表三個方法。然後資料作為引數傳人。物件導向程式設計是資料是主體,然後每個主體上繫結三個方法 函式式程式...