软件构建:原理、技术与实践
1. 实践考量
软件构建过程中,工程师需精准应对现实世界中复杂多变的约束条件。与其他领域相比,构建活动更受实际因素驱动,也更具技艺性。
2. 构建设计
部分项目在构建阶段开展大量设计工作,而有些则将设计集中于专门的设计阶段。无论如何分配,构建阶段都会有详细设计工作,且这些工作往往受软件要解决的实际问题所制约。就像建筑工人在施工时需对建筑计划进行小调整一样,软件构建人员也需对软件设计进行或大或小的修改。构建阶段的设计活动本质与软件设计领域相同,但规模更小,主要涉及算法、数据结构和接口。
3. 构建语言
构建语言涵盖人类向计算机指定可执行问题解决方案的所有通信形式,它会影响软件的性能、可靠性、可移植性等质量属性,甚至可能导致安全漏洞。
- 配置语言 :软件工程师从有限的预定义选项中选择,创建新的或定制的软件安装。例如Windows和Unix操作系统中的基于文本的配置文件,以及一些程序生成器的菜单式选择列表。
- 工具包语言 :用于从工具包中的元素构建应用程序,比配置语言更复杂。它可以明确定义为应用程序编程语言,也可以通过工具包的接口集合暗示应用程序。
- 脚本语言 :常用的应用程序编程语言,在某些脚本语言中,脚本被称为批处理文件或宏。
- 编程语言 :最灵活的构建语言类型,但包含的特定应用领域和开发过程信息最少,需要最多的培训和技能才能有效使用。编程语言的选择会对编码过程中引入漏洞的可能性产生重大影响,例如从安全角度看,
超级会员免费看
订阅专栏 解锁全文
176万+

被折叠的 条评论
为什么被折叠?



