《面向对象技术》PPT课件.ppt
《《面向对象技术》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《面向对象技术》PPT课件.ppt(67页珍藏版)》请在三一办公上搜索。
1、面向对象技术,1,相关信息,2023/8/3,Institute of Computer SoftwareNanjing University,2,教师:余萍Email:Office:蒙民伟楼610A助教课程网页:,引言,摘要,2023/8/3,Institute of Computer SoftwareNanjing University,4,课程简介“选不选这门课?”背景概述“所学内容在专业知识结构中的位置?”,欢迎选修“面向对象技术”!,2023/8/3,Institute of Computer SoftwareNanjing University,5,通过选修本课程,可以更深入地掌握
2、面向对象的基本原理更广泛地了解面向对象的新兴技术更自信地面对实际开发的技术需求获取 3 个学分,课程性质,2023/8/3,Institute of Computer SoftwareNanjing University,6,不是又一门语言/编程课虽然在C+/Java 之外还会提到别的语言,如Eiffel不是一般意义上的软件工程课但讲授面向对象软件开发的实用技术不属于理论计算机科学但会利用一些较成熟易用的理论工具,课程目标,2023/8/3,Institute of Computer SoftwareNanjing University,7,用OOPL写代码 OOP OOSC朴素的OOP 系统
3、化的OOP传统OO技术 现代的OO技术Beyond OO,课程内容,2023/8/3,Institute of Computer SoftwareNanjing University,8,主要包括但不限于:面向对象的起源及其动机面向对象技术的核心概念和基本原理Object,Class,Encapsulation,Polymorphism,Abstract Data Type,Design by Contract,Garbage Collection,Exception Handling,面向对象技术的应用Design Patterns,Application Frameworks 面向对象的发
4、展并发、分布对象计算、服务计算,面向对象分析/开发/测试AOP,教材与参考资料,2023/8/3,Institute of Computer SoftwareNanjing University,9,徐家福,王志坚,翟成祥 等,对象式程序设计语言,南京大学出版社,1993年2月。Bertrand Meyer,Object-Oriented Software Construction,Second Edition,Prentice Hall,1997.清华大学出版社影印。Jolt Award 1998,教材与参考资料,2023/8/3,Institute of Computer Software
5、Nanjing University,10,Richard Mitchell and Jim Mckim.Design by Contract,by Example.Erich Gamma,Richard Helm,Ralph Johnson and John Vlissides,Design Patterns:Elements of Reusable Object-Oriented software,Addison-Wesley,1994.Craig Larman,Applying UML and Patterns,Prentice Hall PTR,2nd edition.2001.Cle
6、mens Szyperski.Component Software:Beyond Object-Oriented Programming.Addison-Wesley,2nd edition,2002.,授课方式,2023/8/3,Institute of Computer SoftwareNanjing University,11,LectureSeminar,考核方式,2023/8/3,Institute of Computer SoftwareNanjing University,12,笔试 50%开卷 or 闭卷?平时 50%其中书面作业 25%(态度第一)开发练习 25%(一个月后公
7、布具体要求)主动Presentation 约 20-30(额外加分)理论探索,学习心得,实践经验 均可,有何建议,2023/8/3,Institute of Computer SoftwareNanjing University,13,课程内容?授课方式?考核方式?其他?,背景概述,摘要,2023/8/3,Institute of Computer SoftwareNanjing University,15,从软件到软件工程软件质量前对象时代结构化程序设计面向对象思想的兴起模块化软件复用,软件,2023/8/3,Institute of Computer SoftwareNanjing Uni
8、versity,16,概念一系列按照特定顺序组织的数据和指令的集合程序+文档程序:计算任务的处理对象和处理规则的描述文档:为了便于了解程序所需的阐明性资料特点本质上是逻辑产品现实中受多方制约,软件:逻辑产品,2023/8/3,Institute of Computer SoftwareNanjing University,17,基础:图灵机,1936冯诺依曼结构,1945,Alan Turing:抽象计算模型(数学逻辑机),软件:逻辑产品,2023/8/3,Institute of Computer SoftwareNanjing University,18,存储程序计算机在体系结构上主要特点
9、有:以运算单元为中心 采用存储程序原理 存储器是按地址访问、线性编址的空间 控制流由指令流产生 指令由操作码和地址码组成 数据以二进制编码,软件:多方制约,2023/8/3,Institute of Computer SoftwareNanjing University,19,作为一种“工程”目的性资源物理运行平台工程问题质量、生产率根源:复杂性软件工程:将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。,1969,NATO会议软件危机,软件,2023/8/3,Institute of Computer SoftwareNanjing Universi
10、ty,20,通常而言,“质量”与“生产率”是一对矛盾我们首先来考虑“质量”。有趣的是,在软件领域,对“质量”的重视有时竟然会带来“生产率”的提升!说明软件工程远未成熟,二者的“共同底线”还未达到。,软件质量,2023/8/3,Institute of Computer SoftwareNanjing University,21,何谓“质量”?产品或工作的“优劣程度”何为“优”?何为“劣”?可从“外部”和“内部”两个不同的侧面来考察软件产品(Meyer,McCall)外部质量因素:用户直接感觉到的内部质量因素:用户不能直接发觉,体现在软件“文本”(源码、设计报告、分析报告等)中Being mod
11、ular;readable,外部质量因素,2023/8/3,Institute of Computer Software,Nanjing University,22,Correctness 正确性依据规约 完成任务Robustness 鲁棒性异常情况 合理反应Integrity 完整性非法访问或修改 合理反应Extendibility 易扩展性软件产品 应 规约改变 而 改变Reusability 易复用性软件模块 用于构建多种不同应用,Reliability,Robustness,SPECIFICATION,Correctness,Integrity,外部质量因素,2023/8/3,Inst
12、itute of Computer SoftwareNanjing University,23,Compatibility 兼容性软件模块相互组合的难易 Efficiency 高效性尽量少地使用硬件资源 处理器时间 内存 外存 网络带宽 等Portability 易移植性转换到不同的软硬件平台上Ease of use 易用性不同背景的用户学习使用软件产品解决问题的难易,外部质量因素,2023/8/3,Institute of Computer SoftwareNanjing University,24,Functionality 功能Timeliness按时交付Verifiability,Re
13、parability,Economy,维护费用分类,2023/8/3,Institute of Computer SoftwareNanjing University,25,Lientz 1980,70%of the cost of software is devoted to maintenance!,Tradeoffs,2023/8/3,Institute of Computer SoftwareNanjing University,26,鱼与熊掌不可得兼权衡 折中软件技术研究的常见主题:在何种条件下 以何种方式 鱼与熊掌可以得兼?在何种条件下 拿部分鱼换取更多熊掌?何时反之?,Key C
14、oncerns,Reliability correctness+robustness:It should be easier to build software that functions properly,and easier to guarantee what it does.Modularity reusability+extendibility:We should build less software!Software should be easier to modify.,2023/8/3,Institute of Computer Software,Nanjing Univer
15、sity,27,应对软件危机,2023/8/3,Institute of Computer SoftwareNanjing University,28,开发的角度:分析、设计方法的研究前对象时代Structured Programming,Design,Analysis管理的角度:软件开发过程的工程化生命周期模型瀑布模型,快速原型法,螺旋模型,喷泉模型等,应对复杂性的基本途径,2023/8/3,Institute of Computer SoftwareNanjing University,29,“元方法”Decomposition 分而治之Abstraction抓本质,抓重点Hierarch
16、y 应对大系统,纲举目张,复杂性是软件开发过程中所固有的特质。Booch94,结构化开发方法,2023/8/3,Institute of Computer SoftwareNanjing University,30,何谓“结构化”?结构化程序设计设计过程 程序组织 语句构造 结构化 结构化分析设计数据流图 数据字典 模块结构图结构化的好处科学化 可读性 模块化 信息隐蔽.,结构化开发方法,2023/8/3,Institute of Computer SoftwareNanjing University,31,自顶向下(Top-down)的功能设计,A,B,D,C,C1,I1,C2,I2,I,T
17、opmost functional abstraction,Loop,Conditional,Sequence,自顶向下,逐步求精,软件生命周期模型,2023/8/3,Institute of Computer Software,Nanjing University,32,FEASIBILITY STUDY,REQUIREMENTS ANALYSIS,SPECIFICATION,GLOBAL DESIGN,DETAILED DESIGN,IMPLEMENTATION,DISTRIBUTION,VALIDATION&VERIFICATION,瀑布型,PROJECT PROGRESS,The ac
18、tivities are necessary.(But:merging of middle activities.)The order is the right one.,The waterfall model of the lifecycle,2023/8/3,Institute of Computer Software,Nanjing University,33,FEASIBILITY STUDY,REQUIREMENTS ANALYSIS,SPECIFICATION,GLOBAL DESIGN,DETAILED DESIGN,IMPLEMENTATION,DISTRIBUTION,VAL
19、IDATION&VERIFICATION,PROJECT TIME,DESIGN AND IMPLEMENTATION,Problems with the waterfall,Late appearance of actual code.Lack of support for requirements change and more generally for extendibility and reusability.Lack of support for the maintenance activity(70%of software costs).Division of labor ham
20、pering Total Quality Management.Impedance mismatches.Highly synchronous model.,2023/8/3,Institute of Computer Software,Nanjing University,34,WARNING:The waterfall model is not the recommended process model for O-O development,Quality Control?,2023/8/3,Institute of Computer Software,Nanjing Universit
21、y,35,Analysts,Designers,Implementers,Testers,Customers,Impedance mismatches,36,As Management requested it.,As the Project Leader defined it.,As Systems designed it.,As Programming developed it.,As Operations installed it.,What the user wanted.,软件模块化,2023/8/3,Institute of Computer SoftwareNanjing Uni
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象技术 面向 对象 技术 PPT 课件
链接地址:https://www.31ppt.com/p-5619397.html