博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Hack与HHVM权威指南》——1.1 为什么使用类型检查器
阅读量:5973 次
发布时间:2019-06-19

本文共 756 字,大约阅读时间需要 2 分钟。

本节书摘来自华章出版社《Hack与HHVM权威指南》一书中的第1章,第1.1节,作者 Owen Yamauchi,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.1 为什么使用类型检查器

关于对Hack语言类型检查器赞同的观点,听起来和对静态类型语言赞同的观点非常接近。类型检查器能够在不运行程序体本身的情况下,对错误进行查找和检查。所以在测试过程中,即使不运行代码,它也能够捕获问题所在。正是因为不需要去执行程序体,所以能够在程序开发的早期及时地捕获错误,这将大幅度地节约开发时间。静态分析的能力能够确保在模块边界没有破损,这使代码重构变得更加简单。

在最经典的争论中,所谓的缺点总是伴随着一些能够拖慢开发速度的特征。在能够正式运行程序之前,你不得不花费时间等待程序体进行编译。这依赖于程序所使用的编程语言及程序体本身的大小。同时,你必须在程序体内部给出所有变量的类型,这将使你的程序体更加冗长并且难以维护。
然而这些诟病在Hack语言中并不存在,这基于如下两点原因。第一点,类型检查器被设计成及时反馈的,即使在非常大的代码库内,也可以做到及时反馈。它使用的是“客户端/服务端”模型:类型检查的服务端在后台运行,并且时刻在监控文件系统的变化。当你编辑一个文件时,服务端会及时更新它在内存中对你的代码库的分析。在你准备运行程序的时候,分析已经完成了。客户端仅仅是简单地查询服务端,并且几乎瞬时展示分析的结果。这个“及时反馈”的功能很容易与各种程序编辑器和IDE合并。
第二点,Hack的变量类型标注是设计成渐进式的。你可以按自己的心愿使用这项功能。类型标注过的代码可以和没有类型标注过Hack代码或者PHP代码无缝对接。除此之外,你如果不标注本地变量类型,类型检查器会从它的上下文中推断出相关的类型。

转载地址:http://pzcox.baihongyu.com/

你可能感兴趣的文章
2018 KDD CUP支付宝安全团队Deep X斩获两项大奖
查看>>
安装 PHP7
查看>>
PHPCMS V9静态化HTML生成设置及URL规则优化
查看>>
关闭SQL Server 数据库所有使用连接
查看>>
tkinter events format
查看>>
跨越敏捷 — 闲鱼研发效能升级之路
查看>>
8支团队正在努力构建下一代Ethereum
查看>>
Shell脚本常用命令
查看>>
教程 | pandas轻松入门 之 数据结构介绍 1
查看>>
一篇文章能够看懂基础源代码之JAVA篇
查看>>
什么是大数据技术架构
查看>>
【分享】如何救援記憶卡中誤刪的資料
查看>>
教你回收站里面的东西删除了怎么恢复的技巧
查看>>
4个方面彻底说清JS的深拷贝/浅拷贝
查看>>
北方计算机专修学院“展示自我 秀出风采” 网页创意设计大赛成功举办
查看>>
DNS解析相关实验:7台主机的恩怨情仇
查看>>
Goldengate双向复制配置
查看>>
Oracle官方内部MAA教程
查看>>
DNS相关配置
查看>>
Nginx-location配置
查看>>