三層架構(gòu)就是一種軟件設(shè)計(jì)模式和完善的軟件體系結(jié)構(gòu),它將整個(gè)業(yè)務(wù)應(yīng)用劃分為三層分別是表示層,業(yè)務(wù)邏輯層以及數(shù)據(jù)訪問層
成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),雨花網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:雨花等地區(qū)。雨花做網(wǎng)站價(jià)格咨詢:18980820575
三層架構(gòu)就是一種客戶端-服務(wù)器體系結(jié)構(gòu),它將整個(gè)業(yè)務(wù)邏輯劃分為三層,接下來在文章中將為大家具體介紹三層架構(gòu)的相關(guān)知識(shí),具有一定的參考作用。希望對(duì)大家有所幫助。
三層架構(gòu)的含義:
三層體系結(jié)構(gòu)是一種軟件設(shè)計(jì)模式和完善的軟件體系結(jié)構(gòu),其中功能過程邏輯,數(shù)據(jù)訪問,計(jì)算機(jī)數(shù)據(jù)存儲(chǔ)和用戶界面在不同平臺(tái)上可作為獨(dú)立模塊進(jìn)行開發(fā)和維護(hù)。
三層體系結(jié)構(gòu)將整個(gè)業(yè)務(wù)應(yīng)用劃分為表示層,業(yè)務(wù)邏輯層以及數(shù)據(jù)訪問層。以下是他們的具體作用:
表示層:作用是占據(jù)頂層并顯示與網(wǎng)站上可用服務(wù)相關(guān)的信息,這一層通過將結(jié)果發(fā)送到瀏覽器和網(wǎng)絡(luò)中的其他層來與其他層通信
業(yè)務(wù)邏輯層:也稱為中間層,該層從表示層中提取,它通過執(zhí)行詳細(xì)處理來控制應(yīng)用程序功能
數(shù)據(jù)訪問層:作用是安裝存儲(chǔ)和檢索信息的數(shù)據(jù)庫服務(wù)器,此層中的數(shù)據(jù)與應(yīng)用程序服務(wù)器或業(yè)務(wù)邏輯無關(guān)
在三層體系結(jié)構(gòu)中允許三層中的任何一層獨(dú)立升級(jí)或替換。用戶界面在臺(tái)式PC上實(shí)現(xiàn),并使用標(biāo)準(zhǔn)圖形用戶界面,在應(yīng)用程序服務(wù)器上運(yùn)行不同的模塊。數(shù)據(jù)庫服務(wù)器上的關(guān)系數(shù)據(jù)庫管理系統(tǒng)包含計(jì)算機(jī)數(shù)據(jù)存儲(chǔ)邏輯。且中間層通常是多層的
三層架構(gòu)的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
(1)開發(fā)人員可以只關(guān)注整個(gè)結(jié)構(gòu)中的某一層
(2)結(jié)構(gòu)清晰,耦合度低,而且有利于標(biāo)準(zhǔn)化
(3)可以很容易的用新的實(shí)現(xiàn)來替換原有層次的實(shí)現(xiàn);
(4)結(jié)構(gòu)更加明確,在后期維護(hù)時(shí)極大的降低了維護(hù)成本和維護(hù)時(shí)間
缺點(diǎn)
(1)降低了系統(tǒng)的性能
(2)有可能會(huì)導(dǎo)致級(jí)聯(lián)的修改
(3)增加了開發(fā)成本
什么是三層架構(gòu)
看到你前面幾段寫的就知道你是玩Java的。Java主要用Spring來實(shí)現(xiàn)主要的解耦功能。
PHP這里的框架很少,而且PHP也沒有那么靈活的反射機(jī)制等吧。所以如果要用PHP來實(shí)現(xiàn)高內(nèi)聚低耦合,有點(diǎn)難度,除非你自己搞框架。
我看discuz論壇都沒有用那么復(fù)雜的技術(shù),而且我個(gè)人覺得PHP用MVC來分,分個(gè)controller,實(shí)在沒有必要。
如果樓主用了很復(fù)雜的業(yè)務(wù)邏輯,為何不用Java來做業(yè)務(wù)中心,PHP做前端,使用Java的WebService來暴露數(shù)據(jù)呢?
個(gè)人拙見,一起探討。
三層架構(gòu)模式跟用什么語言沒有關(guān)系。PHP的三層架構(gòu)完全可以這么做:表現(xiàn)層(模板)調(diào)用- 業(yè)務(wù)層(類)調(diào)用-數(shù)據(jù)層(操作數(shù)據(jù)庫的類);用MVC的框架當(dāng)然也可以,因?yàn)镸VC本身就是基于表示層-業(yè)務(wù)邏輯層-數(shù)據(jù)庫訪問層的結(jié)構(gòu)的,MVC多了一個(gè)C控制器
這個(gè)問題。。。。叫人真的很難回答你。。。
三層架構(gòu)要看你的理解了,每個(gè)人的理解的點(diǎn)都不一樣。
通俗的分為:mvc,邏輯,表示,控制
也有分為:dao,biz,view三層,分別是數(shù)據(jù)層 業(yè)務(wù)層 表現(xiàn)層
看你自己理解吧,國內(nèi)有不少成熟的框架可以直接使用,比如thinkphp,國外也有不少,如ci等,樓主要想理解三層架構(gòu),還需要先去了解一下面向?qū)ο?,這樣才能一個(gè)直觀的了解。