婷婷亚洲久悠悠色悠在线播放_天天爽夜夜爽人人爽一区二区_少妇群交换bd高清国语版_日韩不卡一区二区_欧美精品一二区_久久国产精品影视

18842388900

網(wǎng)站建設(shè) APP開發(fā) 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 網(wǎng)站建設(shè)

PHP會死,為什么不呢?

作為在此期間出現(xiàn)的新的Web開發(fā)人員,事情變得清晰和自然:Perl不再適應(yīng)新的應(yīng)用程序開發(fā)環(huán)境。在Perl中,頁面需要冗長的,正式的CGI實現(xiàn),可以使用基本的默認編程在PHP中實現(xiàn)。 Perl語言充滿了舊時功能 - 引用,不方便的數(shù)據(jù)結(jié)構(gòu)以及許多其他小的奇怪語法語義。——這使得Web開發(fā)變得乏味,不穩(wěn)定且不方便。難怪沒有一個用Perl編寫的優(yōu)秀的Web應(yīng)用程序,但是使用PHP可以快速輕松地完成它,即使PHP具有當時顯而易見的缺陷。

1999年支持Perl對PHP有很多論據(jù):Perl更快,有更多的庫和驅(qū)動程序支持,CPAN是一個神奇的地方,內(nèi)部預(yù)編寫的代碼可以節(jié)省大部分任務(wù)。工作量的百分比。現(xiàn)在看起來有點荒謬,但“PHP缺乏可擴展性”是一個真正的缺點。但簡而言之,PHP贏了,因為上面提到的問題并不是這種語言所固有的。 PHP解釋器可以更快,庫可以開發(fā),PERA和PECL現(xiàn)在非常大,不包括供應(yīng)商希望人們使用其API的非正式庫。

時間在推移

十年后,我可以感受到歷史的潮流正在重演。開發(fā)人員對語言的期望正在向前發(fā)展。如果Perl在PHP中缺少令人驚訝的靈活“關(guān)聯(lián)數(shù)組”(即智能哈希表),PHP現(xiàn)在缺少的是lambdas和方法鏈接。同時,PHP通常用于編寫只有20行代碼的網(wǎng)頁,但現(xiàn)在認為如果你不使用類似MVC框架的東西,你就不會認為它是正確的。公式化代碼顯示了問題:這種語言需要一個框架來為人們做這些事情。

回到過去,我認為那些使用Perl進行Web開發(fā)的頑固人員是愚蠢的。現(xiàn)在,經(jīng)過10年的PHP開發(fā),我處于同樣的位置。我可以使用PHP在一小時內(nèi)淘汰一個好的網(wǎng)站并在一兩天內(nèi)開發(fā)出一個好的網(wǎng)站。 PHP的性能是眾所周知的,我可以無限擴展它。我雇用的每個開發(fā)人員都會擁有它,并且我集成的每個系統(tǒng)都有一個用它編寫的打包代碼庫。我深深沉浸在PHP的便利性中,雖然它不適合我的任務(wù)。

轉(zhuǎn)向Ruby on Rails

在PHP中取得成功的最明顯的潛力是Ruby on Rails。 Ruby是一種新的,干凈的語言,具有現(xiàn)代語言特性,松散,優(yōu)雅的語法(很像Python)。 Rails保存了我們的常見任務(wù),無需在集成的Web應(yīng)用程序中進行配置,將PHP中的三行和四行習慣編寫轉(zhuǎn)換為一流的語言結(jié)構(gòu)。這看起來非常像我需要的PHP替代品,以及使開發(fā)工作更快的事情。

我每天都使用Rails來修改由經(jīng)驗豐富的Rails專家編寫的Rails應(yīng)用程序,他喜歡這個框架和語言。七個月之后,我無法斷言Rails是出于難以表達的原因的正確選擇。我的文章的目的是試圖說明原因。

我必須提到的主要抱怨是表現(xiàn)。之前已經(jīng)說過,這種問題不應(yīng)該被視為語言中的致命缺陷,它只是語言實現(xiàn)中的一個暫時問題。所以我不能認為這是一個真正的問題,即使這是我將當前應(yīng)用程序移植到PHP的主要原因之一。我可以讓Rails像PHP一樣快速運行,但這需要2到4倍的硬件。我估計這將在五年后發(fā)生,我可能不必在五年后將程序移植到PHP。但現(xiàn)在,它無法滿足我的要求。

其次,我討厭Active Record。 Active Record是一種模式,不是Ruby固有的模式。它在最新版本的Rails中是可選的,但它的使用和這種模式已深入到Rails DNA中。我已經(jīng)解釋了為什么我認為這個數(shù)據(jù)庫上的ORM不是一個好習慣,所以我不再重復,但我需要總結(jié)的一點是你已經(jīng)保存了手動寫入CRUD并且性能不僅僅是ActiveRecord。失去事實的有效性,花時間弄清楚它是如何工作的,符合框架的原則,并防止它做這些事情。

第三,我非常不信任自動生成的代碼。工具可以幫助您生成模板式代碼,但是您的程序有很多無用的代碼來實現(xiàn)這些目標,這并不好。代碼生成喜歡“魔術(shù)推理”,因為生成器不確定代碼的某些特別有用的特征是否是在區(qū)域設(shè)置中專門編寫或固有的。神奇的推理是危險的。

代碼生成讓我想起Ruby on Rails最基本的問題之一,就是它不是一種語言。 Ruby是一種語言。但Ruby解決了PHP的一些基本問題,并沒有解決核心問題,即現(xiàn)代Web應(yīng)用程序需要一系列改進:例如路由,模型/視圖分類,插入功能等等都非常共同。特點。它位于Rails中,但它只是像PHP中的Zend,Symfony和Code Igniter這樣的MVC框架。

那么缺的是什么?

可以取代PHP的語言必須非常擅長PHP,就像PHP優(yōu)于Perl一樣。它必須承擔Web應(yīng)用程序的主要實現(xiàn)任務(wù)。就像PHP一樣,代碼的主要功能是輸出網(wǎng)頁——。這是一個有點激進的要求,它不適合其他東西,比如shell腳本語言。我希望有一種語言可以承擔我在開發(fā)MVC風格的Web應(yīng)用程序時的所有任務(wù)。所有函數(shù)都內(nèi)置在內(nèi)核中,而不僅僅是一個包。

問題是沒有這樣的語言。有一段時間,服務(wù)器端JavaScript似乎是統(tǒng)一Web應(yīng)用程序的前端和后端編程語言的下一個主要語言。但是這些關(guān)于JavaScript的好主意總是站在行為的一邊,比如nodejs:事件驅(qū)動模式是非常積極和強大的,允許你開發(fā)高性能應(yīng)用程序,最大限度地利用新硬件,但這是一種方式開發(fā)服務(wù)器端應(yīng)用程序,而不是網(wǎng)頁。你仍然需要寫很多可怕的網(wǎng)頁。其他CommonJS結(jié)果如ejScript開始嘗試替換PHP,但仍然沒有解決框架問題。

仍在等待

我必須得出結(jié)論,PHP的替代品還不存在。 Ruby on Rails很棒,但并不比PHP上的類似MVC框架好,更不用說Ruby本身的低效率以及ActiveRecord的ORM惡搞的雙重打擊。 Python似乎對下一代Web語言不感興趣,而JavaScript的服務(wù)器端解決方案只是一個開始。

網(wǎng)站建設(shè),小程序開發(fā),小程序制作,微信小程序開發(fā),公眾號開發(fā),微信公眾號開發(fā),網(wǎng)頁設(shè)計,網(wǎng)站優(yōu)化,網(wǎng)站排名,網(wǎng)站設(shè)計,微信小程序設(shè)計,小程序定制,微信小程序定制

相關(guān)案例查看更多

主站蜘蛛池模板: 成年人福利 | 色偷一区国产精品 | 免费精东传媒vs天美传媒 | 亚洲在线观看网站 | 精品人妻无码一区二区三区打不开 | 北条麻妃在线一区二区免费播放 | 日本天天操 | YW尤物AV无码点击进入影院 | 亚洲精品一区二区三区不 | 国产成人美女AV | 亚洲男人的天堂aⅴ在线视频 | 4444亚洲人成无码在线观看 | 成人毛片av在线 | 国产真实高潮太爽了 | 少妇翘臀亚洲精品av图片 | 黄色录像一级视频 | av橹橹| 三级黄色视屏 | 日本成本人片免费网站 | 被男人吃奶很爽的毛片 | WWW射我里面在线观看 | 亚洲AV无码成人网站在线观看 | 一区二区三区日本 | 日韩人妻无码精品一专区二区三区 | 久久精品无码一区二区三区不卡 | 国产精品国产三级国产aⅴ无密码 | 亚洲精品在线观看av | 色妞视频男女视频 | 国产一区二区网 | 欧美性吧| av片在线免费看 | 成人免费毛片立即播放 | 97干在线观看 | 999久久久精品视频 久久久经典视频 | 免费se99se| 精品国产三级a在线观看 | 一级肉体全黄毛片 | 陈书婷被肉干高H潮文 | 四虎影视最新免费版 | 久久精品国产一区二区三 | 一眉道姑免费观看高清 |