課程
/后端開發(fā)
/PHP
/PHP-面向?qū)ο?/a>
第一個男人女人的例子能反映出接口有什么用? 在類里面又重新寫了一遍接口里面的方法 反映出什么問題了? 反映的是在浪費接口嗎?
2018-07-23
源自:PHP-面向?qū)ο?nbsp; 2-9
正在回答
我理解的面向接口編程,是只要我看接口就知道實現(xiàn)的內(nèi)容。因為接口是類的模板,類是對象的模板;類要實現(xiàn)接口的所有方法,對象要實例化類,而項目是由一個個對象組成的。層級由高到低:接口->類->對象。
曾經(jīng),我也不能理解接口的作用,更可怕的是還有api接口這樣的概念混淆進來。
經(jīng)過幾年實踐,我理解到的接口就是:傳統(tǒng)軟件設(shè)計中,上層代碼依賴于下層代碼,當(dāng)下層出現(xiàn)變動時, 上層代碼也要相應(yīng)變化,維護成本較高。
新的核心思想是上層定義接口,下層實現(xiàn)這個接口, 從而使得下層依賴于上層,降低耦合度,提高整個系統(tǒng)的彈性。
任何你想不通的,感覺是在做多余的事兒的思想,其實都可以用一句話概擴:這么做肯定是為了后面好改!
Kwok2c
_jinyi 回復(fù) Kwok2c
_jinyi 回復(fù) _jinyi
接口類應(yīng)該是定了一個類的規(guī)范,就是說每個繼承這個接口的類都需要實現(xiàn)這個類中的方法,那么方法名就固定了,那么當(dāng)很多人完成一個項目的時候,需要調(diào)用別人寫好的類的時候,就不需要去問別人某個功能的方法名是什么了?;蛘哒f,當(dāng)你們都需要繼承這個類,比如男人和女人,他們都有eat和sleep的功能,那么有了接口類,就規(guī)范了你們寫出來的這兩個對象中實現(xiàn)功能的方法名是一樣的了,而不需要去相互協(xié)商。
舉報
從面相過程到面向?qū)ο?,帶你深入理解面向?qū)ο缶幊趟枷耄w驗編程的奧妙!
2 回答最后的實例化有點不解,這個跟正常的實例化一樣啊。還是我沒寫好?
1 回答實例化的問題
2 回答發(fā)現(xiàn)一個bug
1 回答在命名空間下的類,導(dǎo)入trait 如何實現(xiàn)單例模式實例化
1 回答一直有紅色的線,也沒提示報錯
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2019-06-27
我理解的面向接口編程,是只要我看接口就知道實現(xiàn)的內(nèi)容。因為接口是類的模板,類是對象的模板;類要實現(xiàn)接口的所有方法,對象要實例化類,而項目是由一個個對象組成的。層級由高到低:接口->類->對象。
2018-11-08
曾經(jīng),我也不能理解接口的作用,更可怕的是還有api接口這樣的概念混淆進來。
經(jīng)過幾年實踐,我理解到的接口就是:傳統(tǒng)軟件設(shè)計中,上層代碼依賴于下層代碼,當(dāng)下層出現(xiàn)變動時, 上層代碼也要相應(yīng)變化,維護成本較高。
新的核心思想是上層定義接口,下層實現(xiàn)這個接口, 從而使得下層依賴于上層,降低耦合度,提高整個系統(tǒng)的彈性。
任何你想不通的,感覺是在做多余的事兒的思想,其實都可以用一句話概擴:這么做肯定是為了后面好改!
2018-08-01
接口類應(yīng)該是定了一個類的規(guī)范,就是說每個繼承這個接口的類都需要實現(xiàn)這個類中的方法,那么方法名就固定了,那么當(dāng)很多人完成一個項目的時候,需要調(diào)用別人寫好的類的時候,就不需要去問別人某個功能的方法名是什么了?;蛘哒f,當(dāng)你們都需要繼承這個類,比如男人和女人,他們都有eat和sleep的功能,那么有了接口類,就規(guī)范了你們寫出來的這兩個對象中實現(xiàn)功能的方法名是一樣的了,而不需要去相互協(xié)商。