OOP(ObjectOrientedPrograming)編程是利用“類”和“對象”來創(chuàng)建各種模型來實現(xiàn)對真實世界的描述。
怎么說呢?
核心是“對象”二字,要理解對象為何物,必須把自己當成上帝,在上帝眼里,世間存在的萬物皆為對象,不存在的也可以創(chuàng)造出來。程序員基于面向?qū)ο笤O(shè)計程序就好比如來設(shè)計西游記,如來要解決的問題是把經(jīng)書傳給東土大唐,如來并沒有考慮問題的解決流程,而是設(shè)計出了負責取經(jīng)的師傅四人:唐僧,沙和尚,豬八戒,孫悟空,負責騷擾的一群妖魔鬼怪,以及負責保駕護航的一眾神仙,這些全都是對象,然后取經(jīng)開始,就是師徒四人與妖魔鬼怪神仙交互著直到完成取經(jīng)任務(wù)。所以說基于面向?qū)ο笤O(shè)計程序就好比在創(chuàng)造一個世界,世界是由一個個對象組成,而你就是這個世界的上帝。
我們從西游記中的任何一個人物對象都不難總結(jié)出:對象是特征與技能的結(jié)合體。比如孫悟空的特征是:毛臉雷公嘴,技能是:七十二變、火眼金睛等。
與面向過程機械式的思維方式形成鮮明對比,面向?qū)ο蟾幼⒅貙ΜF(xiàn)實世界而非流程的模擬,是一種“上帝式”的思維方式。
面向過程==個人視角
我要去做大保健,我只需考慮,我有沒有錢,去哪家店,怎么去,做什么價位的就可以,
你的每一步都要通過程序定義出來,寫死了,在這個程序里,你只被設(shè)定了去做大保健的功能,
你說中途我想去個ktv,那可能會導(dǎo)致整個程序的邏輯都得更改。用面向過程的方式寫代碼,
那你care的就是整個事情的執(zhí)行過程
面向?qū)ο?=上帝視角
如果你是上帝,你現(xiàn)在要創(chuàng)世紀,把這么多人、動物、山河造出來,上帝光靠自己干,
一個一個的造人,多累呀,讓你干這個活,你肯定是先造模子,一個男人模子,
一個女人模子,剩下的就一個個復(fù)制就行啦。這個模子的作用是什么?
模子定義了人這個物種所具備的所有特征\(或者說,我們把具備這些特征的個體歸為人類\)。
這個世界上所有的東西都是你定義的,你需要用最高效的方式去造世界,
最高效的方式就是,先把世界按物種、樣貌、有無生命等各種維度分類,
然后給每類東西建模型,再讓其在不脫離你基本橫型定義的框架下,
自我繁衍(世界要多姿多彩,所以即使是同一物種,也要有些不一樣)
以上內(nèi)容為大家介紹了Python之什么是面向?qū)ο?,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。