【software construction】第一章 软件构造的多维视角
第一章 软件构造的多维视图
Outline
描述软件系统的三个维度
阶段:build-time && run-time
动态:moment && period
级别:code && component
元素、关系和各种视角的模式
不同视角间的转换
Notes
<strong>【软件的构成要素】 </strong><br /> - 软件=算法+数据结构<br /> - 软件=程序+数据+文档(80年代)<br /> - 软件=Modules(Components)+Data/Control Flow 模块(组件)+数据流/控制流<br /><strong> 【软件系统的组成】</strong> Software system =<br /> Programs(UI,算法,utilities(实用工具 function),APIs,test cases)<br />+ Data(files,database) + Documents(SRS(需求规格声明),SDD(设计规格声明),user manuals) + Users(谁来使用) + Business Objective(为什么使用它) + Social Environment(法规) + Technological Environement(如何部署) + Hardware / Network(硬件) (前三个是主要) <strong>【软件构造的多维视角】</strong> 1.阶段:构建 || 运行 2.动态:时刻 || 周期 3.级别:代码 || 组件<br />
<strong>【Buildtime概述】</strong> 想法 —> 需求 —> 设计 —> 代码 —> 可安装可执行的包 - 代码是如何组建起来的?(依赖关系) - 体系架构 源代码如何组成文件 - 时间角度 源代码在特定的时间什么样,随着时间如何变化 <strong>【Code-level;Build-time;Moment】</strong> 三种相互关联的形式 - 面向词法 半结构化源代码 - 面向语法 (AST抽象语法树)半结构化的源代码变成语法树(编译器能够处理) - 面向语义 UML(参考软件工程课程内容) 关于词法、语法、语义的更多内容 https://www.cnblogs.com/lightsong/p/6107310.html <strong>【Code-level;Build-time;Period——Code Churn(代码变化)】</strong> - Churn Trends - 代码变化包括添加、修改、删除 <strong>【Component-level ;Build-time;Moment】</strong> - 源代码如何组织成文件——词典 - 文件被压缩进package,逻辑上进入components(组件)and sub-systems(子系统) - 链接技术(动态 / 静态) <strong>【类库(Library)】</strong> 来源 - 操作系统自带 - 语言自带的SDK - 第三方 - 自己编写 链接到类库 - 编译器形成关于外部库的链表,编译器找到库的目标文件,复制加到程序中 <strong>【静态链接】</strong> - 类库就像是特别的对象文件的集合 - 编译前就需要知道方法对应的文件 - 构建时,从类库中提取文件并复制到可执行文件中 <strong>【Component-level ;Build-time;Period】</strong> - 版本控制 - Software Configuration Item(软件生命周期各个阶段活动的产物,经审核后可称为软件配置项) - version:major.minor.patch
-----------未完待续------------
相关推荐
yangjinpingc 2020-10-09
86417413 2020-11-25
83206733 2020-11-19
86276537 2020-11-19
83266337 2020-11-19
86256434 2020-11-17
zhouboxiao 2020-11-16
rise 2020-11-22
sssdssxss 2020-11-20
windle 2020-11-10
孙雪峰 2020-10-30
85477104 2020-11-17
xfcyhades 2020-11-20
liuxudong00 2020-11-19
cheidou 2020-11-19
gunhunti 2020-09-25
csdnYF 2020-11-15
达观数据 2020-11-11