《复习和总结.ppt》由会员分享,可在线阅读,更多相关《复习和总结.ppt(20页珍藏版)》请在三一办公上搜索。
1、复习和总结,Object-Oriented Technology:Review and Conclusion Remarks,2023/5/14,Institute of Computer SoftwareNanjing University,1,Review,Part 1:OO基础OO基本原理Design by Contract异常处理;并发对象;持久对象Part 2:OO设计原则和设计模式OOA&OOD敏捷软件开发方法OO设计原则OO设计模式应用框架技术AOP,2023/5/14,Institute of Computer SoftwareNanjing University,2,Revi
2、ew,Part 3:构件技术构件化软件分布对象,2023/5/14,Institute of Computer SoftwareNanjing University,3,Background,软件质量外部质量因素(正确性,鲁棒性,完整性)应对软件复杂性的”元”方法decomposition,abstraction,hierarchy软件模块模块化目标(5个),规则(5条),原则(5点)软件复用传统技术,OO技术,2023/5/14,Institute of Computer SoftwareNanjing University,4,Abstract Data Type,ADTWhy,WhatH
3、ow 代数方法从ADT到类类:模块和类型的统一,2023/5/14,Institute of Computer SoftwareNanjing University,5,Design by Contract,基本思想借鉴“契约”原理,界定模块之间的权利义务,规范软件的开发,提高软件质量。具体措施Preconditions,Postconditions,Invariants一个类(实现)的“正确性”?Hoare Triple应用于继承?DbC和防御性编程的比较,2023/5/14,Institute of Computer SoftwareNanjing University,6,Excepti
4、on Handling,对“异常”的理解依据DbC,对Java异常的分类的理解异常处理设施异常处理设施的正确使用不当使用高效使用,2023/5/14,Institute of Computer SoftwareNanjing University,7,Concurrent Objects,并发概念When OO meets ConcurrencyJava approach?Safety vs.LivenessConcurrency support in JavaThread ModelCommunication?Synchronization?Built-in Monitor(synchron
5、ized,wait,notify,notifyall)Semaphore?Read/Write Lock?Barrier?,2023/5/14,Institute of Computer SoftwareNanjing University,8,Serialization and Persistence,Transient objects vs.Persistent objectsJava serialization mechanismSerializable vs.Externalizable interfacesThe difficulties of object storing/retr
6、ieving Object references closure with exclusionsScheme evolution detect,notify,and correctObject Relation MappingThe mismatching为什么需要对象持久化框架?,2023/5/14,Institute of Computer SoftwareNanjing University,9,OOA&OOD,How to find classes?用例的识别:基于参与者,基于事件领域模型三种类:分析类,设计类,实现类How to design classes?,2023/5/14,I
7、nstitute of Computer SoftwareNanjing University,10,Agile Software Development,概念敏捷软件开发敏捷开发是一种面临迅速变化的需求快速开发软件的能力。敏捷过程极限编程强调:交流,简单,反馈,勇气,2023/5/14,Institute of Computer SoftwareNanjing University,11,OO Design Principles,各个原则的含义类设计原则:SRP,OCP,LSP,DIP,ISP包设计原则包的内聚性原则:REP,CRP,CCP包的耦合性原则:ADP,SDP,SAP应用违反原则改
8、正,2023/5/14,Institute of Computer SoftwareNanjing University,12,OO Design Patterns,GoF设计模式名,目的问题解决方案与其它模式的关系考虑例子!,2023/5/14,Institute of Computer SoftwareNanjing University,13,Application Framework,什么是框架?设计优秀框架的方法IoC and DI approaches框架和设计模式的比较,2023/5/14,Institute of Computer SoftwareNanjing Univers
9、ity,14,AOP,AOPWhy,What,HowAspectJ的概念(术语)AOP和OOP的关系,2023/5/14,Institute of Computer SoftwareNanjing University,15,Component Software,Component概念,特性,与相关概念的比较要素Component is for compositionComposition mechanisms,2023/5/14,Institute of Computer SoftwareNanjing University,16,Distributed Objects,General fr
10、amework of DOCThe ORB mechanismsRMIEJB,2023/5/14,Institute of Computer SoftwareNanjing University,17,考试安排,时间:2011年1月4日 9:00-11:00 地点:馆1-104方式:闭卷,2023/5/14,Institute of Computer SoftwareNanjing University,18,2023/5/14,Institute of Computer SoftwareNanjing University,19,Merry Christmas,2023/5/14,Institute of Computer SoftwareNanjing University,20,Thank You,