兩大編程思想
1.面向過程
面向過程編程POP(Process-oriented programming)
面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實(shí)現(xiàn), 使用的時(shí)候再一個(gè)一 個(gè)的依次調(diào)用就可以了。
舉個(gè)栗子:
問題:把大象裝進(jìn)冰箱
解決步驟:1埂奈,打開冰箱門 2戳吝,把大象塞進(jìn)去 3,關(guān)上冰箱門
面向過程,就是按照我們分析好了的步驟,按照步驟解決問題痒留。
2.面向?qū)ο?/strong>
面向?qū)ο缶幊蘋OP (Object Oriented Programming)
面向?qū)ο笫前咽聞?wù)分解成為一個(gè)個(gè)對(duì)象,然后由對(duì)象之間分工與合作谴麦。
舉個(gè)栗子:
問題:把大象裝進(jìn)冰箱
解決方法:找對(duì)象
1.大象對(duì)象 ---------->進(jìn)去
2.冰箱對(duì)象------------>打開/關(guān)閉
3.使用大象對(duì)象和冰箱對(duì)象的功能
面向?qū)ο笫且詫?duì)象功能來劃分問題,而不是步驟
在面向?qū)ο蟪绦蜷_發(fā)思想中,每一個(gè)對(duì)象都是功能中心,具有明確分工。
面向?qū)ο缶幊痰膬?yōu)點(diǎn):
面向?qū)ο缶幊叹哂徐`活伸头、代碼可復(fù)用匾效、容易維護(hù)和開發(fā)的優(yōu)點(diǎn),更適合多人合作的大型軟件項(xiàng)目。
面向?qū)ο蟮奶匦?
●封裝性(封裝代碼)
●繼承性(子類繼承父類)
●多態(tài)性(同一個(gè)對(duì)象恤磷,在不同的時(shí)刻有不同的狀態(tài))
面向過程和面向?qū)ο蟮膶?duì)比
面向過程:
優(yōu)點(diǎn):性能比面向?qū)ο蟾?適合跟硬件聯(lián)系很緊密的東西,例如單片機(jī)就采用的面向過程編程面哼。
缺點(diǎn):沒有面向?qū)ο笠拙S護(hù)、易復(fù)用扫步、易擴(kuò)展
面向?qū)ο?
優(yōu)點(diǎn):易維護(hù)魔策、易復(fù)用、易擴(kuò)展,由于面向?qū)ο笥蟹庋b河胎、繼承闯袒、多態(tài)性的特性,可以設(shè)計(jì)出低耦合的系統(tǒng),使系統(tǒng)更加靈活游岳、更加易于維護(hù)
缺點(diǎn):性能比面向過程低
面向?qū)ο蟮乃季S特點(diǎn):
1.抽取(抽象)對(duì)象共用的屬性和行為組織(封裝)成-個(gè)類(模板
2.對(duì)類進(jìn)行實(shí)例化搁吓,獲取類的對(duì)象
面向?qū)ο缶幊涛覀兛紤]的是有哪些對(duì)象,按照面向?qū)ο蟮乃季S特點(diǎn),不斷的創(chuàng)建對(duì)象,使用對(duì)象,指揮對(duì)象做事情.