林锐软件工程思想前三章阅读笔记

阅读随笔

在本篇的序中我看到了这样一个词“读书明理”,也是我第一次对这个词有了新的深刻认识,也明白了读书人为了什么!读书就是要学会做人的道理,读书就是使人面对生活更加积极能够为社会创造属于自己的价值,位卑未敢忘忧国是一句很值得思考的句子!今天看了本书的第一章,软件工程的基本概念,作者也大概了的叙述了软件工程的发展和软件工程的特点。软件工程的目标是质量和效率。然而效率是和质量他们之间又有着必然的关系。效率是软件生产商所追求的,而质量则是用户所追求的的。因为这都代表着各自的利益。但是经过作者的分析之后我明白了作为一个合格的优秀的程序员质量才应该是其第一追求,追求质量归根结底还是追求效率,因为质量如果上不去,后期就需要大量的维护需要花费更多的时间!而且这里面讲的一些软件开发基本策略还是挺受用的,比如作者讲的复用,只有那些聪明的人才能够很好的去复用前人的成果,然后还能在其基础之上进行创新。还有作者讲的分而治之和优化折衷都是我们在进行编程时值得借鉴的东西!对于人们在在编程问题中存在的争论和误解作者也给出了自己的观点。再好的书籍也不能帮我们解决所有的问题,因为计算机更新的很快,好的编程环境只是我们编出好程序的必要因素,但他不是充要条件。要想编出好的程序还需要好的编程习惯和好的编程基础和能力!在我们自己的编程过程中要脚踏实地一步一步来,不要去耍小聪明。你的成果是要和别人交流沟通的,不要去盲目的去崇拜哪种语言,因为他们各有千秋,难分高下。记得尽可能的去做好用户的需求分析这样才能为以后的工作省去很多

麻烦!

今天拜读了本书的第二章,对作者聊得的那些问题也颇有感触。程序员和程序经理是决定软件命运的关键。如何才能做一个好的优秀的程序员呢?如今软件行业大军中有上百万的程序员,可是这些程序员中又有那些是正牌军,那些是靠那些速成教程而来的游击队呢?要做一个好的程序员就应该具有以下的秉性。做人做事儿要诚实,一个好的程序员每天都要去钻研根本没有时间去骗人和被人骗,而且勤奋的程序员在调试过成千上万的程序bug之后,已经深受“诚实”的教育。简单实用主义也是好的程序员应该具备的秉性。好的程序员从来不整那些虚头巴脑的事情,他们一是一,二是二。一个好的程序员也要爱憎分明,程序员大都喜欢技术挑战,不喜欢测试和维护。他们喜欢和高手在一起工作,不喜欢和臭棋佬下棋,因为那样棋会越下越臭。程序员也从来不会拉帮结派,去耍政治手腕。除此之外程序员还应该喜欢自己的简单而不乏味的职业,应该与自己的职业融为一体,独享孤独就像诗里面说的那样:我编程三日,两耳不闻人声,只有硬盘在歌唱。了解了程序员那么程序经理应该是一个什么样的人呢?程序经理是一个企业得以发展的生力军,是像比尔盖茨说的那样的聪明人才能胜任的。首先程序经理应该是队伍中技术最高的那个人,因为程序员都有一股傲气,如果你不能技压群雄,那么别人只会表面上顺从于你,可是心里面是不会服你的。而且程序经理还要做最多最难得工作,你要能在很短的时间内完成别人不能完成的工作然后腾出时间去管理别人。在管理别人的时候不要把自己的当成是一个官,而是要时刻想着自己肩上的责任。只有这些还是不够的,程序经理还要有自己的人格魅力。软件开发是智力创作过程,你不能只指望着通过规章制度来生产好的作品。作为程序经理首先你要以身作则,因为员工都会向你看齐的。我们一直有一个错误的认识那就是当你升为软件经理后就不用编程了。其实这是错误的。   Windows NT项目经理娄.雷罗里和Word的项目经理克里斯.彼得斯就是很好的例子。作为项目经理你还是奥继续编程,不能给自己找借口摆出一副高高在上的样子。经理和队伍的建设其实都需要公司自己去从最低层的员工开始去培养,不要对程序员有偏见,以为他们只会和机器打交道。其实不然,因为他们既然能学会那些复杂的数学逻辑和鸡生蛋蛋又生鸡这些错综复杂的问题,你说别的问题对他们来说还难吗?只不过使他们没有接触而已,好的程序经理都是从程序员而来的。一个队伍要想健康的发展下去就应该有明确的等级制度,但是这些制度并不影响自由和民主。作者还讲了向失败和错误学习,不管是生活还是工作中我们都要向失败和错误学习,让我们在有限的健康年华里,少犯错误,少失败,多做些对社会对人民意义的事情。很多事情如果你不去找借口你就会发现其实错误的根源就是我们自己。但是很多时候我们都太爱慕虚荣导致无法去真正的面对自己。所以当我们在生活照中面对挫折时要冷静的思考,仔细的去分析问题,找出问题的内因和外因然后再去解决问题。作者讲的傻子和骗子的故事也是很有趣而且也是很有道理的。作为一个优秀的人我们要不断的提高自己的综合素质,上帝对我们每一个人都是公平的。他不会让你优秀的找不到谦虚的余地。所以我们要及时发现自己的不足,让扬长和补短并行。只有这样我们才能不断的提高自己,让自己变的更优秀。向作者这么优秀的人还在反省自己的不足我们又有何理由不去反思呢?作者在第三章给我们讲述了项目计划和质量管理,在下小结里面有这样一句话道出了高质量软件的真谛“高质量的软件是设计出来的,不是管出来的。”对一个软件项目来说最难做的就是项目计划了,在这里作者也打了一个很形象的比喻,做项目计划就像是给还未出生的婴儿写传记那样不知该从何下手。但是项目计划是软件开发过程中很重要的一部分。他贯穿软件开发过程的各个环节,一个好的项目计划是项目能够顺利进行的关键。做项目计划就是要使我们知己知彼,合理安排项目的进度。你只有了解了项目的规模,难度系数与时间限制,才能合理去安排人力,财力和时间等项目资源。其中项目资源中人事最为重要的资源,其次是可用的软构件,最后是软硬件环境。但是这些资源都是项目的必要条件,缺一不可。一个好的进度安排也是项目能够顺路进行的关键,很多时候我们可能会很难跟我们的进度的安排  ,所以我们在制定进度安排时要考虑到多种因素。进度表中要留合理的缓冲时间,将缓冲时间用到不确定的事情上去,这样就为跟上进度提供了条件。作者在这里提出的零缺陷质量管理观念有两个核心的内容,意识高目标,而是可执行的规范。   人在做事情是会有很多不确定的因素,很难达到100%的目标,但是你要高标准的要求自己。如果你对自己的目标是100分那么你就可能得80分,如果你对自己的要求是60分你就可能得48分。这些在我们考试中也是能够深刻体会到的,那些期望得到好成绩的同学往往不能如愿。而那些想蒙混过关的学生往往会挂科!这就是高目标理论。所谓的可执行性规范就是,不管你做什么都没有完全可以照搬照抄的规范。所有的规范都有他适用的条件,他只能给你提供借鉴,你可以在其基础之上根据自己的需求进行改进,否则会适得其反。同时影响软件的质量因素也有很多,例如正确性与精确性,性能与效率,易用性,可理解性与简洁性,可复用性与可扩充性。在提高软件质量时,我们要综合考虑各个方面,争取使其尽量满足所有的要求,而且要有侧重点。对于这些影响因素我就不在这里一一的叙述了,有兴趣的可以参考本书第三章。软件的质量好坏谁说了算呢?肯定是质量检查完了之后才能下结论,那么什么时候进行质量检查呢?项目完成之后吗?其实不然,在项目进行的过程中就要进行质量检查,质量检查也是贯穿整个项目过程的。质量检查的主要内容有两点一是合不合格?能打多少分?二是给出建议,对为什么好为什么差给出分析,以便改为改差为好,好上加好。但是就像作者说的那样好的软件不是靠管出来的,更不是依赖质量检查而来的。好的软件还是要靠程序员了解软件质量的各个因素,提高自身的设计水平。
posted on 2015-03-15 11:10  简简单单爱  阅读(151)  评论(0编辑  收藏  举报