还是测试吧。。。
用动态语言搞开发,项目大了根本没法维护,而且还会bug层出不穷,任谁也Hold不住。真想搞开发,要么玩Java,要么玩C#。
下面举个例子。
比如一个游戏项目,是这样的(伪代码):角色 lxy=李逍遥;
音乐 zxmzf=最炫民族风;
//省略另外500个对象
然后你想写一个逻辑,伪代码如下:李逍遥作为主角登场;
背景音乐播放最炫民族风;
//省略之后的200万行代码。。。
如果你一不小心,写了一句zxmzf=李逍遥
会如何?
静态语言的IDE会立即报错,并提示:zxmzf是音乐类型,无法赋值为李逍遥
你必须修改代码,排除掉这个错误,才能继续编写代码。不仅写的字多,IDE还老是报错,很不爽。
动态语言的IDE就不会报错。因为没有类型约束,可以随意赋值。谁规定zxmzf不能是李逍遥?
所以对于动态语言来说。这完全就是正确的代码,又何来报错之说?
因此,你可以继续编写代码,完全不会被讨厌的报错干扰,写的非常爽。
几个月之后,你的游戏写完,可以运行了。
进入游戏,发现游戏没有音乐,而且主角竟然不见了。
回去改代码,IDE却显示一切正常,不给任何提示。一行一行找吧。
经过反复排查,终于找到了那句赋值代码。把它改成了zxmzf=最炫民族风
改一句代码很容易,可是紧接着会发生一件非常恐怖的事情。原本从来不报错的IDE,却突然报出几万个错误。
因为接下来的200万行代码,都是以“zxmzf=李逍遥”作为前提而写成的啊。