软件工程《构建之法》悦读总结

来源:互联网 发布:西澳大学知乎 编辑:程序博客网 时间:2024/04/29 01:28

软件工程《构建之法》悦读总结

中国科学技术大学软件 + 万辉 (JG14225011) + 原创(其中部分摘自《构建之法》)

引子

很幸运的能够在学生期间读到这样一本中国作者写出来的好书,感谢孟老师,感谢让我知道这本书的同学,并把这本书强烈推荐给大家去读

第一部分:全书框架

全书从中国软件工程的教育现状出发,提出并付出实践了一次大胆创新的改革,给老师和助教提出中肯的建议。1、师生沟通、教学相长;2、规则公开且简明;3、循序渐进;4、模拟实战;5、构造学习环境。邹欣老师提出软件=程序+软件工程,可见软件工程对于软件领域之重要,并分析了计算机科学与软件工程的关系以及国内的发展现状,接着谈到个人的技术成长还有开发流程,从软件工程师个人的角度提供了中肯的发展建议,并用玩儿魔方为例告知读者如何去实践提高自己的技能,以及那什么方法去评判技能的精通程度。接着话题一转开始从两人结对编程提高到团队编程,分析了在团队模式下的瀑布模型和敏捷开发方法。
邹欣老师结合自己在微软的工作,分享了微软在团队实现软件工程思想的原则和方法,以供读者借鉴和模仿,并分析和比较了各种软件工程原则的异同,接下来邹欣老师立足于软件的开发流程从需求分析、项目管理、典型用例和用户场景、软件设计与实现、用户体验、测试和质量保证等方面针对当下中国国内软件行业的发展现状,并重新定义了创新和理论上创新。最后提供了在软件开发过程中的人和绩效的审核办

第二部分 语句摘录和感悟

1、一个晚上是搞不出可以实用的软件的,也无法实践软件工程的各种理论,因此需要设立检查点,需要截止期限
(个人发现当团队编程模拟真实的场景时,便会想到要实践一下软件工程中的理论,当工程即将结束,发现的bug让人纠结时才会倍加感到软件工程之重要)

2、知识体系是构建出来的,而不是接收到的。与其灌输知识,不如让学生自己构建。
(个人觉得这是很优秀的教育思想,用在学习上效率提高不少)

3、人的认知模型改变得非常缓慢,搞那些速成的、疯狂的、喊口号的培训未必能改变人的认知模型。提问能帮助构建知识体系,所以要思考、辩论。
(自主学习)

4、对于软件工程这样的科目,成年人的有效学习方式并非独自练习,而是进入到相关的情景(真实的软件开发环境),成为相关团队的一部分,向各种水平的同伴学习,在各种情景中实践、提问、总结,从而掌握有广泛应用范围的知识。
(此处作者在章节末尾处还附带了一个连接,详细讲述了个人经历和体会,书中其他很多地方都有类似资源连接,读来让人感到作者深厚的积淀和睿智的思考)

5、软件工程师连一对一的合作都做不好,不能有效地去影响同伴,让合作双方都能从中受益,提高水平,那大家就别扯什么团队合作这些事儿了。
(习惯了独自一人面对机器,读了这话猛然发现自己的做法导致了沟通上的缺陷)

6、问题早出现比晚出现好很多,每人每天高效率工作的时段不超过3-4小时
(我一直在对自己的时间分配做详细统计,统计自己每一天哪些时间段在哪里做过什么,发现提出休息和走神的时间,自己高效的时间也就3-4小时,但是当自己真的喜欢和投入自己感兴趣的事情的时候可以超过这个时间结界)

7、什么是技能呢?巴克斯顿说技能的反面是“解决问题”,一个“不精通”的面试者的编程过程实际上就是一个“解决问题”的过程
(这里刚开始我觉得很困惑,读完后回想了一天,顿时觉得太有道理了,我之所以会在使用java编程时遇到众多的问题且层出不穷恰恰是不精通技能的表现症状)

8、怎么提高技能呢?答案很简单,通过不断的练习,把那些低层次的问题都解决掉,变成不用经过大脑的自动操作,然后才有时间和脑力来解决较高层次的问题
(我觉得这是非常有用的建议,个人之所以会觉得算法程序变成C程序困难还是因为编程太少,但是个人以为这与精力分散有关)

最后上传一张图片:邹欣老师的构建之法






0 0
原创粉丝点击