在老师的强烈推荐下, 我花了两天时间略看了林锐博士的《软件工程思想》这本书,尽管不是字字斟酌,但读完后还是收获颇丰。这本书不过百页,总体看来,作者文笔不错,文风幽默又略带自谦,这是我很喜欢的。在读到作者形容程序员的生活和工作已融为一体,尽管单调却不乏味,还能独享孤独一处时,作者写到,“有诗为证:我编程三日,两耳不闻人声,只有硬盘在歌唱。”我不禁笑喷。哈哈~~却实是很好玩一人,心里顿时对这本书的下文来了兴趣。
仔细想想,我国当今的程序员队伍虽然强大,但以木讷不善言谈者居多,而此书作者能够将此书写得此般精简透彻,幽默风趣,足以想象他的其它作品的魅力。以后还要继续拜读他的其它作品!此书核心讲的是设计,贯穿全文的是思想。共八章,后面附录“大学十年”。第一章“软件工程基本观念”;第二章“程序员与程序经理”;第三章“项目计划与质量管理”;第四章“可行性分析与需求分析”;第五章“系统设计”;第六章“C++ 面向对象程序设计”;第七章“测试与改错”;
读后感 第八章“维护与再生工程”。此书先讲述了软件工程的基本观念,从宏观上探讨了软件工程。第一章讲述软件工程的目标和常用的软件工程模型,软件开发的基本策略:“复用”、“分而治之”、“优化——折衷”,有助于指导实践者选择方法和产生新方法。后面取材于早期软件人员比较幼稚的想法,例举了一些不正确的观念,可以让初学者引以为戒。接着让读者了解程序员的那些事,并谈到真正程序员具有的四个秉性:诚实,简单--实用主义,爱憎分明,工作单调但不乏味。
真正的程序员会对自己喜欢的工作一直保持兴趣,生活和工作已融为一体,尽管单调却不乏味,还能独享孤独。优秀的程序员没有理由不让人喜欢,他们远比怪癖来得可爱。这着实是对程序员的一种勉励。此外,作者指出一个好的程序经理应该技压群雄,博学多才,更应有人格魅力,无论何时,用实力征服他人是硬道理,而程序员经理在管理上要“以身作则”、“公正待人”,唯有做到这些,别人才会信服你,团队才有凝聚力开发出优秀的软件。程序员在编程过程中,难免会遇到挫折,所以要向错误与失败学习,冷静地分析问题,找出问题的内因与外因,而不能目光短浅,力求深刻才会有效。
程序员如何提高综合素责?倘若自己资质一般,但愿意亡羊补牢,力求学得更深更广,最终总会有意想不到的收获。最后疏导,程序员不该因为幼稚而显得单纯,应该是成熟了才变得单纯,才配得上这个充满活力的职业。不该因为幼稚而显得单纯,应该是成熟了才变得单纯,我想做人也是同一个道理。紧接着是项目计划与质量管理,项目计划的准则是要提供一份合理的进程表,让所有开发人员任务明确、步调一致,最终共同准时地完成项目。
所以软件的项目计划重在“准确”“实在”,提高质量是软件工程的主要目标。但又因为软件开发是一种智力创作活动,很难象传统工业那样通过执行严格的操作规范来保证软件产品的质量,因此程序员必须了解软件质量的方方面面(称为质量因素),如正确性、性能、易用性、灵活性、可复用性、可理解性等等,才能在进行系统设计、程序设计时将高质量内建其中。软件的高质量并不是“管理”出来的,实质上是设计出来的,质量的管理只是一种预防和认证的手段而已。关于软件的可行性分析与需求分析,软件领域的可行性分析主要考虑四个要素:经济、技术、社会环境和人。
对于系统设计,第五章讲述了系统设计的四方面内容:体系结构设计、模块设计、数据结构与算法设计、用户界面设计。并将软件系统比喻为人体,体系结构就如同人的骨架;模块就如同人的器官,具有特定的功能;数据结构与算法就如同人的血脉和神经,它让器官具有生命并能发挥功能。数据结构与算法分布在体系结构和模块中,它将协调系统的各个功能;用户界面就如同人的外表。
在进行系统设计时,要深情地关注软件的质量因素,如正确性与精确性、性能与效率、易用性、可理解性与简法性、可复用性与可扩充性等等。即使把系统设计做好了,也并不意味着就能产生好的软件系统。在程序设计、测试、维护等环节还要做大量的工作,无论哪个环节出了差错,都会把好事搞砸了。内聚和耦合是密切相关的,与其它模块存在强耦合的模块通常意味着弱内聚,而强内聚的模块通常意味着与其它模块之间存在弱耦合。模块设计追求强内聚,弱耦合。
第六章,C++面向对象程序设计。这章讲叙了 C++面向对象程序设计的重要概念,如类与对象,继承与组合, 虚函数与多态,良好的编程风格等,内功深厚的武林高手出招往往平淡无奇,同理,编程高手也不会用奇门怪招写程序。良好的编程风格是产生高质量程序的前提。再到后面的new、delete与指针,const的使用。第七章主要是测试与改错。第八章讲的是维护与再生工程。
读后感
一个好的项目,设计至少可以占到百分之五十甚至更多。林锐的文章当中,自始至终在灌输两个思想,一个是高内聚低耦合,一个是设计应当以行为为中心而非数据为中心,业界的话就是应当以需求为中心。书的最后,林锐博士更是讲叙了自己的“十年”大学生涯,生动而精彩,让人回味无穷。所以,我想以作者的肺腑之言结束我的这篇读后感:一、主动去创造环境,否则你无法设计人生。二、生活和工作要充满激情,否则你无法体会到淋漓尽致的欢乐与痛苦。 读书笔记