阅读笔记1
刚开始,就给我很大的触动。文章一开始以焦油坑为例,写焦油坑如何困住凶猛的野兽,并在它们不断的挣扎下,将其吞没的故事。就这一个故事给了我很深的触动,一读到这里,我就能想起自己在编写代码的过程中面对出现的BUG,也是这样不断去做出各种各样的修改,但最后都无济于事的样子。正是由于无数细小的问题交叉的纠缠在一起,我们才会不知所措,一个小问题或许可以很轻松的被解决,但是很多的小问题就会变得不同。或许是量变引发质变的规律促使,这些问题的组合会变得异常的复杂,难以入手不知道该如何去解决这个问题。这也是编程开发项目中最容易犯的一项错误,就是没有完全弄清楚每个问题的要点,就开始编写程序,这样不仅没有效率,而且极容易陷入错误之中。这些小问题的组合就是编程的焦油坑,一旦陷入,那将必然是费时又费力的修改中。
另一个在本章提出的观点就是程序产品的成本几乎是程序的九倍。在读到这里时要明确一点,就是程序和程序产品是两回事,程序是一些编写的代码而已,但这并不是程序产品。所谓的程序产品,是可以交付使用的程序,二者有着很大的区别,同是这也是两者的成本区别所在。我们所想要的是程序产品而非程序,这是每一个程序员都要明确的到道理,把程序变成程序产品的过程就是程序员所奋斗的方向。在这篇文章中指出,仅仅只有少部分的程序员团队可以做到这样的一个转变过程,而绝大多数的程序员团队都在这个过程中困在了一个又一个“焦油坑”之中。进一步说明了避免焦油坑的重要性。
那么编程真的是完全枯燥的嘛?显然不是,编程的枯燥主要是源自于程序员追求完美的思想以及在编程的过程中没有自己的控制权利,完全是按照别人的需求进行代码的编写,这便是程序编写的枯燥所在。但是如此枯燥的工作当中仍有乐趣在其中,首先就是创造性的开发结果,伴随着编程的一步一步的实现,在最后看到自己的程序可以顺利的测试出所有的功能,那便会有一种喜悦感。程序员的快乐就是如此的简单,只要自己的程序能够顺利的运行出来,那便是一件令人兴奋的事。对此我深有感触,在一次的学习过程中,我做出了带有自己创新性的一些网页和一些自己尝试性做出来的一些小技术的应用,如果这些东西都能按照一开始的预想的一样完完全全的展现在电脑上,那真的是会有一种喜悦感出现。看到自己的一些小技术的实现的时候,更是会给人一种自身形成的动力,支持着程序员继续进行这样的一种工作,同时这也是一个良性循环,支持程序员在这样的工作中坚持。