国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網站管理員

為什么說PHP是個集中營

admin
2012年4月18日 23:28 本文熱度 3320

本文是從 Why PHP Was a Ghetto 這篇文章翻譯而來。


有一天我跟在DUMBO的一個非常棒的創(chuàng)業(yè)公司的老板聊天,談到為什么非PHP界的開發(fā)人員普遍輕視PHP和PHP相關社區(qū)。他提出了一個觀點讓我印象很深,很大程度上是因為以前從來沒有聽到過這樣的說法。


如果你不知道大多數的程序員都會對PHP發(fā)什么樣的牢騷,那么,這些牢騷差不多會像這樣:


語法丑陋


缺乏其它語言都有的一些必要的特征(在5.3版本之前,沒有命名空間,閉包)


不一致的函數命名、使用慣例,以及其它一些怪異的東西


過程和面向對象的雜混


基本上80-90%的PHP項目都爛如一堆狗屎


但他所說的PHP的問題卻是另外一個問題。他并沒有說這種語言有問題——他認為這種語言被一種常見的文化現象包圍著,是一種通常由語言的創(chuàng)造者造就的文化傳統(tǒng),現在看來這對一些糟糕的編程實踐方法起到了鼓勵作用。也就是它使PHP代碼變的劣質和不可維護。


這種一個語言或框架上體現出創(chuàng)始人的哲學思想并被相關社區(qū)推崇的現象是的確存在的。他拿出來Ruby和其創(chuàng)始人Matz作為例子。Matz想要的是一種易讀易寫、能提高程序員工作效率的語言。沒看見Ruby開發(fā)人員們言之必稱快速開發(fā)以及這種語言的優(yōu)雅?


接著就是DHH 和他的Rails框架。還有Guido和他的Python語言。于是我在想:Rasmus對于PHP呢?


Rasmus Lerdorf給人的印象非常的有趣。他創(chuàng)建了最初版的PHP語言,而且一直在改進這種語言,他在PHP社區(qū)里被當作神一樣崇拜,他在PHP的任何方面都 享有最大的權威。他被眾多的會議邀請去做演講,同時被大網絡公司(yahoo.com)所雇用,他獲得了所有人的尊敬——盡管有這樣一種事實:他成了大多 數的非PHP程序員所鄙視的PHP上的眾多問題的形象代表。


Rasmus倡導避免使用框架,而把PHP更多的當作一種模板語言。對他來說,這種做法能產生直接的運行效率和可擴展性(程序負載可知)。而對于其 他的所有人來說,這種做法導致了大量的亂燉似的過程式代碼,大量的無法維護的項目。自從1995年PHP誕生至今大概10年左右的時間里,所有的PHP項 目都是按照這種指導寫成的。


與此同時另外一個問題突然的出現了:在PHP5.0之前,PHP的初期,PHP獲得了大量的新手的追隨。這種語言的入門門檻出奇的低,任何人都可以 下載自解壓的×AMP Windows程序安裝包、在2兩分鐘內用上這種語言。除此之外,那時在Web開發(fā)方式上對MVC模式的共識并沒有真正的出現。這樣一來你可以想象,一群 新手和一個缺乏好的開發(fā)實踐方法的語言組合到一起能創(chuàng)造出什么?一堆無法維護的垃圾。而且整個大環(huán)境都是這樣。


不要誤解我的話——優(yōu)秀的PHP開發(fā)者還是不少的,即使是當時。但是,就像我說的,粗制濫造的菜鳥作品到處都是。當牛仔式無羈的PHP程序員在沒有 指導原則的情況下聚集到一起開發(fā)程序,于是像PHPbb、 PHPNuke以及很多的粗糙的.php3程序包就出現了。但是你能單純的責怪PHP開發(fā)人員嗎?不能!其它的Web語言巨人,ASP和Perl,同樣惡 名遠揚,同樣宣傳著一種亂燉式的開發(fā)方式。


所以這就是為什么PHP會得到這樣的罵名。是因為它的歷史流傳。大多數已經轉向Python,Ruby和Java的PHP開發(fā)人員并沒有在MVC概 念興起時回頭去重新思考這種語言。此外,更有一些像”Ruby公子“Zed Shaw抱怨一些程序員的思想”受PHP毒害“這樣的露骨的諷刺,像這樣的言論在RubyInside上很盛行。


PHP是個集中營


但像Zend和CodeIgniter這樣的框架的出現把這種語言推向了正確的開發(fā)方向上。事實上,它把PHP推向了與Rasmus所希望看到的相反的方向上了。查看一下Zend和CodeIgniter框架,你會發(fā)現它們是為數不多的文檔寫的很好,代碼寫的很好的程序。


大多數學習了Ruby的開發(fā)人員同時都要學習Rails和MVC知識;PHP在此之前已經被使用了整整10年。對于那些新手來說,可惡的Ruby沒 有給他們這段時間讓他們自由發(fā)揮。Rails有現成的標準指導,它的入門門檻相對高很多,通常會把一些缺少經驗的開發(fā)人員擋在門外。


事實上,PHP應用程序是可以向其它種語言那樣寫的很好,而且還會具有一定的運行速度上的優(yōu)勢。PHP世界里的MVC風格的開發(fā)方法興起只是在近幾年才出現的現象。不得不承認,我們應該感謝Rails帶來的這種變化。


那么,PHP如今是個什么樣呢?


各種標準(非統(tǒng)一,但大多數項目使用MVC,很少有垃圾般的過程式程序)


很低的入門門檻


速度和可擴展性(在各種腳本語言里PHP應該是最好的)


有一個好的單元測試框架


有最好的各國語言翻譯的文檔


除此之外,互聯網上大多數有影響的網站都使用PHP作為它們后臺的語言或工具,諸如Facebook,Digg,維基百科,Wordpress,Drupal等等。我相信,對PHP有一個深入的掌握會使一個程序員打開更多的未知領域的大門。


如果你不贊同上面所說的,請留下評論,或email給我——我想聽聽你為什么不這么認為。


事實上,我并不是一個PHP迷,我對語言沒有感覺。我使用PHP大多是因為——你猜到了——有人愿意付錢給我。所以一切歸咎于此:


如果你希望在軟件設計上做出明智的決定,PHP是你開發(fā)Web應用程序的最佳選擇。


順便說一下,如果你確信要使用PHP來開發(fā)下一個Web應用,請試一試CodeIgniter。它是一個輕量級的,普通的,超級快的PHP框架。對于CodeIgniter,我是個粉絲。


來源:外刊IT評論


該文章在 2012/4/18 23:28:10 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 人妻少妇偷人精品无码 | 国产精品日韩av | 亚洲av极品在线观看 | 无码一区二区三区在线精品无码 | 性加拿大高清xxxxx | 国产美女爆乳呻吟视频 | 亚洲婷婷天堂在线综合 | 亚洲 日韩 另类 天天更新 | 激情综合色综合啪啪五月丁香搜索 | 亚洲成人久久久精品 | 午夜免费视频福利集合100 | 自拍偷自拍亚洲精品被多人 | 伊人久久大香线蕉综合hd高清 | 五月丁香婷婷激情一区二区 | 精品精品国产高清a毛片不卡 | AV在线播| 亚洲一区二区三区四区五区黄 | 亚洲高清国产一区二区三区 | 亚洲自偷自拍另类 | 午夜无码一区二区三区在线观看 | 国产成人AV无码一区二区三区色 | 亚洲国产日韩精品一区二区三区 | 国产91精品一区二区麻豆亚洲 | 亚洲女久久久噜噜噜熟女 | 成在人线av无码 | 亚洲av无码一区二区不卡 | 免费看成人羞羞视频网站在线看 | 免费又粗又硬进去好爽A片视频 | 李宗瑞性侵全集种子 | 国产强被迫伦姧在线观看无码 | 亚拍一区二区嫩一区 | 国产丰满肥熟在线观看 | 麻豆果冻传媒新剧国产杜鹃 | 亚洲福利精品一区二区三区 | 亚洲电影国产无码一区 | 精品熟女国产久久少妇aⅴ免费狠狠 | 欧美黄黄黄AAA片片 欧美黄色免费网址 | 国产真实乱了在线播放 | 亚洲国产精品久久电影欧美 | 日韩欧美国产师生制服 | 久久av无码αv高潮αv喷吹 |