展望PHP7:PHP需要改變什麼_PHP教程

來源:互聯網
上載者:User
程式員(一般)定義好的程式設計語言是他們知道最好或最經常使用。我是一個 PHP程式員,約翰是一個JavaScript程式員,DHH是一個Ruby程式員,施瓦茨和蘭德爾是一個Perl程式員。 每個不同程式員看待問題都是不一樣的,但是總有一兩個會被共同認為是最好的。

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

雖然我們必須使用PHP為一個用於Web應用程式的語言,但它是一個爛語言,其使用不應予以鼓勵,或支援超出了必要。

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

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

一、打破一切

PHP7要打破一切。 PHP開發人員應該接受打破版本之間向下相容的定律。只要不允許大量的向後相容,PHP7將是一個高度尊重的語言。

1、建立一個具體的核心語言

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

2、一切都當作一個對象

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

3、一致的命名方法和類

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

4、讓事情嚴格

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

5、 一切是Unicode

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

6、中央啟動點

建立一個主類或初始化,所有代碼執行源於此。

7、清理C代碼

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

8、擺脫eval()

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

9、支援操作符重載

因為一切都是對象,開發人員只需掌握操作對象的方法即可。

10、允許的方法簽名

允許真正的方法簽名,所以程式員可以有不同的參數列表或傳回型別的同名方法。

 
  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)

我不能完全肯定這是可能的,因為我不是一個語言設計師,但它會是不錯的一個PHP虛擬機器。 它可以執行PHP位元組碼,並允許一個明確的堆和堆棧。

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

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

13、PHP官方發布規格

類似於W3C HTML5規範,PHP的規格將允許開發人員實現自己的PHP版本,並確保有具體的例子來編譯。

二、尊重語言

應努力使語言得到尊重。 我們應盡量招募開發人員做出具有非常強大功能的PHP7。 我們應該釋放巨大的代碼的安全,易於閱讀,並教新的開發人員以正確的方式編程。

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

三、尊敬開發人員

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

結論

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

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


http://www.bkjia.com/PHPjc/445773.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445773.htmlTechArticle程式員(一般)定義好的程式設計語言是他們知道最好或最經常使用。我是一個 PHP 程式員,約翰是一個JavaScript程式員,DHH是一個Ruby程式員,施瓦...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.