这是一篇算是关于这本书的读后感吧!文笔不好,欢迎拍砖。
记得初次看这本书时还是刚参加工作几个月的时候,随便的翻了翻,从头到尾都是文字描述,看不到实质性的编程理论和技巧方法之类,我就没耐心的深入看下去。直到现在工作快两年了,再次看见这本书,虽然还是有一些刚刚毕业时候的年少气盛浮躁的性情,但还是硬着头皮好好的看完这本书。我不得不为两年一年多前的自己的行为感到惭愧甚至看不起鄙视当初的自己,太无知了。现在想想当初如果好好看完这本书,也许现在的我至少比此时的我进步更大,更强,走了太多的弯路,浪费了太多的时间和精力,一直徘徊在进入软件开发者行列的入门大门,直到现在才感觉自己才是入门级的水平。从一个过来人的角度推荐初学者或准备从事软件开发的好好看看这本书,耐心看完你会从中找到自己的路线。
在本书中软件开发者主要分为三个层次:学徒者、熟练工、师傅
做软件学徒意味着什么 “我猜它基本上是指拥有这样一种态度:对于已经做完或者正在做着的事情,永远都有一种更好、更聪明或更快的方法来完成它。而学徒期就是这样一种状态或过程:不断演进并寻找更好的方法,找到能使自己学会那些更好、更聪明或更快方法的人、公司和情景。”当然这是Marten Gustafson说的,当然名人说的有道理,我们一般人通俗一点就是这种对自身的关注和提高自身技能的要求。
做熟练工意味着什么 熟练工关注如何构建一些能彰显其技艺进步的更大的应用程序;在不同的项目和师傅之间移来移去,力求拓展其技艺组合的广度和深度;力求提升自己在社区中或团队中的位置;并努力为成为师傅做好准备。
做师傅意味着什么 “达到技能和技术的炉火纯青”,也就是说精通,精通意味着行使学徒或熟练工的所有职能,同时还要关注如何将行业向前推进。
这是每个软件开发者需要经历的层次,当然都是要从学徒开始。学徒需要有一个空杯心态,走过漫漫长路才能到熟练工,还要对自己有个准确的自我评估,恒久学习最终才能师傅。开始进入你的学习之旅吧!!!
其中有几句我比较喜欢的名言,与大家共勉:
技重于艺
我愿意将编程说成一种技艺,技艺本身也是一种艺术,但它不是美术。技艺的意思是:使用可能带有修饰性的手法来制作有用的对象。美术的意思则是制作东西纯粹为了使之美丽。——Richard Stallman在"rt and Programming“中
空杯心态
你没有看到杯子已满茶水正往外溢吗?
正视无知
如果你从来没有一败涂地,那很可能你也没尝试过有价值的东西
书中提到比较值得一看的书:
- 《Refactoring to Pattern》 —— 《从重构到模式》
- 《Design Patterns》—— 《设计模式》
- 《Refactoring》—— 《重构:改善既有代码的设计》
- 《code Complete》—— 《代码大全》
- 《the Pragmatic Programmer》——《程序员修炼之道——从小工到专家》
- 《The Psychology of Computer Programming》——《程序开发心理学》