当你手里有把锤子的时候,看所有的东西都是钉子。有时候程序员往往会陷入为了写代码而写代码的怪圈,没有意识到代码是为了解决现实问题的。当问题有更简便的解决方案时,写代码未必就是必须。
记住:你不是别人花钱让你在屏幕上写字符的程序猿,而是让你解决问题的专业人士。Fagner Brack的总结非常有见地。
程序员似乎已经忘记了软件的真正目的是什么,是解决现实世界的问题
锤子摆在一块木板上。木板有一颗被锤弯的钉子。
程序员似乎已经忘记了软件的真正目的是什么,是解决现实世界的问题。
50年前的1968年开过一场会,会议名字叫做软件工程工作会议,是有NATO科学委员会赞助的。那时候大家已经开始注意到软件日益成为社会的基础。然而,软件也变得太难以理解。在那次会议之后,变成开始变成一个行业。软件开始摆脱商业人士的控制。
不管软件此后走上了什么样的发展道路,仍然存在着业务与软件开发(或者按照那次会议首次的说法,“工程”)分离的问题。如果开发者太过狭隘地专注于开发,就会错过了他们编写的软件背后的目的。以至于可能会看不到并不需要编写任何代码的潜在解决方案。