版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第四部分实际应用第十二章第十二章 应用的内涵与解析应用的内涵与解析 本章的主要内容:本章的主要内容: 应用本质的分析,是学习程序设计的核心和精髓所应用本质的分析,是学习程序设计的核心和精髓所在,只有理解了本章的内容、思想和观点,对其中的各种在,只有理解了本章的内容、思想和观点,对其中的各种基本概念有了一定的认识,才会使自己对程序及程序设计基本概念有了一定的认识,才会使自己对程序及程序设计的体会与认识深入到另一个层次,或上升到另一种境界,的体会与认识深入到另一个层次,或上升到另一种境界,才能真正学会程序设计。才能真正学会程序设计。 一个专业程序员与一个业余程序员的本质差异即在一个专业程序员与一个
2、业余程序员的本质差异即在于他们对程序设计理论基础、思想及其深刻内涵的感悟上。于他们对程序设计理论基础、思想及其深刻内涵的感悟上。 本章的重点:本章的重点: 应用的本质,技术与技术思想,模式与建构应用的本质,技术与技术思想,模式与建构12.1 应用的本质应用的本质 应用是程序设计语言课程学习的最终目标。应用是程序设计语言课程学习的最终目标。针对应用而言,一般涉及到两个方面:针对应用而言,一般涉及到两个方面:方方法和经验法和经验。它们是相互相成的,良好的方。它们是相互相成的,良好的方法,可以导致形成正确的思维,能不断总法,可以导致形成正确的思维,能不断总结、发掘和积累各种经验和规律。得到的结、发掘
3、和积累各种经验和规律。得到的经验和规律又会在新的经验和规律的总结、经验和规律又会在新的经验和规律的总结、发掘和积累过程中发挥重要的作用,进一发掘和积累过程中发挥重要的作用,进一步导致学习体获得更多新的经验和规律,步导致学习体获得更多新的经验和规律,如此周而复始,形成一个良性循环。如此周而复始,形成一个良性循环。12.1 应用的本质应用的本质 事实上,学习方法的培养,比已有的经验和知识事实上,学习方法的培养,比已有的经验和知识更为重要,因为只有建立起正确的思维方法,才更为重要,因为只有建立起正确的思维方法,才能指导我们去有目的地捕捉各种规律、特征,积能指导我们去有目的地捕捉各种规律、特征,积累有
4、用的经验,才会走上正确的学习路线。累有用的经验,才会走上正确的学习路线。 应用的认识和理解就是要学会从具体的语言、算应用的认识和理解就是要学会从具体的语言、算法和问题解决方案中,分析、发掘和提炼各种思法和问题解决方案中,分析、发掘和提炼各种思想与特征、规律;学会将这些思想与特征、规律想与特征、规律;学会将这些思想与特征、规律运用于解决新问题的正确的思维和设计方法。也运用于解决新问题的正确的思维和设计方法。也就是要掌握程序的内在规律,弄清程序设计的道就是要掌握程序的内在规律,弄清程序设计的道理。从而就可以使自己面对所有的应用问题迎刃理。从而就可以使自己面对所有的应用问题迎刃而解。而解。12.2应
5、用模式的发掘及其建构方法的建立应用模式的发掘及其建构方法的建立 模式是对不断重复出现的问题以及该问题的解决模式是对不断重复出现的问题以及该问题的解决方案的核心描述。通俗地讲,模式是指特征、规方案的核心描述。通俗地讲,模式是指特征、规律和经验的一种描述,该特征、规律和经验可以律和经验的一种描述,该特征、规律和经验可以反复用于类似的问题解决。反复用于类似的问题解决。 应用模式是指程序设计中不断出现的各种设计规应用模式是指程序设计中不断出现的各种设计规律,这些规律反复用于类似的应用问题的解决。律,这些规律反复用于类似的应用问题的解决。 模式建构是指多个应用模式,按实际应用问题的模式建构是指多个应用模
6、式,按实际应用问题的需求,进行组合的过程。需求,进行组合的过程。12.3技术与技术思想的领悟技术与技术思想的领悟 技术思想是指某个行业中,运用具体技术技术思想是指某个行业中,运用具体技术处理各种问题时所遵循的一种指导原则,处理各种问题时所遵循的一种指导原则,可以理解为各种具体技术得以产生的母体,可以理解为各种具体技术得以产生的母体,这种母体可以指导具体技术的各种行为。这种母体可以指导具体技术的各种行为。 应用的基本原理和方法之一是,在教学和应用的基本原理和方法之一是,在教学和学习中要时刻注意到程序设计课程的学习,学习中要时刻注意到程序设计课程的学习,本质上也可以说是技术思想的学习这一点。本质上
7、也可以说是技术思想的学习这一点。12.3技术与技术思想的领悟技术与技术思想的领悟 (续) 递归思想不仅仅是程序设计的基本思想,在程序设计技术递归思想不仅仅是程序设计的基本思想,在程序设计技术中占据核心地位,其实也是计算机学科中的核心技术思想中占据核心地位,其实也是计算机学科中的核心技术思想之一,它不仅仅体现在递归程序设计上,其本质反映的是之一,它不仅仅体现在递归程序设计上,其本质反映的是一种跳跃性思维方法。一种跳跃性思维方法。 递归思想的核心有两个方面:递归思想的核心有两个方面: 递归反映了事物间的规律,即整体是由局部构成的,递归反映了事物间的规律,即整体是由局部构成的,整体又可以充当粒度较大
8、的局部,整体和局部的关系是辨整体又可以充当粒度较大的局部,整体和局部的关系是辨证统一的。证统一的。 理解规律的视角,即对于一个问题中的整体和局部的理解规律的视角,即对于一个问题中的整体和局部的理解,取决于看待问题的角度和视角,而这种角度和视角理解,取决于看待问题的角度和视角,而这种角度和视角是随时会改变和调整的。这也就是所谓的是随时会改变和调整的。这也就是所谓的“当前当前”的概念。的概念。两者相互结合,形成完整的辨证思维逻辑。两者相互结合,形成完整的辨证思维逻辑。第十三章第十三章 应用构造的相关概念与基本方法应用构造的相关概念与基本方法 本章主要内容:介绍软件模型与体系结构及其与本章主要内容:
9、介绍软件模型与体系结构及其与程序构造的关系。面向功能和面向对象的两种描程序构造的关系。面向功能和面向对象的两种描述方法,及其相应的描述工具。适当引入设计模述方法,及其相应的描述工具。适当引入设计模式的概念和思想,强调模式在新应用构造过程中式的概念和思想,强调模式在新应用构造过程中的重要性。的重要性。 本章重点:软件模型的发展,各种软件模型的本本章重点:软件模型的发展,各种软件模型的本质,软件模型与程序设计。质,软件模型与程序设计。N-S图的基本符号及图的基本符号及其含义,其含义,N-S图蕴涵的逻辑组合思想,如何用图蕴涵的逻辑组合思想,如何用N-S图描述具体的应用。图描述具体的应用。UML的概念
10、,的概念,UML中的概念中的概念与符号,与符号,UML蕴涵的思想,如何用蕴涵的思想,如何用UML描述具体描述具体的应用。设计模式的概念,应用模式进行设计的的应用。设计模式的概念,应用模式进行设计的重要性。重要性。13.1 软件模型与体系结构软件模型与体系结构 软件模型是指一个具体软件产品制作时所遵循的软件模型是指一个具体软件产品制作时所遵循的基本原理和方法,正如建筑模型用于一个具体建基本原理和方法,正如建筑模型用于一个具体建筑工程的施工指导一样。不同的软件模型,对构筑工程的施工指导一样。不同的软件模型,对构建软件产品时使用的描述方法和技术是不一样的。建软件产品时使用的描述方法和技术是不一样的。
11、 体系结构是指一个产品的整体框架,直接约束了体系结构是指一个产品的整体框架,直接约束了某类产品的结构设计和实现。某类产品的结构设计和实现。 软件体系结构即是一个软件产品的整体框架,它软件体系结构即是一个软件产品的整体框架,它建立在软件模型基础上,是某种软件模型原理内建立在软件模型基础上,是某种软件模型原理内涵的具体化体现。涵的具体化体现。 13.1.1 软件模型及其演化 软件模型的发展历程:软件模型的发展历程: 过程模型(过程模型(Procedure Model) 对象模型(对象模型(Object Model) 组件模型(组件模型(Component Model) 可配置组件模型(可配置组件模
12、型(Configurable Component Model) Web Services模型模型 过程模型 数据数据处理处理图13-1 过程模型的概念模型 过程模型(续)过程模型(续) 过程模型的核心思想之一是问题功能的分过程模型的核心思想之一是问题功能的分解。解。 过程模型的另一个核心思想是功能逻辑组过程模型的另一个核心思想是功能逻辑组合思想、特别是递归思想的实现。合思想、特别是递归思想的实现。 B BB BB BA AA AB B处处 理理 步步分分 支支 组组 合合 步步循循 环环 组组 合合 步步程程 序序 体体双双 分分 支支 体体循循 环环 体体程程 序序分分 程程 序序图13-2
13、 功能的逻辑组合思想 过程模型(续) 对象模型 数据数据处理处理对象对象图13-3 对象模型的概念模型对象模型(续) 对象模型的核心是,将一个相对独立的处理单元对象模型的核心是,将一个相对独立的处理单元(可能包含多个具体处理)与其相关的各种数据(可能包含多个具体处理)与其相关的各种数据结合在一起,形成一个完整的能够刻画具体对象结合在一起,形成一个完整的能够刻画具体对象的独立模块,独立模块称为对象,各个具体处理的独立模块,独立模块称为对象,各个具体处理称为对象的成员函数,对应于该对象的动态特征,称为对象的成员函数,对应于该对象的动态特征,即该对象能做什么。各种相关的数据称为对象的即该对象能做什么
14、。各种相关的数据称为对象的属性,对应于该对象的静态特征,即该对象有那属性,对应于该对象的静态特征,即该对象有那些方面来刻画。对象之间可以通过发送消息进行些方面来刻画。对象之间可以通过发送消息进行通信联系。所以这种程序设计设计方法称为面向通信联系。所以这种程序设计设计方法称为面向对象的程序设计。其中,处理单元与相关数据的对象的程序设计。其中,处理单元与相关数据的结合技术称为封装。结合技术称为封装。 对象模型(续) 对象模型强调的是问题分析和设计方法,对象模型强调的是问题分析和设计方法,是一种处理问题的思想。这种思想的具体是一种处理问题的思想。这种思想的具体实现可以有多种方法。实现可以有多种方法。
15、 对象模型的重心主要针对与问题分析和设对象模型的重心主要针对与问题分析和设计,面向问题,而不是面向机器。这是与计,面向问题,而不是面向机器。这是与过程模型本质不同之处。过程模型本质不同之处。 组件模型 数据数据处理处理对象对象组件组件接口接口图13-4 组件模型的概念模型组件模型 (续) 组件模型的诞生,其重要意义不仅是广义的演绎了对象模组件模型的诞生,其重要意义不仅是广义的演绎了对象模型的思想,更是在于它引起了软件开发的革命性变革,将型的思想,更是在于它引起了软件开发的革命性变革,将软件开发形式从手工作坊方式过渡到大工业生产方式,从软件开发形式从手工作坊方式过渡到大工业生产方式,从而实现了与
16、硬件产业、机械产业、电子产业等等同样的生而实现了与硬件产业、机械产业、电子产业等等同样的生产方式,真正解决了大规模软件开发的问题。引起了传统产方式,真正解决了大规模软件开发的问题。引起了传统软件开发思维和观念的变革。软件开发思维和观念的变革。 组件模型强调标准、零件和生产线。组件模型强调标准、零件和生产线。 尽管组件模型本身解决了大规模生产问题,但因标准的不尽管组件模型本身解决了大规模生产问题,但因标准的不统一,对于异构环境,如不同硬件环境、不同操作系统环统一,对于异构环境,如不同硬件环境、不同操作系统环境等的重用、共享和集成问题,组件模型仍然不能满足要境等的重用、共享和集成问题,组件模型仍然不能满足要求。求。 软件模型演化的规律 软件模型的演化历程,取决于两个因素,软件模型的演化历程,取决于两个因素,一个是应用需求的驱动,另一个是技术的一个是应用需求的驱动,另一个是技术的发展。发展。 软件模型的演化有两个规律,一个是螺旋软件模型的演化有两个规律,一个是螺旋式演化,而不是抛弃式演化。另一个是演式演化,而不是抛弃式演
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车位交易协议规范化样本2024
- 2024五金工具批量采购协议模板
- 水果和坚果加工行业的产品研发与创新能力考核试卷
- 《纯电动汽车动力总成激励下的车内噪声分析》
- 低温仓储的营销推广与市场拓展考核试卷
- 2024至2030年中国自动等离子切割枪数据监测研究报告
- 2024年授权签署协议模板
- 2024年化学品销售协议书
- 2024至2030年中国防水塑料软管数据监测研究报告
- 儿童乘骑玩具使用与维护指南考核试卷
- (正式版)HG∕T 21633-2024 玻璃钢管和管件选用规定
- 2024年网上大学智能云服务交付工程师认证考试题库800题(含答案)
- 农产品电子商务智慧树知到期末考试答案章节答案2024年浙江农林大学
- 特种设备使用单位日管控、周排查、月调度示范表
- 初中语文测试质量分析表(模板)
- 《防烟排烟系统》PPT课件.ppt
- V系列有载分接开关讲义
- 其他食品生产许可证审查细则
- 广东旅游资源汇总21个城市
- 小学生楷体字帖临摹练习
- 土地地类一览表
评论
0/150
提交评论