什么是CMS和框架的區(qū)別,
這個其實很重要,應該全面而清晰的認識。
1 . 各自代表
框架代表:ThinkPHP(簡稱TP,以及它的最新版TP5),Laravel,YII,CI,......
CMS:Content Management System:內容管理系統(tǒng);代表有:PHPCMS,dedecms,phpMyWind,帝國CMS,Ecshop,ECMall,Discuz,PHPWind
2 . 知識難度
網站建設的框架需要的知識含金量比較高,對面向對象編程思想要深入理解,也要深刻懂MVC原理,單入口原理,標簽解析引擎原理,方可以靈活使用框架去開發(fā);
所以它是適應PHP基礎比較全面的人;
而CMS不需要那么高深的知識,你稍微懂PHP一些語法,基礎東西,就可以依葫蘆畫瓢的使用CMS開發(fā)出一個簡單的項目,而且速度還比較快(但是維護起來會頭痛)。
CMS對PHP入門級的人是最愛。
3 . 應用范疇
CMS的應用范圍有局限,要選對,否則后患無窮。如:某類CMS只適合開發(fā)一類項目,選錯了可能要重新開發(fā)。
比如PHPCMS適合開發(fā)文章類型的管理系統(tǒng),Ecshop適合開發(fā)
商城類型的項目,Discuz適合開發(fā)論壇類型的項目;
但是你如果要用Ecshop來開發(fā)論壇,就需要改的地方太多了,那就會走很多彎路....
而框架,因為屬于更底層的東西,所以它可以用來開發(fā)任何類型的項目。
另外,框架還可以開發(fā)CMS出來,但反過來,CMS就不能用來開發(fā)框架(會造成性能太低)。
4 . 開發(fā)特點
在框架中,你可能看不到一個具體的控制器子類文件,所以基于框架的開發(fā),首先要你自己來寫控制器文件,還要安排在什么位置寫,
這些都有框架自己的規(guī)矩,雖然也可以靈活的修改文件夾的位置,但你要麻煩的去尋找為什么。
而CMS等開源系統(tǒng),這些文件都是幫你寫好了的,位置也會幫你安排好,你在那些現成的文件上修修改改基本上就可以了。你會少很多事情。
5 . 靈活對比
用框架去開發(fā),你可以隨意修改你的項目模塊架構,可以隨意添加你想要的功能,如:你想在文章系統(tǒng)中添加個旅游模塊也可以;
實例:“PHP葵花寶典”項目(www.phpkhbd.com)就是用框架開發(fā)出來的,可以方便的添加任何想要的功能。
但CMS你要想做到這種穿插功能交集就比較麻煩了。
6 . 速度對比
用框架去開發(fā),開發(fā)的時候速度慢,但后續(xù)修改靈活,同時速度會很快,遇到問題可以馬上知道處在哪里了,可謂是“一步到位、一針見血”。
用CMS去開發(fā):開發(fā)的時候速度快,但后續(xù)修改特別是添加功能模塊的時候,就不夠靈活,會造成速度很慢,甚至不大可能實現。
打個比方:你用框架開發(fā)的項目,開發(fā)的時候可能需要2個月,但你后續(xù)升級項目,添加個什么功能可能只要1個星期。
而你用CMS去開發(fā),開發(fā)項目上線可能只要3個星期,但是你升級功能、添加新功能模塊、可能也要3個星期甚至更多,還有可能實現不了,
或者強加進去會造成該模塊性能甚至整個系統(tǒng)的性能大大降低。而且每次升級都是這樣。
所以,該如何選擇,你應該清楚了吧:如果想做一個長久更新的項目,那使用框架去開發(fā)是最好的選擇
PHP開發(fā)框架和CMS系統(tǒng)平臺;
開發(fā)框架
WACT http://wact.sourceforge.net/
老牌的PHP編程框架,實現了很多企業(yè)級的開發(fā)模式
Horde http://www.horde.org/horde/
提供了一些常用類庫,可以滿足參數處理、數據壓縮、瀏覽器檢測、鏈接跟蹤以及 MIME。需要PEAR類庫的支持,提供了API參考。
Seagull http://seagull.phpkitchen.com/ 推薦
一個面向對象的PHP開發(fā)框架,使用了Pear類庫,其主要特性有:運用組件方式、簡化數據訪問、錯誤處理機制和權限認證管理等。
studs http://mojavelinux.com/projects/studs/ 推薦
Jakarta Struts結構移植過來的PHP開發(fā)框架,使用面向對象的開發(fā)結構和API,模擬了一個HTTP Servlet容器
和使用了PHP服務頁面引擎技術
InterJinn http://www.interjinn.com/
有很多擴展模塊提供下載,可惜配置文件使用的是inc格式
Php.MVC http://www.phpmvc.net/
知名的PHP開發(fā)框架 ,基于Java的Struts
Phrame http://phrame.sourceforge.net/
雖然不大,但用的很多,也是基于Struts思想
Ambivalence http://amb.sourceforge.net/
基于Maverick思想實現的PHP開發(fā)框架
binarycloud http://www.binarycloud.com/
使用了Smarty模板引擎,文檔很完善
Prado http://www.xisc.com/
Zend獲獎作品,基于事件驅動的PHP開發(fā)框架
rwfphp http://www.rwfphp.org/
面向對象和事件驅動的php開發(fā)框架
Krysalis http://www.kompletecms.com/
把XML文檔轉換為XHTML文檔的PHP系統(tǒng)
FastFrame http://codejanitor.com/wp/apps/fastframe/
可以快速地實現表單提交
Blueshoes http://www.blueshoes.net/ 推薦
比較先進的一個framework,提供了很多GUI組件
下面這些我也沒有詳細看
Cgiapp http://weierophinney.net/matthew/download
Fuselogic http://www.haltebis.com/index/wakka/main/FuseLogic
Copix http://copix.aston.fr/
logicreate http://www.logicreate.com/
booby http://www.nauta.be/booby/
主要的CMS系統(tǒng)
Drupal http://www.drupal.org/
Mambo http://www.mamboportal.com/
Nucleus http://nucleuscms.org/
Midgard http://www.midgard-project.org/
Pmachine http://www.pmachine.com/
PostNuke http://www.post-nuke.net/
sitellite http://www.sitellite.org/
eZPublish http://ez.no/
limb http://limb-project.com/
php各種主流框架的優(yōu)缺點分析;
ThinkPHP(FCS)是一個輕量級的中型框架,是從Java的Struts結構移植過來的中文PHP開發(fā)框架。它使用面向對象的開發(fā)結構和MVC模式,并且模擬實現了Struts的標簽庫,各方面都比較人性化,熟悉J2EE的開發(fā)人員相對比較容易上手,適合php框架初學者。 ThinkPHP的宗旨是簡化開發(fā)、提高效率、易于擴展,其在對數據庫的支持方面已經包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有著豐富的文檔和示例,框架的兼容性較強,但是其功能有限,因此更適合用于中小項目的開發(fā)。
優(yōu)點
1.易于上手,有豐富的中文文檔;
2.框架的兼容性較強,PHP4和PHP5完全兼容、完全支持UTF8等。
3. 適合用于中小項目的開發(fā)
缺點
1.對Ajax的支持不是很好;
2.目錄結構混亂,需要花時間整理;
3.上手容易,但是深入學習較難。
Yii
Yii 是一個基于組件的高性能php框架,用于開發(fā)大型Web應用。Yii采用嚴格的OOP編寫,并有著完善的庫引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務,到主題化,I18N和L10N,Yii提供了 今日Web 2.0應用開發(fā)所需要的幾乎一切功能。事實上,Yii是最有效率的PHP框架之一。
優(yōu)點
純OOP
用于大規(guī)模Web應用
模型使用方便
開發(fā)速度快,運行速度也快。性能優(yōu)異且功能豐富
使用命令行工具。
缺點:
對Model層的指導和考慮較少
文檔實例較少
英文太多
要求PHP技術精通,OOP編程要熟練!
View并不是理想view,理想中的view可能只是html代碼,不會涉及PHP代碼。
CodeIgniter
優(yōu)點:
Code Igniter推崇“簡單就是美”這一原則。沒有花哨的設計模式、沒有華麗的對象結構,一切都是那么簡單。幾行代碼就能開始運行,再加幾 行代碼就可以進行輸出??芍^是“大道至簡”的典范。 配置簡單,全部的配置使用PHP腳本來配置,執(zhí)行效率高;具有基本的路由功能,能夠進行一定程度的路 由;具有初步的Layout功能,能夠制作一定程度的界面外觀;數據庫層封裝的不錯,具有基本的MVC功能. 快速簡潔,代碼不多,執(zhí)行性能高,框架簡 單,容易上手,學習成本低,文檔詳細;自帶了很多簡單好用的library,框架適合小型應用.
缺點:
本身的實現不太理想。內部結構過于混亂,雖然簡單易用,但缺乏擴展能力。 把Model層簡單的理解為數據庫操作. 框架略顯簡單,只能夠滿足小型應用,略微不太能夠滿足中型應用需要.
評價:
總體來說,拿CodeIgniter來完成簡單快速的應用還是值得,同時能夠構造一定程度的layout,便于模板的復用,數據操作層來說封裝的不 錯,并且CodeIgniter沒有使用很多太復雜的設計模式,執(zhí)行性能和代碼可讀性上都不錯。至于附加的library 也還不錯,簡潔高效。
Lavarel 框架
優(yōu)點
Laravel 的設計思想是很先進的,非常適合應用各種開發(fā)模式TDD, DDD 和BDD,作為一個框
架,它準備好了一切,composer 是個php 的未來,沒有composer,PHP 肯定要走向沒落。
laravel 大的特點和優(yōu)秀之處就是集合了php 比較新的特性,以及各種各樣的設計模式,
Ioc 容器,依賴注入等。
缺點
基于組件式的框架,所以比較臃腫
文章名稱:企業(yè)網站建設的框架和CMS的區(qū)別
URL鏈接:http://www.rwnh.cn/news30/144680.html
網站建設、網絡推廣公司-創(chuàng)新互聯,是專注品牌與效果的網站制作,網絡營銷seo公司;服務項目有網站建設等
廣告
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯