打字猴:1.70041762e+09
1700417620
1700417621 计算机是怎样跑起来的 [:1700412751]
1700417622 计算机是怎样跑起来的 12.5 所谓设计就是拆解
1700417623
1700417624 下面先回到图12.1所示的瀑布模型,从上游到下游再回顾一遍该模型中的各个开发阶段。从需求分析到程序设计,所进行的工作都是拆解业务,把将要为计算机系统所替代的手工业务拆解为细小的要素。从编码实现到部署、维护阶段,所进行的工作则是集成,把拆解后的细小要素转换成程序的模块,再把这些模块拼装在一起构成计算机系统。
1700417625
1700417626 庞大复杂的事物往往无法直接做出来。这个道理不仅适用于计算机系统,也同样适用于建筑物、飞机……人们往往要把庞大复杂的事物先分解成细小简单的要素来进行设计。有了各个要素的设计图,整体的设计图也就出来了。先根据每个要素的设计图制成小零件(程序中的模块),待每个小零件的测试(单元测试)都通过了,剩下的就只是一边看着整体的设计图,一边把这些零件组装起来了。然后再来一轮测试(集成测试),测试组装起来的零件是否能正确地协作运转。大型的计算机系统就是这样构建出来的(如图12.3所示)
1700417627
1700417628 图12.3 把小的模块组装起来,构成大的计算机系统
1700417629
1700417630
1700417631
1700417632
1700417633 可以说,所谓计算机系统的设计,就是拆解。老一辈工程师们已经发明出了可作为规范的各种各样的设计方法,这些方法之间的差异只是拆解时的关注点不同,这里先把几个具有代表性的程序设计方法列在表12.3中
1700417634
1700417635 表12.3 具有代表性的程序设计方法
1700417636
1700417637 设计方法            拆解时所关注的事物
1700417638
1700417639 通用功能分割法        在整个计算机系统中通用的功能
1700417640
1700417641 STS法                数据流(输入、变换、输出)
1700417642
1700417643 TR法                 事务(数据的处理单位)
1700417644
1700417645 Jackson法            输入数据和输出数据
1700417646
1700417647 Warnier法            输入数据
1700417648
1700417649 面向对象法            构成计算机系统的事物(对象)
1700417650
1700417651 STS:Source, Transofrm, Sink
1700417652
1700417653 TR:Transaction
1700417654
1700417655 下面回忆一下第1章中的“计算机三大原则”
1700417656
1700417657 原则1:计算机只能够做输入、运算、输出三种操作
1700417658
1700417659 原则2:程序是指令和数据的集合
1700417660
1700417661 原则3:计算机有自己的处理方法
1700417662
1700417663 可以看到,表12.3所示的各种设计方法,其关注点要么在输入、运算、输出、指令、数据这几个要素的某一个上,要么在某几个的组合上。引进计算机系统的目的是通过用计算机替代靠手工作业进行的业务来提升工作效率。因此在设计时,要使手工作业的业务顺应计算机的处理方式来进行替换,这一点也值得注意。
1700417664
1700417665
1700417666
1700417667
1700417668 计算机是怎样跑起来的 [:1700412752]
1700417669 计算机是怎样跑起来的 12.6 面向对象法简化了系统维护工作
[ 上一页 ]  [ :1.70041762e+09 ]  [ 下一页 ]