首页 教程 网络新鲜事 教程详情

Facebook的Hack是PHP未来发展吗?

小编:简简单单 发布日期:2014-11-05

Facebook要建立Hack的原因?

首先Facebook的内部代码是用PHP编写的,同时Facebook可以让很多新的开发人员能够使用PHP,因为语言是容易学习和使用的。当然,Facebook的PHP代码可能转换为C衍生物被推到之前的生产环境中。问题的关键是Facebook强烈的依赖于PHP语言,以吸引新的人才和提高开发人员的效率。

Hack严格的类型

不幸的是,PHP不可能在Facebook的规模下执行。因为PHP是一种松散类型的语言,很多关于类型的错误可能在运行的时候不会被发现。这就意味着Facebook在早起必须编写很多执行类型错误检查的测试,或者花更多的时间来重新构建发布后的运行错误。为了解决这样一个问题,Facebook添加严格的类型来对运行时的返回类型实施攻击。严格的类型抹杀了很多相关单元测试的必要性,同时也激励开发人员在早期开发过程中捕获与类型相关的错误。

Hack瞬时类型检查

为了使开发的过程中捕获错误更加得心应手,Facebook的HHVM引擎包含了一个类型的检查服务器,这个服务器在本地运行时监控Hack代码。开发人员的代码编辑器和IDE在代码开发过程中可以使用这个类型检查服务器来立即报告语法或类型的相关错误。

现有的PHP代码呢?

大多数现有的PHP代码将运行在Facebook的HHVM引擎,这是必要的,因为Facebook的现有代码库主要是PHP代码。Hack代码存在一些异常,毕竟其没有和传统的PHP等效,比如一些语言特性(如变量)和Zend扩展仍然不被支持。随着时间的推移,HHVM也会尽快实现与Zend引擎的奇偶化校验。

此外,Facebook创建的Hack语言与传统的PHP代码进行逐步的迁徙。

这是否意味着PHP“死”了?

如果Hack是那么好,这是否意味着PHP的日子已经屈指可数了?答案当然是:NO!传统的PHP Zend是由专门的机构管理审核通过的,任何新的功能必须由机构的成员审核投票通过之后才能公布,这样的投票时100%公正和公开的。

但Hack是非常不错的,Hack有非常多属于自己独特的功能,所以永远不可能成为传统的PHP语言。Facebook的HHVM引擎比Zend引擎更好的性能,而且它具有更多的内部开发人员,致力于不断使HHVM引擎变得更好。

这也并不意味着PHP的Zend引擎将消失,Zend和HHVM引擎能够而且将会并存。竞争是一件好事,我希望这两个Zend和HHVM会从彼此的优势中获益。

是Facebook负责吗?

Hack是Facebook的产物,这主要是源于Facebook的工程师。虽然现在公众都希望它能公布,但是Hack和HHVM很大程度上仍然依赖与Facebook的持续投资和参与。

未来

由于Hack和HHVM的优越性,我想从某种程度想来说,Hack是PHP的未来。

相关文章

推荐游戏

  • 街机弹珠台
    街机弹珠台
    益智休闲
    79.6 MB
    《街机弹珠台》又是一款弹珠游戏,这款游戏的画面将更加炫丽,它集合了多种弹珠游戏,和各种经典...
    点击下载
  • 无限少女
    无限少女
    角色扮演
    42.5 MB
    《无限少女》是一款日系的二次元同人卡牌手游。游戏界面美轮美奂,玩法模式设计新颖,玩家可以见...
    点击下载
  • 永远的7日之都
    永远的7日之都
    角色扮演
    938.7 MB
    《永远的7日之都》是一款网易制作与发行的日系动作RPG手游,有着庞大的故事观,诸多拥有不同实力...
    点击下载
  • 寒灵之剑
    寒灵之剑
    回合网游
    131.8 MB
    《寒灵之剑》是2014年首款真3D的回合制手游,此款游戏汲取经典回合制游戏精髓,复原了回合制游戏...
    点击下载