摘要:集合在數組的基礎上添加了更豐富的集合類型匿名函數開始加入了匿名函數支持,但是和大多數語言不同,匿名函數內需要訪問外層的變量的話,需要事先使用聲明。
Facebook發布的Hack語言是一個運行在HHVM上的語言,在PHP的基礎上添加了靜態類型檢查和一些現代編程語言的特性。
類型標記對于大型項目而言,類型檢查可以避免很多問題。
泛型借鑒了C#和Java
{ protected T $data; public function __construct(T $data) { $this->data = $data; } public function getData(): T { return $this->data; } }nullable類型?運算符代表可為空值。
集合在PHP數組的基礎上添加了更豐富的集合類型:
Vector
Map
Set
Pair
匿名函數PHP 5.3開始加入了匿名函數支持,但是和大多數語言不同,匿名函數內需要訪問外層的變量的話,需要事先使用use聲明。
function ($quantity, $product) use ($tax, &$total) { $pricePerItem = constant(__CLASS__ . "::PRICE_" . strtoupper($product)); $total += ($pricePerItem * $quantity) * ($tax + 1.0); };Hack改進了PHP的匿名函數:
$x . $y; } function test(): void { $fn = foo(); echo $fn("baz"); // barbaz }其他特性靜態動態分離的方法分發
覆蓋父類方法必須聲明
XHP,輸出HTML和XML時自動過濾XSS
改進了trait
Continuas
代碼必須在函數或類之內
方法名不能呢給和類名一樣
不允許調用父類的靜態方法
不允許靜態調用對象
異步編程
相關鏈接hack主頁
Hack on HHVM —— Facebook是如何優化PHP的
編撰 SegmentFault
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/20707.html
摘要:周四正式發布了編程語言,將靜態類型以及一些現代的語言特性引入了。這是對優化之路上的新里程碑。但是語言層面的優化限制太多,對而言還是不夠用。其次是優化運行的步驟。在這方面進行調整,可以提升運行的性能。值得注意的是,給的影響很大。 Facebook周四正式發布了Hack編程語言,將靜態類型以及一些現代的語言特性引入了PHP。這是Facebook對PHP優化之路上的新里程碑。 showIm...
摘要:審視現在現在,語言發展迅速,由來自全球的幾十名核心開發者提供支持,而且開發方式也發生了變化。這些改進得益于新競爭者的出現,尤其是開發的和。簡稱是和的解釋器,使用即時編譯器提升應用的性能,并減少內存用量。對于程序員來說,現在是令人激動的時刻。 就目前PHP語言的發展可以說是蒸蒸日上的,這得益于命名空間、性狀、閉包和內置的操作碼緩存等有用的特性,所以PHP正在變成一門現代化腳本語言,并且現...
摘要:惠新宸是核心開發者,,的主要開發者。我在本科畢業的時候,也嘗試找了一些開發工作,面試了幾個單位,都被拒了,也許在當時面試我的那些人眼里,我就是一個不適合編程的人吧。 非商業轉載請注明作譯者、出處,并保留本文的原始鏈接:http://www.ituring.com.cn/article/142454 惠新宸@Laruence,是國內最有影響力的PHP技術專家,PHP開發組核心成...
閱讀 5071·2021-11-25 09:43
閱讀 1697·2021-10-27 14:18
閱讀 1065·2021-09-22 16:03
閱讀 1360·2019-08-30 13:19
閱讀 1582·2019-08-30 11:15
閱讀 1656·2019-08-26 14:04
閱讀 3132·2019-08-23 18:40
閱讀 1174·2019-08-23 18:17