关于类型安全的思考

这两天一初学python的哥们频频吐槽C#这样赋值时对类型的检查,让问题变难变复杂了. 解释几次类型检查的好处,效果不明显. 
我也反思了一下, 类型检查真的是额外的包袱么?
答案 是忠言逆耳利于行。

你是君王,语言是臣子,在君王犯错的时候: 一个臣子在事后说“你让我干的,不是我的责任”,然后笑眯眯的看着屏幕前苦思冥想“到底哪里出了问题”的你。 另一个臣子确在第一时间就死谏指令的“不可行之处”。

哪个能真正帮助你治理好越来越大的规模,越来越错综复杂的关系? 

让一条明显不可行的赋值语句被执行,并不会简化问题,反而是让问题进一步扩散了,是对异常结果更深的困惑。

回想一下那些在屏幕抓着头发,然后恍然大悟的时刻:“原来是这!stupid! 这么低级的错误!”。 有多少这种疏忽是在一开始就能被发现和避免的呢?

“0.5”忘转成数值就拿来做运算,结果是不断扩散的字符串。 明明想修改集合里的元素的值,结果整个集合被替换成了一个值。 汇款给刘韬误写成了刘涛,银行默默建了个新账户,在你困惑钱怎么不见了的时候,银行表示“呵呵”。

在把以上事情都办砸然后,管家拍着胸脯报告说“主人,您交代的事情都安排好了!”。 你确信这管家不是敌人派来的卧底么?

posted @ 2017-08-20 12:49  Robird  阅读(142)  评论(0编辑  收藏  举报