python面向对象和面向过程的区别_Python11-01_面向对象----面向对象和面向过程的区别...
面向對象編程
面向對象(OPP)編程思想主要針對大型軟件設計而來的。面向對象編程使程序的擴展性更加強,可讀性更好。使得編程可以像搭積木一樣簡單。
面向對象編程將數據和操作數據的方法封裝到對象中,組織代碼和數據方式更加接近人的思維,從而大大提高了編程效率
Python完全采用了面向對象的思想,是真正的面向對象編程語言,完全支持面向對象的基本功能,列如:繼承,多態,封裝等
Python中一切皆對象,我們在前面學習的數據類型,函數等,都是對象
Python支持面向過程,面向對象,函數編程等多種編程范式
面向對象和面向過程的區別
面向過程(Procedure Oriented)思維
面向過程更加關注的是“程序操作流程”,是一種“執行者”思維,適合編寫小規模程序
面向過程思考問題時,我們首先思考“怎樣按步驟實現”并將步驟對應成方法,一步一步,最終完成。這個適合簡單任務,不需要過多操作的情況下,我們很容易就列出實現步驟。比如:如何開車?
1. 發動車 2. 掛擋 3. 踩油門 4. 走
面向過程適合簡單,不需要協作的任務。 、但是當我們思考比較復雜的問題,比如“如何造車?”就會發現列出1234步驟,是不可能一步到位的。
面向對象(Object Oriented)思維
面向對象更關注的是“軟件與對象之間的關系”,是一種“設計者思維”,適合編寫大規模程序
面向對象思維更契合人的思維方式,我們首先思考的是如何制造這個事物,比如思考造車,我們就會先思考“車怎么設計?”而不是怎樣按步驟造車的問題,這就是思維方式的轉變
面向對象造車,發現車由以下幾個步驟組成
輪胎
發動機
車殼
座椅
擋風玻璃
為了便于協作,我們找各個廠制作各個車部件的步驟,最終進行組裝,大大提高了效率,但是具體到某一部件,還是離不開面向過程
因此,面向對象可以幫助我們從宏觀上把握,從整體上分析整個系統。但是具體到實現步驟的微觀操作,仍需要面向過程去處理
面向對象和面向過程是相輔相成的,面向對象離不開面向過程
面向對象的思考方式
遇到復雜但是問題,先找名詞(面向過程先找動詞),然后確立這些名詞哪些可以作為類,再根據問題需求確定類的屬性和方法,確定類之間的關系
面向對象和面向過程總結
都是解決問題的思維方式,都是代碼的組織方式
解決簡單問題可以用面向過程
解決復雜問題:宏觀上用面向對象把握,微觀上仍然是面向過程
總結
以上是生活随笔為你收集整理的python面向对象和面向过程的区别_Python11-01_面向对象----面向对象和面向过程的区别...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: graphpad做饼图_如此简单的饼图,
- 下一篇: 单选选择才可以提交_第二篇:DJANGO