如何顧名思義的理解面向過程和麵向物件程式設計?C十十20年2021-09-06 06:17:44

《C++程式設計精要教程》有兩個例項,分別是面向過程和麵向物件的,都是解決人狼羊菜過河問題。可體會兩種思想的不同。

如何顧名思義的理解面向過程和麵向物件程式設計?z展新2021-09-06 07:46:54

面相過程(Procedure)講的是程式是由一連串的動作(Action)步驟作用於世界,每一個動作都透過改變世界的一種狀態,以此來實現最終的效果(Effect),即達到程式的最終目的。

面相物件(Object)則是將世界裡的各個實體(Entity)概念化為物件類,用其封裝各自的狀態與功能細節,類例項化後的物件之間則使用通訊(方法介面協議等呼叫)的方式來進行相互作用,改變世界裡各個物件的狀態,以此達到程式的效果。

如何顧名思義的理解面向過程和麵向物件程式設計?知乎使用者2021-09-06 09:34:01

其實吧一般都是混著來的。

使用著面向物件的語言,

編寫著面向過程的程式碼。

沒必要過於糾結這些。

水平越高,思考越多,

就可以更好的理解面向物件。

在專案中反覆實踐,螺旋上升就好。

如何顧名思義的理解面向過程和麵向物件程式設計?人世間2021-09-08 10:07:20

程式設計的作用是為了解決某個問題,寫一段程式碼,由計算機自動運算,高效率的解決了我們的問題,編寫程式碼的過程也叫面向過程程式設計。

如果我們需要反覆處理同樣的問題,每次處理時都寫一遍程式碼效率顯然不高,我們可以把這些程式碼定義成一個函式,重複呼叫函式來解決問題,不需要每次都寫一遍程式碼,這叫函數語言程式設計。

如果我們要處理的問題比較複雜,用一個函式難以實現,需要多個函式配合處理,我們就可以把這些函式封裝成一個類,處理同類型的問題時,只需要例項化一個類即可,我們定義類的時候是抽象的,具體使用類的時候就需要把類具象化,即例項化,比如貓這個概念是個抽象的類,而某隻花貓就是貓類的一個具體的例項。

物件的概念可以看做和類一樣,也可以看做類的一個例項,許多時候無需刻意區分,封裝類的過程也叫面向物件程式設計。

本質上講,類也是一種程式碼重用的方式。

如何顧名思義的理解面向過程和麵向物件程式設計?Python小王2021-09-09 15:02:53