复旦大学:《面向对象分析和设计》课程资料_UML和模式_OOP:Object-Oriented Programming

OOP: Object-Oriented Programming
OOP: Object-Oriented Programming

Chapter1对象导 本章将介绍面向对象程序设计的基本概念, 包括OOP开发方法的描述 抽象 封装 多态 继承
Chapter 1对象导言 • 本章将介绍面向对象程序设计的基本概念, 包括OOP开发方法的描述 – 抽象 – 封装 – 多态 – 继承

抽象的过程 什么是抽象? Abstraction is the process or result of generalization by reducing the information content of a concept or an observable phenomenon, typically to retain only information which is relevant for a particular purpose shttpen.wikipedia.org/wiki/abstraction>
抽象的过程 • 什么是抽象? Abstraction is the process or result of generalization by reducing the information content of a concept or an observable phenomenon, typically to retain only information which is relevant for a particular purpose

什么是抽象 Book domain concept visualization of title domain concept public class Book representation in a private String title object-oriented programming language public Chapter getchapter(int).]
什么是抽象

抽象的过程 所有的的程序设计语言都提供抽象的机制 程序通常是现实的一个模型:一个窗口,一辆战车 以复杂度的角度来看,抽象的好处在于让 人忽略无关的细节 ·人们能够解决的问题的复杂性直接与抽象 的类型和质量有关。 程序设计语言的演化过程是抽象层次不断 提高的过程
抽象的过程 • 所有的的程序设计语言都提供抽象的机制。 – 程序通常是现实的一个模型:一个窗口,一辆战车。 • 以复杂度的角度来看,抽象的好处在于让 人忽略无关的细节 • 人们能够解决的问题的复杂性直接与抽象 的类型和质量有关。 • 程序设计语言的演化过程是抽象层次不断 提高的过程

抽象的过程 ·纯面向对象程序设计语言的特性 万物皆对象 程序就是一组对象,对象之间通过发送消息互相通 知做什么 每一个对象都有它自己的由其他对象构成的存储区 每个对象都有一个类型。 个特定的类型的所有对象都能够接受相同的消息 ·纯的面向对象的程序设计语言能够保证写出面 向对象风格的程序吗?
抽象的过程 • 纯面向对象程序设计语言的特性 – 万物皆对象。 – 程序就是一组对象,对象之间通过发送消息互相通 知做什么。 – 每一个对象都有它自己的由其他对象构成的存储区。 – 每个对象都有一个类型。 – 一个特定的类型的所有对象都能够接受相同的消息。 • 纯的面向对象的程序设计语言能够保证写出面 向对象风格的程序吗?

对象有一个接口(界面) 对象的接口(界面)规定我们能像特定的 对象发出什么消息。 对象的接口由其类(cas」或类型(type)确定。 抽象的接口在现代程序设计语言中具有重 要的意义
对象有一个接口(界面) • 对象的接口(界面)规定我们能像特定的 对象发出什么消息。 • 对象的接口由其类(class)或类型(type)确定。 • 抽象的接口在现代程序设计语言中具有重 要的意义

隐藏实现的细节 在一个软件开发的过程中,一个团队中的 成员可以分为类的创建者和客户程序员。 类的创建者是是创建新数据类型的人,他 们的目标是创建类。 客户程序员的目标是去收集一个装满类的 工具箱,用于快速构建应用。 创建者所能设计的一个好的工具箱应该 暴露对于客户程序员必须的东西,而其他 的都隐藏起来
隐藏实现的细节 • 在一个软件开发的过程中,一个团队中的 成员可以分为类的创建者和客户程序员。 • 类的创建者是是创建新数据类型的人,他 们的目标是创建类。 • 客户程序员的目标是去收集一个装满类的 工具箱,用于快速构建应用。 • 创建者所能设计的一个好的工具箱应该只 暴露对于客户程序员必须的东西,而其他 的都隐藏起来

能够热咖啡的CPU
能够热咖啡的CPU

另一种热咖啡的办法
另一种热咖啡的办法
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 2 - 迭代、进化和敏捷.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 1 - 面向对象分析和设计.ppt
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_9-11 UC Design、Subsystem Design、Class Design.pdf
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_6-8 Identify Design Elements、RunTime Architecture、Describe Distribution.pdf
- 复旦大学:《面向对象分析和设计》课程资料_课程注册系统_1-5 最佳实践、需求、分析设计、架构分析、用例分析.pdf
- 复旦大学:《面向对象分析和设计》课程资料_Exception handling refactorings.pdf
- 复旦大学:《面向对象分析和设计》课程资料_Error Handling.pdf
- 复旦大学:《面向对象分析和设计》课程资料_AntiPattern_2.Servlet.pdf
- 复旦大学:《面向对象分析和设计》课程资料_AntiPattern_1.JSP J2EE Refactoring Patterns/AntiPatterns.pdf
- 复旦大学:《面向对象分析和设计》课程资料_分析模式_责任模式 Accountability.pdf
- 复旦大学:《面向对象分析和设计》课程资料_分析模式_观察和测量模式.pptx
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_UMLProfile.pdf
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_5.5 Iteration 3 持久化框架 DESIGNING A PERSISTENCE FRAMEWORK WITH PATTERNS.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_5.4 Iteration 3 状态图 MODELING BEHAVIOR IN STATECHART DIAGRAMS.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_5.3 Iteration 3 SSD和合约 ADDING NEW SSDs AND CONTRACTS.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_5.2 Iteration 3 领域模型 MODELING GENERALIZATION & REFINING THE DOMAIN MODEL.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_5.1 Iteration 3 用例加关系.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_4.2 Iteration 2 用GoF设计用例实现 DESIGNING USE-CASE REALIZATIONS WITH GoF DESIGN PATTERNS.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_4.1 Iteration 2 GRASP:MORE PATTERNS.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML&GRASP_3.5 Iteration 1 实现模型.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 3 - 案例分析 THE NEXTGEN POS SYSTEM.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 4 Chapter 5 - 初始阶段的需求.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 6 - 用例.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 7 - 其他需求.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 8 - 细化阶段的迭代——基础.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 9 - 领域模型.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 10 - 系统顺序图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 11 - 操作契约.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 13 - 逻辑架构和UML包图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 14 - 迈向对象设计.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 15 - UML交互图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 16 - UML类图.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 17 - GRASP基于职责设计对象.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 18 - 使用GRASP的对象设计示例.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 19 Chapter 20 Chapter 22.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Chapter 21 测试驱动的开发与重构.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_复习:OOAD部分.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_AOP Aspect Oriented Programming.pptx
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Hibernate Persistence.ppt
- 复旦大学:《面向对象分析和设计》课程资料_UML和模式_Hibernate 演示场景.pptx