构建之法阅读笔记1

《构建之法》这本书讲述了理论与实践相结合,个人项目和团队项目的建议都有涉及。指出了我们要在实战中成长,只有不断练习才能不断提高自身能力。

第一章概论先说明了软件=软件工程+程序;程序=算法+数据结构。通过一个简单的例子来说明程序扩展到满足各种功能的应用软件到最后的软件服务。(例子:王建民老师说过的二柱子四则运算)引申出来软件工程的核心部分构建管理、源代码管理、软件设计、软件测试、项目管理及相关内容。最后得到一个推论就是:软件=程序+软件工程;扩展推论就是:软件企业=软件+商业模式。介绍了软件开发的不同阶段:玩具阶段、业余爱好阶段、探索阶段、成熟的产业阶段(此处举例航空业); 软件工程的特殊性(复杂性,不可见性,复变性,服从性,非连续性)以及软件工程与计算机科学的关系。看完第一章更加坚定了要好好打基础,程序是基本功,一切都是要在程序这个基础上得来的。

第二章个人技术和流程分为单元测试,效能分析工具,个人开发流程和实践。明白了好的单元测试应该用最基础的东西来验证;测试过后不应该改变机器状态;测试要快讲究效率,简洁但要保证其正确率更应该覆盖所有代码路径;而且单元测试也应该不断维护和更新。效能分析中一些名词解释应该知道(调用者,被调用者,调用关系树,消逝时间)。个人开发流程PSP。实践的细分以及回归测试(手动+不断测试+不断测试Bug)。

第三章软件工程师的成长包括个人能力的衡量和发展和软件工程师的职业发展以及技能的反面。要想成为初级软件工程师必须具备软件开发方面的知识,提升技术技能、内核调试器的掌握;积累问题领域的知识与经验;对通用的软件设计思想和软件工程思想的理解;提升职业技能(多去学表达技能;与人沟通交流的技能;与人合作的技能);最后还要有实际成果(自己独立完成的成果)。软件工程师的职业发展:考级;Steve McConnell版本;大公司版本;还有对自己的自我评估。在技能的反面这方面认识到了可以抄的东西终究不是自己的,只有自己真正掌握了才能是自己的;你可以抄别人也可以抄,就没有什么自己独特的地方,也就是说自己没有拿不出手的技能。而现在正是需要独立思考的时候,一味地抄只会逐渐失去自己思考的能力,更谈不上什么创新。

posted @ 2024-05-09 22:45  涨涨涨张  阅读(1)  评论(0编辑  收藏  举报