PHP的問題:全面闡述PHP網站設計的問題

來源:互聯網
上載者:User

前言

我的脾氣古怪。我會抱怨很多東西。這個星球上大多數技術我都不喜歡。

PHP不僅使用起來尷尬,還有要嘛我想要的不適合,要嘛不是最令人滿意,要嘛違背我的信仰。我可以告訴你關於一門語言,所有我想避免的好方式,所有我喜歡的壞方式。來吧,問吧!談話會很有趣!

php是唯一的例外。幾乎php抽象的所有東西都是支離破碎的。包括語言,架構,整個生態系統都一塌糊塗。我幾乎不能單獨列出咒罵的事情,因為它全身都壞了。每次我打算編輯一堆雜亂如麻的php抱怨清單的時候,我都被一些瑣事打亂,越深入就越會發現其它令人震驚的事情。

php讓人難堪。它是如此的破碎,但那些被培訓的業餘愛好者,卻對它稱讚不已。php在做一些徽不足道的挽回措施,但我選擇忘記它。

不過我得讓我的系統擺脫這些東西,也就這樣了,這是最後一次嘗試。

打個比喻

我只是隨口和Mel抱怨下,而她卻堅決讓我發表出來。

我甚至說不出來PHP到底怎麼了,因為—還好。想想你有一個,嗯,工具箱吧。一堆工具。看起來還好,有標準的東西。

你拔除螺絲釘,它怪異的有三個頭。OK,好吧,這對你不太有用,但你猜遲早有天會有用。

你拿出榔頭,被震住了,兩邊都有是尖爪。但它仍然能用,我的意思是,你可以用兩頭的中部斜著敲。

你拿出老虎鉗,但它們沒有鋸齒面。表面平而光滑。這沒多大用,但依然能用,沒什麼。

你可以繼續。工具箱的東西都是怪異和琢磨不定的,但又不能說毫無價值。整體看沒什麼大問題;它的工具都齊全。

現在,想象有很多使用這些工具的木匠,它們和你說:”這些工具有什麼問題呢?我們都用過,它們工作都很好啊!”。工匠們給你展示他們建的房子,每個門都是五邊形的而屋頂是癲倒的。你敲前門,它向內倒榻了,而他們卻抱怨你打破了他們的門。

這就是PHP的問題。

立場

我認為下面的特質對於一門語言的生產力和可用性是重要的,而PHP在大範圍破壞它們。如果你不同意這些,好吧,我無法想像,我們永遠不會達成一致。

一門語言必須是可預見的。它是將人類的思想反映給電腦執行的媒介,因此它的關鍵是,人類對程式的理解實際要正確。

語言必須一致。相似的東西就要看起來相似,不同的就是不同。學習了語言的部分知識,就應能很容易理解剩下的部分。

語言必須簡潔。新語言應該減少繼承舊語言的不好的形式。(我們也可以寫機器碼。)新語言當然應努力避免織入新的特有的形式。

語言必須是可靠的。語言是解決問題的工具;應盡量避免引入新問題。任何”陷阱”都會大量的分散注意力。

語言必須是可調試的。當出錯的時候,程式員必須修正它,我們需要獲得我們想要的協助。

我的立場是:

PHP到處處充滿驚奇:mysql_real_escape_string,E_ACTUALLY_ALL

PHP不一致:strpos,str_rot13

PHP需要特別形式:error-checkingaroundCAPIcalls,===

PHP古怪:==。for($fooas&$bar)

PHP晦澀:預設無棧跟蹤或fatals,複雜的錯誤報表

我不能就單個問題解釋為什麼它歸為這些類,否則將會沒完沒了。我相信讀者自己會思考。

不要再和我扯這些東西了

我知道很多有利的論點。我也聽到很多反駁的論點。這些都只能讓談話立即停止。不要再跟我扯這些東西了,求你了。

不要和我說”好的開發人員能用任何語言寫出好的代碼”,或者壞開發人員。.吧啦吧啦。這毫無意義。好的工匠可以用石頭或鎚子駕馭釘子,但你見過有多少工匠用石頭的?成為一個好開發人員的標準之一就是善於選擇工具。

不要和我說熟記上千個例外和古怪行為是開發人員的職責。是的,這在任何系統中都是必要的,因為電腦是傻的。這不意味著,系統能瘋狂的接受而沒有上限。PHP有的只是異常,這是不行的,一旦和語言摔角決鬥,你實際編寫程式就要花費更多的努力。我的工具不能為我建立應用產生積極作用。

不要和我說“那就是CAPI的工作方式”。這星球上進階語言存在的目的是什麼,它們能提供的一切僅僅是一些字串助手函數和一堆C的封裝器?如果是這樣,那就用C!這裡,甚至還有為它準備的CGI庫。

不要和我扯“搞出奇怪的事,是你活該”。如果存在兩個特性,總有一天,某些人會找到一起使用它們的理由。再次強調,這不是C;這裡沒有規範,這裡不需要“未定義行為”。

不要再和我扯Facebook和Wikipedia就用的PHP.我早知道了!它們也能用Brainfuck寫,但只要他們足夠陪明,不斷折騰這些事情,他們總能克服平台的問題。眾所周知,如果使用其它語言編寫,開發時間可能會減少一半或加倍;單獨拿出這些資料毫無意義。

上帝保佑,不要再和我扯任何東西了!如果列出的沒有傷害你的PHP的觀點,無所謂,因此請停止在網上做無意義的爭論,繼續開發高帥富酷的網站來證明我是錯的。

偷偷告訴你:我非常喜歡Python.我也很樂意對它說些你不愛聽的話,如果你真想的話。我並不要求它完美;我只是想揚長避短,總結我想要的最佳東西。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.