概覽 以下你看到是這十款開(kāi)發(fā)框 " /> 99久久综合精品免费,国产 亚洲 另类 欧美 在线,99精品视频在线观看免费播放

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

淺析十款PHP開(kāi)發(fā)框架的對(duì)比

php開(kāi)發(fā)框架近來(lái)在php社區(qū)中成為討論的熱點(diǎn),幾乎每天都在推出新的框架。面對(duì)市面上超過(guò)四十種的開(kāi)發(fā)框架,你很難判斷究竟哪一款最適合你,尤其是在這些框架所提供的功能不盡相同的時(shí)候。 

概覽
以下你看到是這十款開(kāi)發(fā)框架的一覽表,列舉了他們各自所提供的功能。
#1:
表示框架是否內(nèi)建模型-視圖-控制器。
#2: 表示框架是否無(wú)需修改即可支持多數(shù)據(jù)庫(kù)。
#3: 表示框架是否支持對(duì)象記錄映射器,通常這是ActiveRecord的封裝包。
#4: 表示框架是否包含其它數(shù)據(jù)庫(kù)對(duì)象,比如TableGateWay。
#5: 表示框架是否內(nèi)建模板引擎。
#6: 表示框架是否緩存對(duì)象或者其他緩存機(jī)制。
#7: 表示框架是否內(nèi)建校驗(yàn)或過(guò)濾組件。
#8: 表示框架是否內(nèi)建Ajax支持。
#9: 表示框架是否內(nèi)建用戶驗(yàn)證模塊。
#10: 表示框架是否包含其他模塊,例如RSS feed解析器、PDF模塊或其他實(shí)用模塊。 

Zend Framework
Zend Framework 盡管從對(duì)比表上來(lái)看它沒(méi)占到什么便宜,可Zend Framework確確實(shí)實(shí)涵括了一些處理PDF文檔、RSS源、在線服務(wù)(Amazon, Flickr, Yahoo)的模塊,甚至更多。Zend Framework同時(shí)也包含了數(shù)個(gè)不同的數(shù)據(jù)庫(kù)對(duì)象,極大地便捷了對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢的實(shí)現(xiàn),甚至免去你手寫(xiě)SQL查詢腳本的麻煩。

當(dāng)前,Zend Framework并未完全支持ORM,但是開(kāi)發(fā)人員仍然陷入在是否要添加ORM層的爭(zhēng)論中。也許在將來(lái)會(huì)實(shí)現(xiàn)這些功能,你就可以編寫(xiě)自己的ORM封裝包,投稿到社區(qū),并有機(jī)會(huì)將之整合入框架的未來(lái)版本。

Zend Framework看上去前途一片光明,而且它同時(shí)又修正了一些常見(jiàn)的php問(wèn)題。也許穩(wěn)定版本就可以在對(duì)比表里面表現(xiàn)得更出色了! 

Cakephp
Cakephp是一款高級(jí)的MVC框架,自帶了不多的幾個(gè)模塊。它可以處理大多數(shù)的數(shù)據(jù)庫(kù)事務(wù),支持Ajax個(gè)數(shù)據(jù)驗(yàn)證。同時(shí),它的用戶驗(yàn)證模塊(Accsee List)也非常獨(dú)特,可以針對(duì)不同的用戶在訪問(wèn)網(wǎng)站不同部分時(shí)分配對(duì)應(yīng)的訪問(wèn)權(quán)限。

盡管Cakephp的網(wǎng)站看上去令人犯暈,但是框架本身已經(jīng)比較完整可用了。截至成文尚未見(jiàn)穩(wěn)定版本,實(shí)在令人感到有點(diǎn)意外,畢竟已經(jīng)開(kāi)發(fā)了好幾個(gè)月了,不過(guò)我猜想也許用beta版本來(lái)開(kāi)發(fā)產(chǎn)品也未嘗不可吧

Symfony Project
從對(duì)比表中不難看出,Symfony是一款極具擴(kuò)展性的開(kāi)發(fā)框架,它甚至完整植入了一個(gè)叫做Propel的ORM,Propel也是開(kāi)源項(xiàng)目,并且迄今為止可能是php上最好的ORM解決方案。Symfony同時(shí)還整合了用于數(shù)據(jù)庫(kù)抽象層的Creole和用于MVC模型層的Mojavi。由于它僅僅是重用了這些項(xiàng)目的源代碼,而非重寫(xiě),由此使得框架具備了極為強(qiáng)大的擴(kuò)展性,這一點(diǎn)在表中昭然若是。

Symfony有兩個(gè)缺憾,以使它不支持php4,這是由于需要php5中很多新特性的支持的結(jié)果,二是相對(duì)來(lái)說(shuō)它有點(diǎn)復(fù)雜了。大多數(shù)任務(wù),比方像分頁(yè),在Symfony中的時(shí)限比其他框架要復(fù)雜得多,這決不是一款簡(jiǎn)潔著稱(chēng)的框架。 

Seagull Framework 
Seagull framework看上去相當(dāng)不錯(cuò),自帶了很多特性。支持php4也對(duì)它的推廣相當(dāng)有利,我本人就仍在使用php4,況且大多數(shù)空間寄存商尚未全面支持php5。

不幸的是,Seagull沒(méi)有提供對(duì)Ajax的支持,實(shí)在有點(diǎn)說(shuō)不過(guò)去,不過(guò)通過(guò)Google可以毫不費(fèi)力地搜索到一篇自己添加Ajax支持的教程,而且這點(diǎn)在將來(lái)應(yīng)該會(huì)添加到框架中。 

WACT - Web Application Toolkit
WACT很有潛力,框架的基件它一應(yīng)俱全,像MVC、數(shù)據(jù)庫(kù)對(duì)象和模板引擎,不過(guò)僅此而已。它沒(méi)有任何外掛模塊,同時(shí)也缺少一些內(nèi)建的功能,例如Ajax、緩存、驗(yàn)證模塊,等等。

盡管如此,WACT還是擁有最好的模板引擎,甚至可以幫助你創(chuàng)建自己的模板標(biāo)簽來(lái)擴(kuò)展功能。 

Prado
Prado非常獨(dú)特,它提供了一些很酷的特性。它沒(méi)有內(nèi)建對(duì)MVC的支持(就我看來(lái)),但是它確實(shí)擁有處理大多數(shù)php任務(wù)的各種各樣的組件,更棒的是,它實(shí)現(xiàn)了事件驅(qū)動(dòng)腳本。例如,在一個(gè)HTML按鈕上設(shè)置onClick事件鏈接到一個(gè)php函數(shù)。這點(diǎn)近似ASP.NET,而Prado確實(shí)包含了更多的ASP.NET組件,像GridView和Repeater Control。

僅憑對(duì)比表上的數(shù)據(jù),Prado看似要弱于其它框架,但事實(shí)并非如此。因?yàn)镻rado如此獨(dú)特,盡管它得分不高,但是在實(shí)際應(yīng)用中它是非常強(qiáng)大的。 

php on Trax
這個(gè)框架看上其簡(jiǎn)直就是Ruby and Rails在php上的一個(gè)接口,它以前也確實(shí)叫做php on Rails。不幸的是,它的文檔實(shí)在是太稀缺了,所以也很難判斷這個(gè)框架究竟提供了些什么,但是文檔中的確提到了ActiveRecord,所以它可能提供ActiveRecord,就像RoR。還有就是它內(nèi)建了Ajax支持,從它網(wǎng)站上的兩個(gè)演示視頻中不難看出。

php on Trax基本上能符合使用者對(duì)框架的要求,但是它還是缺胳膊少腿,比方像驗(yàn)證模塊和緩存模塊。它也沒(méi)有任何外掛模塊,是以目前來(lái)說(shuō),它很初級(jí)。 

ZooP Framework
ZooP Framework可以說(shuō)包羅萬(wàn)象,對(duì)比表上一目了然,差不多該支持的都支持了,除了ORM層。更意外驚喜的是它支持php4,這對(duì)于它提供的這么全面的功能來(lái)說(shuō)實(shí)在是太不簡(jiǎn)單了,太棒了!

ZooP還提供了內(nèi)建的GUI控制,使得創(chuàng)建表單的工作變得異常快捷。它支持絕大多數(shù)的常用表單元素,在常規(guī)HTML里使用GUI控制的好處就是你可以將驗(yàn)證的邏輯操作和GUI控制緊密地結(jié)合在一起。 

eZ Components
與其說(shuō)ez Components是個(gè)框架,不如說(shuō)是一個(gè)組件集,可能正是因?yàn)槿绱怂](méi)有內(nèi)建對(duì)MVC的支持。

它包括了大多數(shù)常用組件,如數(shù)據(jù)庫(kù)組件和緩存組件,可還是缺少點(diǎn)東西。比方說(shuō),沒(méi)有ActiveRecord組件和驗(yàn)證組件。另一方面,它提供了一些外掛組件,比如e-mail組件,但是不多,其它框架(像Zend Framework)提供的更多。 

CodeIgniter 
CodeIgniter相對(duì)來(lái)講是個(gè)很新的框架,它的作者是ExpressionEngine的開(kāi)發(fā)團(tuán)隊(duì)(譯者注: php blog程序pMachine的升級(jí)換代產(chǎn)品,很可惜不是免費(fèi)的),看上去很有潛質(zhì)。不幸的是,它尚不能處理多數(shù)據(jù)庫(kù),盡管這項(xiàng)功能仍在開(kāi)發(fā)中。

它源于Ruby on Rails,所以它提供了很多的相同功能,比如scaffolding(代碼自動(dòng)生成)。它的文檔編得相當(dāng)棒,甚至還有視頻教程幫助你快速上手。 

獲勝者是...
在這里我不得不非常遺憾地宣布,無(wú)人勝出。每個(gè)框架所提供的功能特性不盡相同,因此無(wú)人完勝。一如往常,最后這將取決于個(gè)人偏好和選擇。我極力推薦你在作出決定前先認(rèn)真仔細(xì)地研讀各個(gè)框架的文檔,剩下就靠你自己判斷了。

就個(gè)人而言,我的確非常喜歡Zend Framework,但當(dāng)我仔細(xì)研究了每個(gè)框架之后,我發(fā)現(xiàn)了很多有趣的功能,比方說(shuō)Prado的事件,抑或Symfony的ORM封裝包。

當(dāng)你實(shí)在是無(wú)法決定選擇哪個(gè)框架的時(shí)候,你仍可以選擇像大多數(shù)人那樣: 自己動(dòng)手。雖然耗時(shí)費(fèi)力,但是樂(lè)趣無(wú)窮。

如開(kāi)始所言,一部分框架已經(jīng)有了長(zhǎng)足的更新,而我最近比較傾向于symfony,它充實(shí)的文檔令到上手非常方便,但是它的龐雜也令到開(kāi)發(fā)小項(xiàng)目,甚至像我這樣的個(gè)人迷你項(xiàng)目的過(guò)程有點(diǎn)得不償失,也許CodeIgniter的簡(jiǎn)潔在這方面已經(jīng)足夠。

php技術(shù)淺析十款PHP開(kāi)發(fā)框架的對(duì)比,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美 另类 美腿 亚洲 无码 | 善良的小峓子2在钱免费中文字 | 色婷婷激婷婷深爱五月小蛇 | 真实处破女全过程完免费观看 | 日韩免费一级毛片 | 嗯啊哈啊好棒用力插啊 | 久久99久久成人免费播放 | 日本无码专区亚洲麻豆 | 暖暖视频免费观看高清完整版 | brazzers情欲狂欢| 果冻传媒妈妈要儿子 | 老妇xxxxbbbb | 国产在线播放91 | 成人网络电视破解版 | 蜜臀AV精品一区二区三区 | 校花娇喘呻吟校长陈若雪视频 | 久久综合中文字幕佐佐木希 | 亚洲精品久久一区二区三区四区 | 亚洲人成电影网站色2017 | 365电影成人亚洲网在线观看 | 欧美精品一区二区蜜臀亚洲 | 伦理片 a在线线版韩国 | 老湿机一区午夜精品免费福利 | 国语自产精品一区在线视频观看 | 红尘影院在线观看 | 国产精品成人无码久免费 | 伊人最新网址 | 欧美性猛交xxxxxxxx软件 | 中文字幕视频免费在线观看 | 亚洲日本香蕉视频观看视频 | 玖玖爱精品视频 | 亚洲精品无码久久久久A片空 | 最近免费中文字幕完整版HD | 99精品在线 | 欧美video巨大粗暴18 | 暖暖免费观看日本在线视频 | 97在线超碰免费视频 | 亚洲色噜噜狠狠网站 | 亚洲精品影院久久久久久 | 骚浪插深些好烫喷了 | 亚洲色噜噜狠狠站欲八 |