首页 > 代码库 > 构建之法(概论,个人技术和流程)

构建之法(概论,个人技术和流程)

构建之法这本书第一章给我们讲述了软件以及软件工程的含义。

软件=程序+软件工程。书中用编写出加减法题目的程序的例子生动形象的说明了程序,软件,工程之间的关系,以及软件工程的一些概念。程序,在这里指的是源程序,就是一行行的代码。他们是建立在数据结构上的一些算法。但软件工程的内容远不止这些。软件工程的核心部分包括和软件开发活动(构建管理、源代码管理、软件设计、软件测试、项目管理)相关的内容。广义上的软件工程也包括用户体验、用户界面设计等。所以,一个推论是:软件=程序+软件工程,一个扩展的推论是:软件企业=软件+商业模式。软件开发的包括4个阶段:玩具阶段、业余爱好阶段、探索阶段、成熟的产业模式阶段。书中还系统的介绍了什么是软件工程:软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。软件工程包括下列领域:软件需求分析、软件设计、软件构建、软件测试和软件维护。软件工程还和很多学科相关:计算机科学、计算机工程、管理学、数学、项目管理学、质量管理、软件人体工学、系统工程、工业设计和用户体验设计。在了解软件工程之前,书中先介绍了软件的含义:软件是可以运行在计算机及电子设备中的指令和数据的有序集合,以及软件的特殊性:复杂性、不可见性、易变性、服从性、非连续性。而软件工程中“工程”二字也大有来历,人们把下面的活动称之为工程:创造性运用科学原理,设计和实现建筑、机器、装置或生产过程;或者是在实践中使用一个或多个上述实体;或者是实现这些实体的过程。

第二章个人技术和流程给我们介绍了想要成为一个合格的软件工程师要学会的基本方法。单元测试,回归测试和效能分析。书中用小飞和阿超编写一个单元测试的例子来给我们说明了一个好的单元测试的标准。单元测试应该在最基本的功能/参数上验证程序的正确性;必须由程序的作者来写;测试过后要保持机器的状态不变等等。效能分析是每个程序员都梦想的事,让自己的程序跑的又快又好。书中用一道分析文件中各个词出现的频率的题目来举例说明效能分析的方法和作用,教我们怎样进行程序优化和效能的提升。第二章在最后还讲述了个人开发的流程,PSP的目的是记录工程师如何实现需求的效率,而不是记录顾客对产品的满意度。

通过这两张的学习,我对软件工程有了进一步的认识,也对这本书的学习有了浓厚的兴趣,希望在之后的学习中能对软件工程的理解更加深刻。

构建之法(概论,个人技术和流程)