《构建之法》阅读笔记01
从今天开始,要开始写《构建之法》的阅读笔记了!
一、概论
“程序=算法+数据结构”这句话听说了好久,而 软件=程序+软件工程。一个程序的开发很不容易,要按照用户的需求修改,编写源代码,有时需要很长时间及多次修改。软件的开发活动(构建管理、源代码管理、软件设计、软件测试、项目管理)相关内容是软件工程的核心部分,而软件工程决定了一个软件的质量。软件开发的4个阶段:玩具阶段、业余爱好阶段、探索阶段和成熟的产业阶段。
软件工程是什么?软件有其特殊性(复杂性、不可见性、易变性、服从性和非连续性),计算机理论的进展会帮助软件工程;软件工程的进展会帮助计算机科学家更有效地进行实验和探索,软件工程的知识领域蕴含丰富,软件工程的目标——创造“足够好”的软件,简单点说:就是BUG少……
二、个人技术与流程
大部分软件是多人合作的,每个程序员负责自己的模块,我们要学会对自己所负责的模块做单元测试,测试自己所写的代码;也要对自己的代码进行效能分析,一个程序越快越好,所以要对自己所写的代码算法进行优化,个人开发流程也是一个工程师所需要掌握的能力。
三、软件工程师的成长
个人能力对于一个工程师是很重要的,个人能力的衡量:项目大小、花费时间、质量和按时交付;与发展:软件开发的相关知识和技术技能、积累问题领域的知识和经验、对通用的软件设计思想和软件工程思想的理解、提升职业技能、实际成果。我们还需要对团队负责,交流、说到做到、接受团队赋予的角色并完成工作、全力投入等等。
职业发展,考级之路是我们最直接证明自己实力的方式;Steve McConnell版本,对知识的掌握分为入门、熟练、带头人、大师,工程师又有8个级别;大公司版本,有初级、中级、高级、首席软件开发工程师;自我评估。
技能的反面——解决问题,我们需要做到通过不断练习,把那些低层次的问题都解决了,变成不用经过大脑的自动操作,然后才有时间和脑力来解决较高层次的问题。
个人感受:
1.我过去在书写代码时,缺少一些注释,语法错误虽然少,但是逻辑错误还是会有的。
2.缺少注释对其他人阅读自己的软件不好,自己复查时也会麻烦很多,也没有掌握必要的检测方法。
3.以后会坚持书写注释,学习检测方法。
我喜欢软件工程独特的挑战和魅力,我会认真学习的,多练习,熟练掌握基本的知识,成为一名合格的软件工程师。虽然阅读笔记写的少了点,但我还是认真看完的……