您的位置:首页 > 其它

【读书笔记】《构建之法》第一章

2017-09-12 08:54 281 查看

写在前面:

这份笔记就是一个导读作用,所以只有第一章。同学们应该简单看看后,买一本《构建之法》。在大一一入学就接触这些,是很有帮助的。

第一章:概论

1.1软件=程序+软件工程

之间的关系

软件=程序+软件工程

程序=算法+数据结构

个人结论:算法和数据结构固然重要,但是你一直执着于竞赛,你是没办法做出软件的。对于大部分人,竞赛还是参与为主。

软件工程的核心部分:构建管理、源代码管理、软件设计、软件测试、项目管理

由此推论

软件企业 = 软件+商业模式

程序(算法、数据结构)是基本功,但是在算法和数据结构之上,软件工程决定了软件的质量;商业模式决定了一个企业的成败。

软件开发的不同阶段

玩具阶段

业余爱好者阶段

成熟阶段

成熟的产业阶段

软件工程是什么?

软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程

软件与人类制造出来的其他产品相比,有许多共性——他们都是解决某种需求的——所以说需求这件事,还是很重要的

软件开发的难点:

复杂性

不可见性(你没办法看到机器内部怎么跑的,你只能通过日志之类的。。。)

易变性(如何正确修改软件)

服从性(服从硬件,服从用户需求)

非连续性

软件工程和计算机科学的关系

计算机科学中的理论研究部分,大多可以从形式上证明,与数学、离散数学、数理逻辑密切相关;计算机科学中与时间相关的部分,都和数据以及其他学科发生关系;软件工程则和人的行为、现实社会社会的需求息息相关。

孰优孰劣?

在任何科学领域中,都有偏理论的子领域和偏应用的子领域,当偏应用的领域得到长足发展之后,就会更多地被大家熟知,甚至成为一门独立的学科,这并不说明相对应的两方面有高低或优劣之分。

计算机理论的进展会帮助软件工程(例如对程序正确性的分析);软件工程的进展(更好的工具,更多的应用领域)会帮助计算机科学家更有效地进行实验和探索。

软件工程的“工程”二字意味着它和许多工程领域的学科,以及管理学有很大关系

工程师的宗旨:我构建,故我在

软件工程的目标——创造“足够好”的软件

用户满意度

可靠性

软件流程的质量

可维护性
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  读书笔记