构建之法阅读笔记01
2017.1.15
1.1 软件 = 程序 + 软件工程
几乎所有程序员都知道“程序 = 数据结构 + 算法“这句名言,但是在实际的学习和工作中,也有不少人提出了疑问。例如:
- 我写了二叉树的遍历算法实现,在这里,二叉树是数据结构,遍历的实现细节是算法。C程序就是结果,但是这个程序有什么实际的用处呢?在Java和其他一些语言中,似乎没有指针,那么我可以不必了解二叉树么?
哪些软件行业赖以生存的“软件“,程序员用来安身立命的“程序是什么“?
阿超的例子让我们看到客户们对阿超的需求从一个简单的程序,扩展到一个满足各种功能的应用软件,在扩招到一个能够保证维修的软件服务。
软件开发的不同阶段:
- 玩具阶段。
- 业余爱好阶段
- 探索阶段
- 成熟的产业阶段
软件工程是什么,软件工程是吧系统的,有序的,可量化的方法应用到软件的开发,运营和维护上的过程。软件工程包括下列领域:软件需求分析,软件设计,软件构建,软件测试,软件维护。软件工程和下列的学科相关:计算机科学,计算机工程,管理学,数学,项目管理学,质量管理。软件人体工学,系统工程,工业设计和用户界面设计。
个人感悟:
- 我过去是怎么做的
过去我任务软件工程单纯的功能算法的累积。
- 结合书中所讲,说明为什么不好
软件工程并不是单纯的算法的累积,而是把系统的,有序的,可量化的方法应用到软件的开发,运营和维护上的过程。,思想就完全不正确。
- 提出一个方法,避免再次掉入陷阱。
牢牢的将软件工程的概念计入心中,在开发过程中时刻注意,养成良好的习惯。