第一次接触这本书是在老师的推荐下,据说作者是一个出自微软的技术大牛,敬仰之情当时油然而生。读完前三章之后有很多感悟,确实在某些方面冲击了以前的一些思维观念,收获颇多。
我很赞同作者在书的正文之前提到的老师和同学之间的关系应该是健身教练与健身学员的观点。老师以他丰富的时间和理论去引导学生,而真正的实现过程得我们学生自己亲自完成,在实现的过程会遇到很多问题,自己也要想办法解决,这样自己才能有技能的提升。书中也有提到对个人与团队在项目中应该建立的评分体系以此来衡量个人的贡献值,缺失感触很深。
在第一章中提到软件=程序+软件工程感觉很模糊。后来想想好像是这么个道理。程序只是整个软件结构里的功能实现部分,而软件工程是对软件需求,设计,开发,测试,发布,运营,维护的综合管理流程。我虽然未曾参加过一般软件产品的开发工作,但对书中提到的软件产生的几个阶段的描述却很详细。在单元测试章节中提出单元测试应该由最熟悉代码的人来写,应该覆盖所有代码路径,应该集成到自动测试的框架中,必须和产品代码一起保存和维护提高了我对单元测试的理解。回归测试(从正常工作的稳定状态退化到不正常工作的不稳定状态)的提法确实是第一次听说,毕竟以前没接触过软件工程这门课。以及提出的效能分析工具VSTS向我展示了代码在优化前后的时间差异。
对于自己在编程方面能力的提升应该首先建立一张工作过日志表,每天对自己的工作量进行评估,一段时间后知道自己的工作能力和需要加强的地方。另外书中的一边博客的网址https://news.cnblogs.com/n/513177提到个人对编程的态度与日后的成就的关系很是精辟,也改变了我以前的观点(曾经觉得敲几年代码后就不敲了看能否改行)。在以后的日子里我要朝着成为一个优秀的工程师而努力。最开心的事就是别人付钱去做我自己喜欢的工作。
我的问题是1.阅读别人写的很多代码时就有一点不镇定,可能和我看的代码少有关,应该怎么克服?2.如果对一个需要解决的问题开始不会,后来经过上网查资料或者书籍知道了解决过程,这是否意味着我已经会解决这个问题了,有没有抄袭的嫌疑?