猜你喜欢
编程的逻辑:如何用面向对象方法实现复杂业务需求

编程的逻辑:如何用面向对象方法实现复杂业务需求

书籍作者:李运华 ISBN:9787121394027
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:1719
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
下载地址
内容简介

本书系统地讲述了面向对象技术的相关内容,包括面向对象的基本概念、面向对象开发的流程、面向对象的各种技巧,以及如何在实际开发项目中应用面向对象技术进行设计和开发。在讲述相关知识或技术的时候,除了从“是什么”这个角度进行介绍外,更加着重于从“为什么”和“如何用”这两个角度进行剖析,力争让读者做到“知其然,并知其所以然”,从而达到在实践中既能正确又能优秀地应用面向对象的相关技术和技巧。

本书内容涵盖面向对象技术的方方面面,由浅入深,不同水平的读者都能从书中获益。

l 如果你是刚入门的程序员,则书中通俗易懂的概念和方法,完整的面向对象开发流程,能够帮助你快速掌握面向对象开发的基本技巧,从容不迫地完成开发任务;

l 如果你已经初步掌握了面向对象开发的基本方法和步骤,则书中详细阐述的面向对象技术的各种技巧,例如SOLID原则、设计模式、UML等,能够帮助你快速提升自己的设计和开发水平;

l 如果你有了一定经验,能够熟练应用各种面向对象技术和技巧,却没有深入地探索,则书中对面向对象独辟蹊径的解读,能够让你“知其然,并知其所以然”,从而在晋升或者面试的时候游刃有余。


作者简介

阿里前资深技术专家(P9),15年软件设计开发经验,曾就职于华为、UCWEB、阿里巴巴、蚂蚁金服,承担架构设计、架构重构、技术团队管理、技术培训等职责;专注于开源技术、系统分析、架构设计,对互联网技术的特点和发展趋势有较深入的研究和理解,先后负责过阿里游戏异地多活、飞鸽消息队列、交易平台解耦、蚂蚁国际澳门钱包等项目,对于高性能、高可用、业务架构、系统解耦等有丰富的经验,著有《面向对象葵花宝典:思想、技巧与实践》、《从零开始学架构》2本书籍,极客时间专栏《从0开始学架构》作者。

编辑推荐
适读人群 :本书内容涵盖面向对象技术的方方面面,由浅入深,不同水平的读者都能从书中获益。 ? 如果你是刚入门的程序员,则书中通俗易懂的概念和方法,完整的面向对象开发流程,能够帮助你快速掌握面向对象开发的基本技巧,从容不迫地完成开发任务; ? 如果你已经初步掌握了面向对象开发的基本方法和步骤,则书中详细阐述的面向对象技术的各种技巧,例如SOLID原则、设计模式、UML等,能够帮助你快速提升自己的设计和开发水平; ? 如果你有了一定经验,能够熟练应用各种面向对象技术和技巧,却没有深入地探索,则书中对面向对象独辟蹊径的解读,能够让你“知其然,并知其所以然”,从而在晋升或者面试的时候游刃有余。

1)面向对象基础
通过对面向对象相关的历史、发展、与面向过程的对比等相关背景知识的介绍,让读者对面向对象有一个更完整的认识;并深入的阐述了面向对象的各种概念,让读者“知其然并知其所以然”
2)面向对象方法
通过一个实例,完整的介绍面向对象相关技术如何在软件开发流程中落地,整个面向对象的开发流程一环扣一环,步步为营,让读者避免“拍脑袋”、“头脑风暴”式的开发方式
3)面向对象技巧
对“内聚耦合”、“设计模式”、“设计原则”、“UML”等最常见的面向对象技术进行了深入和别具一格的阐述,让读者不但知道“What”(是什么),还能知道“Why”(为什么)和“How”(如何用)
4)面向对象架构实战
通过在朋友圈增加踩、ZooKeeper的源码分析两个实战案例展示如何在实际开发项目中使用面向对象方法。

《编程的逻辑:如何用面向对象方法实现复杂业务需求》电子书免费下载

pdf下载 txt下载 epub下载 mobi下载 azw3下载

前言

前  言

我最早接触“面向对象”这个词是在大学的“C++语言”这门选修课上,当时的教材分为两部分,前面一部分讲C语言编程,后面一部分讲C++的面向对象特性。当时觉得“面向对象”这个词很有意思,但对“面向对象”的理解和认识很粗浅,认为面向对象就是写class。

工作后,我开始真正地在业务开发中应用面向对象技术,最初也只是按照写class的方式去应用面向对象,但越来越发现不对劲儿,自己的疑惑也越来越多,例如:

l 为什么要这样写class,不能那样写class,反正最后都能完成功能啊?

l 为什么我说要设计这个class,你说要设计那个class,标准是什么?

l 客户需求都是由自然语言描述的,根本没有类和继承这些面向对象的概念,那这些设计又是如何得出的呢?是拍脑袋还是靠天才的创造,还是有章可循?

l 如何判断面向对象的设计做得好还是不好?

带着这些问题,我开始真正地去探索面向对象的世界,于是一头扎进去,发现了一个精彩且纷繁复杂的世界,各种各样的技术扑面而来,让人目不暇接:设计模式、SOLID设计原则、UML、Java、C++……费了九牛二虎之力,好不容易把这些啃完了,我自信满满地以为掌握了面向对象的精髓,于是准备到业务开发中大展拳脚,实践后却发现自己只是掌握了一大堆的技术名词,例如“封装”“继承”“工厂模式”“开闭原则”,但还是“知其然,不知其所以然”,在实际开发过程中依然不能很好地应用这些技术。

除此之外,不管采用“瀑布流程”,还是“敏捷流程”,软件开发流程都可以简单地分为需求分析、系统设计、编码实现、测试部署这几个阶段。在这些不同的阶段,面向对象起什么作用呢?如何在不同的阶段应用面向对象技术呢?我曾经带着这些疑惑去问“大牛”,但没人能够清楚地回答;也曾翻阅各种面向对象书籍,但没有找到确切的答案。

虽然没有直接找到答案,但在思考和探索的过程中,我学到了更多的知识,掌握了更多的技能,接纳了更多的思想。随着我对面向对象思想和技术的理解逐渐加深,加上我在工作中不断地实践,很多问题我自己慢慢地竟然想通了,同时形成了一套完整的面向对象方法论。

在这个过程中,我有很多疑惑,甚至有很多痛苦,投入了大量精力,是对技术的热爱支撑着我一直探索下去,但我相信大部分程序员没有这么大的兴趣去探索,也没有那么多的时间可以投入,所以我写成这本书,让更多的程序员更好地掌握面向对象思想和技巧,享受程序人生,实现自己的梦想!





李运华

目录

目  录
第1部分 面向对象基础
第1章 面向对象概述
1.1 程序设计思想的发展
1.2 面向对象语言的发展历史
1.3 面向过程
1.4 面向对象
1.5 为什么要面向对象
1.6 面向对象的应用范围
1.7 面向对象的迷思
1.7.1 面向对象会导致性能降低?
1.7.2 面向对象语言=面向对象编程?
1.8 小结
第2章 面向对象理论
2.1 类
2.2 对象
2.3 接口
2.4 抽象类
2.5 抽象
2.6 三大核心特征
2.6.1 封装
2.6.2 继承
2.6.3 多态
2.7 小结
第2部分 面向对象方法
第3章 面向对象分析和设计全流程概述
第4章 需求模型
4.1 需求详解
4.2 需求的重要性
4.3 需求分析
4.3.1 需求分析的目的
4.3.2 需求分析的方法
4.4 用例方法
4.4.1 用例的具体写法
4.4.2 要画图吗
4.5 功能
4.6 用例图的陷阱
4.7 SSD
4.8 常见问题解答
4.9 小结
第5章 领域模型
5.1 领域建模三字经
5.2 找名词
5.3 加属性
5.4 连关系
5.5 常见问题解答
5.6 小结
第6章 设计模型
6.1 设计模型总览
6.2 类模型
6.2.1 第一步(照猫画虎):领域类映射
6.2.2 第二步(精雕细琢):应用设计原则和设计模式
6.2.3 第三步(照本宣科):拆分辅助类
6.3 动态模型
6.3.1 模型分类
6.3.2 建模实践
6.3.3 建模技巧
6.4 小结
第7章 实现模型
7.1 编程语言的差异性
7.2 C++
7.2.1 类
7.2.2 访问控制
7.2.3 继承
7.2.4 多态
7.2.5 抽象类
7.2.6 接口
7.3 Java
7.3.1 类
7.3.2 访问控制
7.3.3 继承
7.3.4 多态
7.3.5 抽象类
7.3.6 接口
7.4 小结
第3部分 面向对象技巧
第8章 设计原则
8.1 内聚
8.1.1 内聚究竟是什么
8.1.2 内聚的分类
8.2 耦合
8.2.1 耦合究竟是什么
8.2.2 耦合的分类
8.3 高内聚低耦合
8.4 类设计原则
8.4.1 SRP
8.4.2 OCP
8.4.3 LSP
8.4.4 ISP
8.4.5 DIP
8.4.6 如何应用设计原则
8.4.7 NOP
8.5 小结
第9章 设计模式
9.1 设计模式简介
9.2 设计模式只是一把锤子
9.3 设计模式之道
9.3.1 知易行难―设计模式应用的问题
9.3.2 拨云见日―寻找设计模式之道
9.3.3 庖丁解牛―解析设计模式之道
9.3.4 举一反三―活学活用设计模式之道
9.4 原则vs模式
9.5 模式详解
9.5.1 Prototype模式
9.5.2 Decorator模式
9.5.3 Facade模式
9.5.4 Observer模式
9.6 小结
第10章 UML
10.1 UML简介
10.2 UML只是语言
10.3 UML应用
10.4 需求分析阶段
10.4.1 用例图
10.4.2 用例图的关系
10.5 设计阶段
10.5.1 类图
10.5.2 类关系图
10.5.3 动态图
10.5.4 结构图
10.6 部署阶段
10.7 小结
第4部分 面向对象实战
第11章 实战案例:朋友圈“踩”
11.1 需求模型
11.1.1 5W分析
11.1.2 1H分析
11.1.3 8C分析
11.1.4 功能列表
11.2 领域模型
11.2.1 找名词
11.2.2 加属性
11.2.3 连关系
11.3 设计模型
11.3.1 系统设计
11.3.2 详细设计
11.4 代码模型
11.5 小结
第12章 实战案例:ZooKeeper源码分析
12.1 ZooKeeper介绍
12.2 需求模型
12.3 领域模型
12.4 设计模型
12.5 代码模型
12.6 小结

短评

还可以

2020-09-09 11:41:28

很好,要好好看看。努力学习,天天向上。加油???!(?•??•?)??,哈哈

2020-09-17 07:54:37

商城购物很方便的。

2020-09-15 18:52:40

我在这里等你回来我给你打电话了,

2020-09-16 06:58:42

垃圾破书, 毫无逻辑, 而且有些概念都是错的, 是作者自己YY出来的, 慎买.

2020-09-12 10:14:42

标签
软件工程
产品特色