UML创始人之一的Grady Booch在2004年IBM Developer Works Live! 大会的访谈中讲过的一段流传甚广的话:
我对面向对象编程的目标从来就不是复用。相反,对我来说,对象提供一种处理复杂性问题的方式,这个问题可以追溯到亚里士多德:您把这个世界视为过程还是对象?在面向对象兴起运动之前,编程以过程为主,例如结构化设计方法。然而,系统已经到达了超越其处理能力的复杂性极点。有了对象,我们能够通过提升抽象级别来构建更大的、更复杂的系统—我认为,这才是面向对象编程运动的真正胜利。
分享到:
相关推荐
Smalltalk-80被视为最纯粹的面向对象语言之一,其设计理念对后来的众多面向对象语言如Object-C、C++、Self和Eiffel等产生了深远的影响。 随着时间的发展,面向对象编程不仅局限于编程实现,还逐渐扩展到了软件开发...
面向对象编程是一种编程思想,它将程序中的各种实体视为对象,每个对象都包含状态(属性)和行为(方法),并通过对象间的交互来完成特定功能。OOP的核心特性包括: - **封装**:封装是将数据和操作数据的方法绑定...
"面向对象需求规格说明书" 面向对象需求规格说明书是软件开发过程中的重要文档,旨在描述软件系统的需求规格。该文档是根据面向对象方法编写的,参照了某些公司和规范的面向对象规格说明书。 1. 引言 在软件开发...
习题1.5:为什么要应用继承机制? 继承机制可以使得类之间共享代码和提高代码重用率。 习题1.6:C++ 对多态性的支持体现在哪些方面? C++ 对多态性的支持体现在函数重载、运算符重载和虚拟函数等方面。 习题1.7...
Java面向对象编程PDF 在这篇文章中,我们将对Java面向对象编程的基础知识进行总结和解释。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为...
RT-Thread 1.1 是一个专为中国人设计的、基于C语言的实时操作系统(RTOS),它具有面向对象的设计理念,适用于单片机系统。在本文中,我们将深入探讨RT-Thread 1.1的核心特性、面向对象编程的概念以及如何在STM32微...
根据提供的标题“深入浅出面向对象分析与设计.pdf”及描述来看,本文旨在解析和提炼该文档中的核心知识点。由于实际内容并未给出,以下将基于标题及描述进行假设性分析,重点围绕面向对象分析与设计的基本概念、原则...
学习目的: ①深入理解面向对象方法学的基本观点; ②掌握面向对象的重要基本概念; 1.1 面向对象方法学 1.2 基本概念 1.3 面向对象分析 1.4 面向对象设计 1.5 面向对象建模
### 北京大学信息科学技术学院面向对象技术教程详解 #### 面向对象技术概论 面向对象技术(Object-Oriented Technology, OOT)是一种软件工程方法论,旨在通过模拟现实世界中的对象来构建软件系统。北京大学信息...
多态性的作用一、面向对象的介绍™ 1.1 面向对象的程序设计™ 1.2 类和对象的关系1.1 面向对象程序设计概述™ 面向对象¾ 对象的概念是面向对象技术的核心。在现实世界里,我们面对的所有事物都是对象,如计算机、...
- 面向对象分析(OOA):将需求转化为对象模型,定义类、对象及它们之间的关系。 - 面向对象设计(OOD):细化模型,考虑设计模式、接口设计和架构设计,确保系统的可扩展性和可维护性。 - 编码:根据设计文档编写...
### Caché面向对象软件开发教程核心知识点解析 #### 一、Caché数据库简介 - **定义**:Caché是一种后关系型数据库(Post-Relational Database),它结合了多维数据结构与面向对象技术,由InterSystems公司开发。 -...
面向对象程序设计语言C++重点难点复习题及答案总结 面向对象程序设计语言C++是一种功能强大且广泛应用的程序设计语言,作为一名程序员,掌握C++语言的重点难点是非常重要的。本文将对C++面向对象程序设计语言的重点...
实际上,当我评估一个面向对象系统的质量时,所使用的方法之一就是要判断系统的设计者是否强调了对象之间的公共协同关系。在系统开发阶段强调这种机制的优势在于,它能使所生成的系统体系结构更加精巧、简洁和易于...
该软件以GLC分类器为核心,不仅提供了基于像元的遥感影像分类功能,而且可以在ENVI或者eCognition分割结果的基础上实现遥感影像面向对象自动分类。和以往分类中手动建立规则集相比,该软件通过决策树学习的方式建立...
这是一款比较轻便的基于数据库封装的工具类,完全面向对象。 版本更新: 1.支持多数据源 2.优化多条件查询,支持or语句,支持多种排序,支持自定义返回字段,支持自增语句 3.支持一次插入多条 4.支持外部connention ...
#### 1.1 结构化编程与面向对象编程的区别 **结构化编程**是一种编程方法,强调通过清晰的模块划分来提高代码的可读性和可维护性。它主要依赖于流程控制结构如循环和分支等。 **面向对象编程(OOP)**则是一种更高级...
面向对象方法克服了传统的功能分解方法只能单纯反映管理功能的结构状态、数据流程模型只侧重反映事物的信息特征和流程、信息模拟只能被动地迎合实际问题需要等缺点,构成以系统对象为研究中心,为信息管理系统的分析...
本书由Bertrand Meyer撰写,并由Liber Wang翻译成中文版本,旨在为读者提供面向对象软件开发的核心概念和技术指导。接下来,我们将根据书籍的前几章节内容来提炼并总结关键知识点。 ### 第1章 软件质量 #### 1.1 ...
### 面向对象学习笔记 #### PHP5面向对象基础 **1.1 类和对象** 面向对象编程(Object-Oriented Programming, OOP)是一种软件开发范式,其核心思想是将现实世界中的事物抽象成类(Class),然后根据类创建具体的...