物件導向VS面向過程(OOP VS OP)

2021-07-16 15:47:34 字數 1119 閱讀 5766

1. 綜述

我們將從哲學和語言學的角度講述這個問題。

物件導向或是面向過程,實際上都**於我們如何用抽象的語言來描述周邊的這個世界,目的是抽象出來的結果可以更加有利於或方便計算機的處理執行。

而當我們觀察周邊這個世界,可以發現整個世界可以分為兩部分(有點哲學的感覺):

1,物體

2,物體上的行為

如,物體:車;行為:行駛。

所以,在描述這個世界時,我們就有了兩方面的概括,那在對這兩方面概括的 時候,就有了輕重緩急或是喜樂偏好,

1,有的人以行為為主,他們首先抽象某個或某些行為的發生過程(比如行駛),而物體(人,車)是附帶其上的。

2,有的人以物體為主,他們將世界分為各色各樣的物體,樹,動物,氣體等等,進而在 這些物體上 描述其形形色色的行為

同樣的,從語言學的角度來看,清楚明了表達一件事,需要這樣表達,不論中文還是日語:

小明滾出去。(這是最基本的表述)

我們需要

1,主語:小明

2,作甚:滾出去

而這裡的行為(作甚)即是過程,物體(小明)即是物件。
2. 高階(針對i小明去上學)

a. 面向過程:定義上學這個過程,如果有小紅,二蛋,大傻等10個人呢,他們上學方式一樣還好,如果有坐車的,有走路的不一樣,就得定義10個上學的過程分別對應

b. 物件導向,定義乙個人(或學生),定義乙個上學方法,如果是10個人,最多在這個學生中定義10個方法

c. 如果在上學途中,小明想買冰棒,想泡妞,怎麼辦?面向過程就得新增買冰棒,泡妞這個過程,而物件導向,只需在學生類中新增 泡妞,買冰棒的方法

d. 物件導向是資料和行為的集體,面向過程只考慮了方法,沒考慮資料,這樣在方法需要資料的時候,面臨一些問題。

物件導向VS面向過程

面向過程一種以事件為中心的程式設計思想 以功能 行為 為導向,按模組化的設計,就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向一種以事物為中心的程式設計思想 以資料 屬性 為導向,將具有相同乙個或者多個屬性的物體抽象為 類 將他們包裝起來...

物件導向 VS 面向過程

面向過程 面向過程是一種以過程為中心的程式設計思想。通過分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。面向過程程式設計思想的核心 功能分解,自頂向下,逐層細化 程式 資料結構 演算法 面向過程程式語言存在的主要缺點是不符合人的思維習慣 而是要用計算...

面向過程程式設計VS物件導向程式設計

面向過程程式設計vs物件導向程式設計 a.面向過程程式設計的特點 a c語言的特點 優點 簡潔緊湊,靈活方便 結構化語言 語法限制不太嚴格,程式設計自由度大 允許直接訪問實體地址 可以直接對硬體操作 生成目標 質量高,程式 執行效率高 具有較 高的可移植性 缺點 靈活性 維護性 復用性 擴充套件性差...