知识卡片
缩小变量作用域降低调试成本
内容
把变量的作用域尽量限定在最内层语句块内(而不是全局可见),使得当某个变量的值出错时,需要排查的代码范围被压缩到几行或一页之内,而不是整个程序。这是通用的软件工程原则:状态的可见范围越小,出错时的排查成本越低,也越不容易被无关代码意外修改。发散:这与”最小权限原则”是同一种思路的两种表现——权限管理限制的是谁能访问,作用域限制的是哪里能访问,本质都是缩小意外交互的可能面。
参考来源
《Perl语言入门(第五版)》第4章《子程序》
知识卡片
把变量的作用域尽量限定在最内层语句块内(而不是全局可见),使得当某个变量的值出错时,需要排查的代码范围被压缩到几行或一页之内,而不是整个程序。这是通用的软件工程原则:状态的可见范围越小,出错时的排查成本越低,也越不容易被无关代码意外修改。发散:这与”最小权限原则”是同一种思路的两种表现——权限管理限制的是谁能访问,作用域限制的是哪里能访问,本质都是缩小意外交互的可能面。