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

展望PHP7:PHP需要改變什么

開發(fā) 后端
本文是從Vic Cherubini 的博文《What PHP Needs to Change》翻譯而來,作者從自身對PHP語言的理解和喜愛為出發(fā)點,談了對PHP7的展望,文章列舉了作者認為PHP需要改變的地方,并衷心的希望PHP的未來更美好!

程序員(一般)定義好的編程語言是他們知道最好或最經(jīng)常使用。我是一個PHP程序員,約翰是一個JavaScript程序員,DHH是一個Ruby程序員,施瓦茨和蘭德爾是一個Perl程序員。 每個不同程序員看待問題都是不一樣的,但是總有一兩個會被共同認為是最好的。

每當聽到PHP被不尊重的時候,作為一個PHP開發(fā)人員,感覺很受傷。

雖然我們必須使用PHP為一個用于Web應(yīng)用程序的語言,但它是一個爛語言,其使用不應(yīng)予以鼓勵,或支持超出了必要。

哎喲,聽說我日常使用的語言,被給予很爛的評價時候,有人可能會說你不應(yīng)該管其他人對你選擇的語言的評價,只要自己認可就行。我想我真的不應(yīng)該嗎,而且該聲明暗示的是,不僅是語言很爛,開發(fā)商爛,而且我們PHP開發(fā)者也爛。

那么,究竟應(yīng)該怎么做才關(guān)閉他人的大嘴巴呢?我們能否使PHP語言受到尊重? 我們能否讓PHP開發(fā)人員受到尊重? 讓我們來分析某些方面我們可以做到這一點。

一、打破一切

PHP7要打破一切。 PHP開發(fā)人員應(yīng)該接受打破版本之間向下兼容的定律。只要不允許大量的向后兼容,PHP7將是一個高度尊重的語言。

1、創(chuàng)建一個具體的核心語言

刪除所有庫方法,并保持在對象集中的核心方法。 您應(yīng)該能夠編寫無需任何外部庫或擴展PHP7和對基本輸入/輸出,字符串處理和數(shù)學一個很好的完整的語言。庫以外的任何應(yīng)該通過批準擴展。

2、一切都當作一個對象

以從Ruby,Smalltalk和(主要)的Java對象,并把它一切當作對象。 整數(shù)是對象,字符串是對象,他們每個人都可以操作的方法, 我不相信PHP需要的Ruby和Smalltalk在對象之間傳遞彼此訊息的觀念,而調(diào)用對象的方法才是最好的。

3、一致的命名方法和類

由于PHP的最大的抱怨之一是不斷要檢查,(needle,haystack) 或(haystack, needle),或some_function(),或function_some(),或someFunction(),一個一致的格式需要制定。

4、讓事情嚴格

 嘗試傳遞到一個方法浮動字符串? 這是一個警告。

5、 一切是Unicode

在PHP6中的所有字符串都是Unicode,這很好,我主張PHP7也應(yīng)該保持。

6、中央啟動點

創(chuàng)建一個主類或初始化,所有代碼執(zhí)行源于此。

7、清理C代碼

我不是一個C的專家,但如果你比較了解Ruby的​​C代碼到PHP的C代碼,可以很容易地了解了PHP與Ruby的​​內(nèi)部。 我非常熟悉PHP,所以我自己的寫擴展更容易。

8、擺脫eval()

eval()是邪惡的。 如果你正在使用它,那么這是一個錯的主意:這將打破PHPUnit,拋棄它從現(xiàn)在開始。

9、支持操作符重載

因為一切都是對象,開發(fā)者只需掌握操作對象的方法即可。

10、允許的方法簽名

允許真正的方法簽名,所以程序員可以有不同的參數(shù)列表或返回類型的同名方法。

 

  1. class A {   
  2. public int function doSomething(int $a, float $b) {   
  3. // Same as $a->*($b->to_int());   
  4. int $c = $a * $b->to_int();   
  5. return $c;   
  6. }   
  7. public float function doSomething(int $a, float $b, float $c) {   
  8. // Same as calling $a->*($b->*($c)); since * is a method on each object $a and $b.   
  9. float $d = $a * $b * $c;   
  10. return $d;   
  11. }   
  12. }  

 

11、建立一個PHP虛擬機(PVM)

我不能完全肯定這是可能的,因為我不是一個語言設(shè)計師,但它會是不錯的一個PHP虛擬機。 它可以執(zhí)行PHP字節(jié)碼,并允許一個明確的堆和堆棧。

12、刪除copy-on-write (COW)

COW是一個相當陌生的概念,,如果你不知道它的存在,以新的開發(fā),就可能導致問題。

13、PHP官方發(fā)布規(guī)格

類似于W3C HTML5規(guī)范,PHP的規(guī)格將允許開發(fā)人員實現(xiàn)自己的PHP版本,并確保有具體的例子來編譯。

二、尊重語言

應(yīng)努力使語言得到尊重。 我們應(yīng)盡量招募開發(fā)者做出具有非常強大功能的PHP7。 我們應(yīng)該釋放巨大的代碼的安全,易于閱讀,并教新的開發(fā)者以正確的方式編程。

我不知道Ruby的瘋狂,但我尊重Ruby語言。 我看到它的力量,我看在Ruby on Rails是一個非常好的框架,它只是我不是喜歡的。如果我們能獲得具有很好威望的開發(fā)商認可或尊重,PHP就會走的更遠。

三、尊敬開發(fā)人員

從上文的理解,我們需要一個非常德高望重的PHP開發(fā)核心團隊。 他們發(fā)布代碼,舉辦講座,向人們展示了“正確的方式”做事,這支團隊將很快的受到不少開發(fā)商的尊重。

結(jié)論

我興奮PHP的未來。 我很懷疑我的想法會被執(zhí)行,但我真的相信他們會幫助整個社會。 我感到非常興奮,當 世界第二大的網(wǎng)站宣布,他們正在幫助PHP建立偉大的社區(qū)。 PHP是不會消失,他會越來越好,只要我們努力提高它,改善它,終有一天PHP會成為受開發(fā)者普遍尊重的語言。

最后,我不是一個語言設(shè)計師。 我的想法可能會被認為完全胡說。 如果我不正確的地方,請禮貌地讓我知道,我會很高興地談?wù)撍?讓我們共同努力,使PHP成為備受尊重,功能強大,快速,高效的語言。編譯若有差錯,歡迎指正!

【編輯推薦】

  1. 分享PHP網(wǎng)站建設(shè)的流程與步驟
  2. PHP新手 學習基本語法
  3. PHP中IIS7實現(xiàn)基本身份驗證的方法
  4. PHP新手 詳細介紹PHP代碼規(guī)范
  5. 介紹生成PHP網(wǎng)站頁面靜態(tài)化的方法
責任編輯:于鐵 來源: 大家論壇
相關(guān)推薦

2011-07-01 08:41:12

PHP

2011-07-06 10:37:46

開發(fā)技術(shù)周刊

2015-10-28 13:30:15

PHP7性能揭秘

2015-09-18 11:29:50

PHP7革新性能

2018-07-12 14:16:35

PHP7代碼SQL

2019-03-08 08:55:16

PHP7PHP5web安全

2015-12-03 11:45:31

PHP7 發(fā)布

2017-09-28 11:54:11

PHP

2015-09-16 15:01:30

PHP內(nèi)核

2016-03-16 15:21:30

2015-11-25 09:44:14

PHP 7推遲發(fā)布

2015-03-30 15:00:34

PHPPHP五件事

2011-12-15 09:00:51

PHP 7

2017-01-05 11:28:29

白熊技術(shù)簡爆/Swoo

2015-12-07 09:23:13

PHP 7速度正式發(fā)布

2020-09-15 09:48:41

PHP

2017-01-03 19:48:33

2020-07-23 08:21:25

PHP開發(fā)人員MVC

2010-12-30 09:17:57

PHP程序

2021-05-28 05:18:08

PHP語言roadrunnner
點贊
收藏

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