首先祝大家節(jié)日快樂?。。?/p>
創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為日土企業(yè)提供專業(yè)的做網(wǎng)站、成都網(wǎng)站設計,日土網(wǎng)站改版等技術(shù)服務。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。額,不知道你們剁手沒,小夢是沒有!整整已經(jīng)錯過了第九個年頭!
小伙伴是不是有一種感覺,PHP入門的時候簡直愛不釋手,總是把 ”PHP是世界上最好的語言“ 掛在嘴邊上,覺得他簡單,快速完成項目!
然兒,終于有一天,你開發(fā)的項目過于龐大的時候,突然發(fā)現(xiàn):我寫的代碼好亂,擴展性好低,可維護性好差。。。。。。。
然后你就下定決心要重構(gòu)你的項目?想來想去,當然是面向?qū)ο缶幊塘耍缓蠹由细鞣N設計模式!你就開始干了!??!
下面就給大家講一下面向?qū)ο蟮脑O計原則,當然面向?qū)ο蟮暮锰幰约叭绾畏治鲈O計我就不告訴你們了,如果想知道的可以連續(xù)我哦!本人QQ:476319748 (備注面向?qū)ο笤O計)
面向?qū)ο缶幊讨饕幸幌聨追N基本原則
1. 單一職責:一個類,只需做好一件事情。不要使用一個類來完成很復雜的功能,而是拆分設計成更小更具體的類。
那有的小伙伴又要問了,為什么這樣做?對對,倒數(shù)第二個同學問的好,下面我就給大家說一下為什么:首先呢,就比如前后端分離,為什么前端主做頁面展示,渲染效果,后端做業(yè)務邏輯,道理是一樣的,專精一樣,類也是一樣,專職一件事,高效,而且呢維護性已經(jīng)擴展性很高,耦合度很低,修改一個不會影響其他人
2. 開放封閉原則:一個類,應該可以擴展,而不可修改的。一個類在實現(xiàn)之后,應該是對擴展開放,對修是改封閉的,不應該使用修改來增加功能,而是通過擴展來增加功能。
這個你還要問為什么?那我就不告訴你了?。?!
3. 依賴倒置:一個類,不應該強制依賴另一個類。每個類對另外一個類都是可以替換的。如:有A、B兩個類,A需要依賴B類,不應該在A類中直接調(diào)用B類,而是要使用依賴注入的方式,通過使用諸如,將A類依賴的B類的對象注入給A類,B類對于A類來說就是可以替換的。如果C類實現(xiàn)了和B類一樣的接口,那對于A類,B和C也是可以隨意替換的。
這個那個同學不用蠢蠢欲動想知道為什么了,我來告訴你吧:這個是降低耦合度!什么?你不知道耦合度是什么了,那么請你出去,這里不適合你!
4. 配置化: 盡可能的使用配置,而不是使用硬編碼。像類的關(guān)系的定義,也應該是可以配置的。
這點呢和你為什么想做面向?qū)ο缶幊淌且粋€道理!
5. 面向接口編程,而不是面向?qū)崿F(xiàn)編程:只需要關(guān)心接口,不需要關(guān)心實現(xiàn)。所有的代碼,它只需要關(guān)心某一個類實現(xiàn)了哪些接口,而不需要關(guān)心這個類的具體實現(xiàn)。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。