自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PHP框架發(fā)展存四誤區(qū) 死穴不除難成大器

開發(fā) 后端 前端
隨著PHP技術(shù)的普及,PHP各類應(yīng)用框架也如雨后春筍般飛快的發(fā)展,與之相矛盾的是,一些所謂的高手經(jīng)常把自己寫的一個"框架"作為一個產(chǎn)品,而本文將深入淺出PHP框架的發(fā)展誤區(qū),希望對您有所幫助。

隨著PHP技術(shù)的普及,PHP各類應(yīng)用框架也如雨后春筍般飛快的發(fā)展,與之相矛盾的是,一些所謂的高手經(jīng)常把自己寫的一個"框架"作為一個產(chǎn)品,實際生產(chǎn)行為中往往使用某些CMS或論壇程序作為核心開發(fā)真正的應(yīng)用。

其實框架這概念,最早來源于C/S軟件的應(yīng)用,比較經(jīng)典的有:微軟的MFC、Java的Spring、Struts、Hibernate(也就是所謂的SSH)之類的框架,當(dāng)然MFC純粹是針對C/S類應(yīng)用的,而后者針對或適用于Web應(yīng)用,然而不管是那種,應(yīng)用在Web上,都是有明顯缺點的,但PHP一些框架往往都繼承了這些思想,所以到目前為止,PHP類框架還都是止于模仿,當(dāng)然也確實充分利用了PHP的一些特性,但真正在應(yīng)用上,仍然顯得做大項目不足,小項目多余的感覺,這也是PHP框架一般只作為"學(xué)者"使用,應(yīng)用卻并不是那么流行,很多所謂的高手也寧愿自己去寫一個框架的原因。

那么,PHP框架發(fā)展到底存在哪些誤區(qū)呢?

主要有下面幾個方面:

1、把控制器寫得過于強大,從而偏離了框架的本質(zhì)

有些框架的控制器簡直可以完全代替rewrite了,但是這樣有意義么?完全就是一個無聊的鬧劇而已,作為框架,最需要做的事情一是要簡便易用,二是提供多一些針對Web真正實用、穩(wěn)定、必要的庫,(而實際當(dāng)中,系統(tǒng)類庫和業(yè)務(wù)類庫往往是不同的)做過多年程序員的人都知道,老手和新手的區(qū)別在于,老手通常是有很多即時可用的代碼,而新手往往要自己去找,如果框架不能讓新手、老手都一樣簡便實現(xiàn)某功能,那么要框架來干嗎?所以說,過分去弄控制器這一塊,就偏離了原則,并且可能對開發(fā)造成一定的麻煩。

2、思想上仍然按照J(rèn)ava的那種老的一套思路,更適合于開發(fā)B/S應(yīng)用的企業(yè)管理軟件,而與Web的思路有點偏離

就拿權(quán)限與模塊化思路來說,一般的框架都把app固定死了,而實際應(yīng)用中,Web的APP通常是有三重的,具體為:administrator后臺管理應(yīng)用池,member 前臺會員控制中心應(yīng)用池,public公眾瀏覽信息應(yīng)用池。

傳統(tǒng)的框架雖然有通過權(quán)限系統(tǒng)進(jìn)行隔離,但卻通常是把administrator、member、public三塊應(yīng)用都混在一塊,沒有對安全級別進(jìn)行隔離,不管是思想上,還是對于安全管理,其實都是不利的,就拿傳統(tǒng)的論壇程序來說,通常管理員要登錄后臺,都必須要重新輸入一次密碼,其實這樣做對安全確實是有利的,但從抽像思維來看,這是對管理員的應(yīng)用進(jìn)行了分離,姑且把這些應(yīng)用當(dāng)作"池"的概念,因此不能用傳統(tǒng)的B/S企業(yè)管理軟件的思想去設(shè)計。

3、View的模式過于死板,很難用于商業(yè)應(yīng)用

這里說的商業(yè)用戶是指要向第三方發(fā)布的應(yīng)用,就拿CakePHP來說,因為視圖固定得太死,如果想設(shè)計成真正易于美工修改,又支持多模板模式的,那幾乎是要完全拋棄它原有的view機制,很多東西太過學(xué)術(shù)化,而與實際應(yīng)用有點出入,加上模板引擎的思想大家很難真正做到統(tǒng)一,從而使PHP框架全面混亂。(由于每個人的理解有偏差,所以出現(xiàn)這樣的問題也是在所難免的)。

4、框架本身過于龐大,導(dǎo)致實際開發(fā)中,很多人對框架進(jìn)行不同程度的精簡,從而嚴(yán)重不統(tǒng)一

就拿官方的ZendFramework來說,其實一些核心文件加載時間就要0.05秒以上,用這種東西,假如要做一些高性能的系統(tǒng),幾乎是不可能的事情,但是在國外,因為對知識產(chǎn)品權(quán)比較尊重,所以未經(jīng)授權(quán)是不會胡亂改人的系統(tǒng)的,因為此應(yīng)之就出現(xiàn)了不少用于提升PHP運行性能的東西,但這終究不是最了的解決方法的。

終上所述,PHP框架要真正做到通用、實用,還需要很長時間,也許真正成熟之后,我們會后臺編譯在PHP擴展里的真正高性能PHP框架,(也就是說還是想把它做成組件的形式來使用)。

但給初學(xué)者的建議,并不是說不主張學(xué)習(xí)或使用框架,相反,要多些去研它的思想內(nèi)涵,此外大多數(shù)框架程序都充分利用PHP的一些特性,通過學(xué)習(xí)框架能發(fā)現(xiàn)不少東西,但是真正優(yōu)秀的程序員,最終需要的還是自己的靈魂,多些去想為什么?如何才能更方便,如何才能讓自己的"代碼庫"適應(yīng)性更強,當(dāng)想通了這一點,其實一切東西都變得不再那么重要了。

【編輯推薦】

  1. 改善PHP開發(fā)方式的5種方法
  2. 10位***PHP大師的開發(fā)原則
  3. PHP Zend框架模塊列表一覽
  4. 應(yīng)用PHP框架應(yīng)該注意些什么
  5. 國外十大***PHP框架排名
責(zé)任編輯:王曉東 來源: 銘家在線
相關(guān)推薦

2011-06-22 09:24:27

PHP框架

2018-12-18 09:04:13

5G網(wǎng)絡(luò)人工智能

2018-12-06 13:29:31

網(wǎng)絡(luò)5G物聯(lián)網(wǎng)

2011-10-10 09:08:07

編程語言排行榜

2013-09-03 13:09:30

谷歌諾基亞微軟

2009-05-13 09:11:44

Linux桌面OS

2015-03-20 10:00:53

2021-06-21 10:57:12

曙光

2017-04-07 14:53:32

華為

2009-05-12 17:57:12

Linux操作系統(tǒng)桌面

2011-07-28 19:58:42

ERP軟件

2010-11-17 11:24:30

跳槽

2019-08-14 08:18:49

網(wǎng)絡(luò)自動化智能化

2023-08-03 14:45:00

數(shù)字孿生

2021-04-08 11:20:24

零信任網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2013-07-03 09:09:45

PHP開發(fā)

2013-07-03 09:33:04

PHPPHP語言PHP教程

2022-05-11 10:48:56

模型JavaScript框架

2019-10-14 09:21:03

KPI自動化技術(shù)

2010-08-30 15:48:09

點贊
收藏

51CTO技術(shù)棧公眾號