201571030111 《构建之法——现代软件工程》(读书笔记 一)

  初次阅读这本书,就觉得这是一本非常接地气地讲《软件工程》的书,里面的内容通俗易懂,用大量的实例项目,生动有趣的语言讲解知识,进而对这门课程产生了很大的兴趣。以下是我速读《构建之法——现代软件工程》之后产生的几点疑问:

第一章  概论

  文章在开篇中写道,“我成为了一名职业程序员,但是我发现所有的算法别人都已经实现了,我只要调用就可以。似乎我们公司的软件与数据结构、算法的关系都不大。那我当初辛辛苦苦学习的数据结构和算法有用么?如何区分一个好的程序员和不好的程序员呢?”。

  Q1:好的程序员的评定方法是什么?

  我查阅资料有看对知识的考察,对过往项目的理解,对程序本身的理解,对动手写程序的能力等方面的评定方法。我在思考自己写的程序里没有BUG是不是也可以作为一个程序员是否好的标准。

  当我看到P15的时候就发现,是否是BUG取决于用户和开发者的不同角度,那么就是说好的程序员还要满足用户的需求,但是又出现了一个问题,如果你实现了用户不需要的功能算不算BUG ?所以称为一个好的程序员是又很多因素的,希望在本学期的课程中能领悟的深刻一点。

第二章  个人技术和流程

  Q2:这一章讲了很多专业性的概念,如单元测试,回归测试,效能分析,个人软件开发流程(PSP)等。单元测试需要用到VSTS软件,文中简单介绍了它的使用方法,怎么才能做一个好的单元测试?;还有讲回归测试是在单元测试的基础上做的测试,但书中没有讲到具体的方法,如何做?;PSP的具体流程?这些在书中没有具体的操作过程,所以不是很懂,希望通过老师的讲解能进一步的理解。

第三章  软件工程师的成长

  在本章中,主要讲解了软件工程师到底是怎样的一群人,一个合格甚至是优秀的软件工程师究竟是怎样衡量出来的呢?随着一个个方面的剖析,实则在告诉着我们究竟是需要在哪方面去培养我们自己。其后列举的多条自我晋级之路无疑是条条大道,或许现在我还无法果断的言明我就是要选择其中的种方法,但这些都是些好的参考,或许我们都能参照其中的某些提醒,培养出属于自身的核心竞争力。

  Q3:本章中多次提到了核心竞争力,但也如书中所言——口诀是公开的,大家学有同样的东西,到底得学会些什么才算是有了属于自己的核心竞争力呢?

第四章     两人合作

  本章P76 中提到程序员要用很多时间去完成实现程序的主要功能后的错误处理部分,要用断言来验证参数的正确性。如果你认为某事可能会发生,这时就要写代码来处理可能发生的错误情况。如:

......

p=AllocateNewSpace();//could fail

if(p==NULL)

{

     //error handling.

}

else

{

      //use p to something

}

  Q4:仅仅从书上写的代码,我是否可以理解成断言就是判断语句?

第16章  IT行业的创新

  本章强调了IT行业中创新的重要性,提出了八点思考,创新的时机和创新的招数等。我想我们大家都喜欢创新,而好的想法就会赢。那么怎么才会有好的想法?先发者可以赚得新眼球,后发者可以储备更多的纠错过程。那我们究竟是当后发者还是先发者好?

  Q5:作为一个大学生,我们如何能更好的做到IT的创新思想?

  

  

 

  

  

 

原文地址:https://www.cnblogs.com/haoytlearnblog/p/8566436.html