读《构建之法》
读《构建之法》
这周精读了几遍《构建之法》的一、二、十六章,本人更偏好于语言精练概况的书籍,由于语言习惯问题,这本书对我而言有些解读困难。由此在下面对几章内容精练出总结概况,并提出问题。
第一章
1.1软件 = 程序 + 软件工程
·软件 = 数据结构 + 算法
文中的软件被定义为程序与软件工程的结合,意在强调静态代码往往不足以满足客户的需求,开发一些大型严谨的软件时,软件工程中,设计、创造、构建和维护的部分是十分重要的。程序的设计与软件的工程化,主要是为了达成更好的用户体验。而软件是人以机器为媒体实现的,所以影响其质量的还有很多外部因素,如人员的调度,政策的变动。
软件开发的阶段——玩具阶段
——业余爱好阶段
——探索阶段
——产业阶段
问题1:软件工程发展至今,依然是年轻的学科,它是否还有更深层次的发展,如果有,随着科技行业的发展,就像织布机取代织布工人一样,AI是否会逐步取代我们的工作,由它们满足客户的需求?
1.2软件工程是什么
在普遍意义上,软件是具有构建性和易演化性的计算模型,软件工程是研究或应用工程化方法来设计、创造、构建和维护有效实用和高质量软件的一门学科。文中详细列举了软件工程涉猎的学科范围。
软件的特殊性——复杂性(佛瑞德·布鲁克斯)
——不可见性(佛瑞德·布鲁克斯)
——易变性(佛瑞德·布鲁克斯)
——服从性(佛瑞德·布鲁克斯)
——非连续性(瓦茨拉夫·拉里奇)
——…….
文中讲述了一个观点:没有最好的软件,但是可以通过努力将其完善至足够满足客户需求。
第二章
2.1单元测试
RP:快速成型(RP)技术是二十世纪九十年代发展起来的一项先进制造技术,是为制造业企业新产品开发服务的一项关键共性技术, 对促进企业产品创新、缩短新产品开发周期、提高产品竞争力有积极的推动作用。
VSTS的全称是Visual Studio Team System,是由微软开发的一套具有高生产力、高集成性、可扩展的生命周期开发工具,VSTS使得整个开发团队拥有更好的沟通与合作,并且保证了更好的质量。
以上来源百度百科。
简介了VSTS的基本使用方法,对好的单元测试提出要求:集成到自动测试的框架中、自动化、定期维护。
回归测试的目的:验证新代码是否解决了旧问题、新代码是否对原有程序有破坏性。
效能分析:用于测试程序的时间复杂度。
问题2:不同语言编写的相同程序在效能上相同,但是运行速度是不同的,不同语言编写的软件虽然效能上不同,但又可以达成运行速度上的持平,该怎么评价这两种软件呢?
第十六章
16.3创新的招数:SWOT分析
本章概述了创新的意义、要求、方法,创业的基本要求,市场需求的基本分析方法。
问题3:文中提出产品会不可避免地进入衰退期,创新无疑是驱散衰老的良药,是否有理想的情况能够在不断地重构发展下,使产品在衰退期来临之前转进入新的周期?