任何程序都是对信息的处理。
这里的程序是指广义上的程序,大到一个系统,小到一个方法。可以是一个类,也可以是一个模块。
做为程序员往往把程序当成是代码的集合。所以在开发程序的时候经常把注意力放在了代码上,代码是否简洁,是否优美,注释是否足够,类结构是否合理等,而忽略了对信息的处理是否正确,是否有效。因而在测试的时候没有问题,而正式使用的时候,Bug层出不穷。这些Bug中有80%以上,是由于对数据输入输出的有效性考虑不足而导致的。而由于没有对数据的有效性验证,在得到错误数据时,Bug的定位也成为一个非常繁琐的工作。这也许就是程序员经常加班改Bug的原因。
其实站在用户的角度,他们只在乎程序对信息的处理是否有效,程序是不是好用,不会在乎程序是用Java,还是C#,还是其他什么语言开发的。在用户那里程序员的代码写的再优美在好看没用。所以程序的好坏不是代码是否优美,而是对信息的处理是否正确。而程序员的看法正好相反,更看重的是代码是否优美。程序员忘了一点,工资其实是用户给的。
当然,也不是说程序员不该考虑代码级别的东西,程序员当然应该注重代码,因为这是老板给工资的原因。而是说现在很多程序员不注重信息的处理,而导致效率低下。这也许就是普通程序员与大牛的区别。
以上只是我个人的观点。不喜勿喷。