展开全部

主编推荐语

经典书全面更新,加入设计模式、SOLID准则等章节,补全面向对象设计思想。

内容简介

本书是一部独具特色的面向对象技术著作。书中结合代码示例生动透彻地讲述了面向对象思想的精髓,让读者真正学会以对象方式进行思考。

本书共15章,在结构上可以分为两部分:第一部分包括第1~10章,探讨面向对象的基本概念,比如封装、多态、继承等;第二部分包括第11~15章,专注于将这些概念应用于一些通用的面向对象技术中,并结合了一些实用的应用程序。

目录

  • 版权信息
  • 前言
  • 致谢
  • 关于作者
  • 第1章 面向对象的概念简介
  • 1.1 基本概念
  • 1.2 对象及遗留系统
  • 1.3 过程式编程与面向对象编程对比
  • 1.4 由面向过程开发过渡到面向对象开发
  • 1.4.1 过程式编程
  • 1.4.2 面向对象编程
  • 1.5 什么是对象
  • 1.5.1 对象数据
  • 1.5.2 对象行为
  • 1.6 什么是类
  • 1.6.1 创建对象
  • 1.6.2 属性
  • 1.6.3 方法
  • 1.6.4 消息
  • 1.7 使用类图作为可视化工具
  • 1.8 封装和数据隐藏
  • 1.8.1 接口
  • 1.8.2 实现
  • 1.8.3 接口/实现范式的一个真实示例
  • 1.8.4 接口/实现范式的模型
  • 1.9 继承
  • 1.9.1 超类和子类
  • 1.9.2 抽象
  • 1.9.3 is-a关系
  • 1.10 多态性
  • 1.11 组合
  • 1.11.1 抽象
  • 1.11.2 has-a关系
  • 1.12 本章小结
  • 第2章 如何以对象的方式进行思考
  • 2.1 清楚接口和实现之间的区别
  • 2.1.1 接口
  • 2.1.2 实现
  • 2.1.3 一个接口/实现示例
  • 2.2 使用抽象思维设计接口
  • 2.3 尽可能提供最小化的用户接口
  • 2.3.1 确定用户
  • 2.3.2 对象行为
  • 2.3.3 环境约束
  • 2.3.4 识别公共接口
  • 2.3.5 识别实现
  • 2.4 本章小结
  • 2.5 参考文献
  • 第3章 更多面向对象概念
  • 3.1 构造函数
  • 3.1.1 什么是构造函数调用
  • 3.1.2 构造函数中包含什么
  • 3.1.3 默认构造函数
  • 3.1.4 使用多个构造函数
  • 3.1.5 设计构造函数
  • 3.2 错误处理
  • 3.2.1 忽略问题
  • 3.2.2 检查问题并中止应用程序
  • 3.2.3 检查问题并试图恢复
  • 3.2.4 抛出异常
  • 3.3 作用域的重要性
  • 3.3.1 局部属性
  • 3.3.2 对象属性
  • 3.3.3 类属性
  • 3.4 操作符重载
  • 3.5 多重继承
  • 3.6 对象操作
  • 3.7 本章小结
  • 3.8 参考文献
  • 第4章 类的剖析
  • 4.1 类名
  • 4.2 注释
  • 4.3 属性
  • 4.4 构造函数
  • 4.5 访问器
  • 4.6 公共接口方法
  • 4.7 私有实现方法
  • 4.8 本章小结
  • 4.9 参考文献
  • 第5章 类设计指导
  • 5.1 对现实世界系统建模
  • 5.2 识别公共接口
  • 5.2.1 最小化公共接口
  • 5.2.2 隐藏实现
  • 5.3 设计健壮的构造函数(以及析构函数)
  • 5.4 在类中设计错误处理
  • 5.4.1 记录类并使用注释
  • 5.4.2 构建可以合作的对象
  • 5.5 设计时请考虑重用
  • 5.6 设计时请考虑可扩展性
  • 5.6.1 保持命名具有描述性
  • 5.6.2 抽象不可移植的代码
  • 5.6.3 提供一种方式来复制和比较对象
  • 5.6.4 保持尽可能小的作用域
  • 5.7 设计时请考虑可维护性
  • 5.7.1 在开发过程中使用迭代
  • 5.7.2 测试接口
  • 5.8 使用对象持久化
  • 5.9 本章小结
  • 5.10 参考文献
  • 第6章 使用对象进行设计
  • 6.1 设计指导
  • 6.1.1 进行正确的分析
  • 6.1.2 编写工作陈述文档
  • 6.1.3 收集需求
  • 6.1.4 开发系统原型
  • 6.1.5 识别类
  • 6.1.6 确定每个类的职责
  • 6.1.7 确定类之间如何协作
  • 6.1.8 创建类模型来描述系统
  • 6.1.9 在代码中创建用户接口原型
  • 6.2 对象包装
  • 6.2.1 结构化代码
  • 6.2.2 包装结构化代码
  • 6.2.3 包装不可移植的代码
  • 6.2.4 包装已有类
  • 6.3 本章小结
  • 6.4 参考文献
  • 第7章 精通继承和组合
  • 7.1 重用对象
  • 7.2 继承
  • 7.2.1 泛化和特化
  • 7.2.2 设计决策
  • 7.3 组合
  • 7.4 为什么封装是面向对象的本质
  • 7.4.1 继承如何减弱封装
  • 7.4.2 关于多态性的一个具体例子
  • 7.4.3 对象职责
  • 7.4.4 抽象类、虚方法和协议
  • 7.5 本章小结
  • 7.6 参考文献
  • 第8章 框架和重用:使用接口和抽象类进行设计
  • 8.1 代码:重用还是不重用
  • 8.2 什么是框架
  • 8.3 什么是契约
  • 8.3.1 抽象类
  • 8.3.2 接口
  • 8.3.3 综合运用
  • 8.3.4 编译器佐证
  • 8.3.5 创建契约
  • 8.3.6 系统插件
  • 8.4 一个电子商务示例
  • 8.4.1 一个电子商务问题
  • 8.4.2 非重用方式
  • 8.4.3 电子商务解决方案
  • 8.4.4 UML对象模型
  • 8.5 本章小结
  • 8.6 参考文献
  • 第9章 创建对象及面向对象设计
  • 9.1 组合关系
  • 9.2 分阶段构建
  • 9.3 组合类型
  • 9.3.1 聚合
  • 9.3.2 联合
  • 9.3.3 同时使用联合和聚合
  • 9.4 避免依赖
  • 9.5 基数
  • 9.5.1 多个对象联合
  • 9.5.2 可选的联合
  • 9.6 一个综合性示例
  • 9.7 本章小结
  • 9.8 参考文献
  • 第10章 设计模式
  • 10.1 为什么使用设计模式
  • 10.2 Smalltalk的模型/视图/控制器
  • 10.3 设计模式类型
  • 10.3.1 创建型模式
  • 10.3.2 结构型模式
  • 10.3.3 行为型模式
  • 10.4 反模式
  • 10.5 本章小结
  • 10.6 参考文献
  • 第11章 避免依赖和高度耦合的类
  • 11.1 继承、组合和依赖注入
  • 11.1.1 继承
  • 11.1.2 组合
  • 11.1.3 依赖注入
  • 11.2 本章小结
  • 11.3 参考文献
  • 第12章 面向对象设计的SOLID原则
  • 12.1 面向对象设计的SOLID原则概述
  • 12.1.1 SRP:单一职责原则
  • 12.1.2 OCP:开闭原则
  • 12.1.3 LSP:里氏替换原则
  • 12.1.4 ISP:接口隔离原则
  • 12.1.5 DIP:依赖倒置原则
  • 12.2 本章小结
  • 12.3 参考文献
展开全部

评分及书评

4.1
9个评分
  • 用户头像
    给这本书评了
    4.0
    一本专门讲面向对象的书

    作为面向对象的入门读物满分推荐,如果看进去了,能让新手少走很多弯路。即便是面向对象老手,也值得一看。我看完之后对组合也有了不同以往的领悟。书中对面向对象分析过程的阐述细致入微、拨云见日,可见作者对面向对象编程有着丰富的经验、深入的思考、独到的见解。但翻译的水平一般般。在我的极力推荐下,团队里的后端和前端都看了这本书。

      转发
      评论
      用户头像
      给这本书评了
      5.0
      很棒的一本编程思想书

      过去更专注于具体方法,面忽略了全局思维,这本书跳出了具体的术,从道的维度对面向对象编程思想进行了解析,读后很有启发

        转发
        评论

      出版方

      机械工业出版社有限公司

      机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。