设计模式就该这样学基于经典框架源码和真实业务场景+从企业级开发到云原生微服务Springpdf下载

设计模式就该这样学百度网盘pdf下载

作者:
简介:设计模式就该这样学基于经典框架源码和真实业务场景+从企业级开发到云原生微服务Spring
出版社:
出版时间:
pdf下载价格:9.00¥


预览


内容介绍





9787121392085 9787121367410
9787121377921


设计模式就该这样学
定价:118.00元

出版社: 电子工业出版社

ISBN:9787121392085

版次:1

定价:118

出版时间:2020-07-01

本书从软件架构设计的通用技能UML开始,重点介绍常用的类图和时序图;然后介绍软件架构设计常用的七大原则;接着结合JDK、Spring、MyBatis、Tomcat、Netty等经典框架源码对GoF的23种设计模式展开分析,并结合作者多年“踩坑填坑”和“教学答疑”经验,用深刻、全面、通俗、生动、有趣、接地气的方式结合真实业务场景分析每种设计模式,治愈“设计模式选择困难症”;之后介绍4种常用的新设计模式;后总结软件架构、设计模式与应用框架之间的区别。

如果你已经有编程经验,那么你一定要学一遍设计模式;如果你是资深工程师或者架构师,那么本书将颠覆你以前的认知;如果你觉得设计模式晦涩难懂,那么本书一定能让你醍醐灌顶;如果你看框架源码总是力不从心,那么本书就是“内功心法”。


1篇  软件设计前奏篇

1章  重新认识UML2

1.1  UML的定义2

1.2  UML应用场景2

1.3  UML基本构件简介3

1.3.1  事物3

1.3.2  关系5

1.3.3  图6

2章  设计模式常用的UML图7

2.1  类图7

2.1.1  继承关系8

2.1.2  实现关系8

2.1.3  组合关系9

2.1.4  聚合关系10

2.1.5  关联关系11

2.1.6  依赖关系12

2.1.7  类关系记忆技巧14

2.2  时序图15

2.2.1  时序图的作用15

2.2.2  时序图组成元素16

2.2.3  时序图组合片段17

2.2.4  时序图画法及应用实践19

3章  七大软件架构设计原则22

3.1  开闭原则22

3.1.1  开闭原则的定义22

3.1.2  使用开闭原则解决实际问题23

3.2  依赖倒置原则24

3.2.1  依赖倒置原则的定义24

3.2.2  使用依赖倒置原则解决实际问题25

3.3  单一职责原则28

3.3.1  单一职责原则的定义28

3.3.2  使用单一职责原则解决实际问题28

3.4  接口隔离原则31

3.4.1  接口隔离原则的定义31

3.4.2  使用接口隔离原则解决实际问题31

3.5  迪米特法则33

3.5.1  迪米特法则的定义33

3.5.2  使用迪米特法则解决实际问题33

3.6  里氏替换原则35

3.6.1  里氏替换原则的定义35

3.6.2  使用里氏替换原则解决实际问题36

3.7  合成复用原则40

3.7.1  合成复用原则的定义40

3.7.2  使用合成复用原则解决实际问题40

3.8  软件架构设计原则小结42

4章  关于设计模式的那些事儿43

4.1  本书与GOF的《设计模式》的关系43

4.2  为什么一定要学习设计模式45

4.2.1  写出优雅的代码45

4.2.2  更好地重构项目47

4.2.3  经典框架都在用设计模式解决问题58

2篇  创建型设计模式

5章  简单工厂模式60

5.1  工厂模式的历史由来60

5.2  简单工厂模式概述61

5.2.1  简单工厂模式的定义61

5.2.2  简单工厂模式的应用场景61

5.2.3  简单工厂模式的UML类图61

5.2.4  简单工厂模式的通用写法62

5.3  使用简单工厂模式封装产品创建细节63

5.4  简单工厂模式在框架源码中的应用66

5.4.1  简单工厂模式在JDK源码中的应用66

5.4.2  简单工厂模式在Logback源码中的应用67

5.5  简单工厂模式扩展67

5.5.1  简单工厂模式的优点67

5.5.2  简单工厂模式的缺点67

6章  工厂方法模式68

6.1  工厂方法模式概述68

6.1.1  工厂方法模式的定义68

6.1.2  工厂方法模式的应用场景69

6.1.3  工厂方法模式的UML类图69

6.1.4  工厂方法模式的通用写法70

6.2  使用工厂方法模式实现产品扩展71

6.3  工厂方法模式在LOGBACK源码中的应用72

6.4  工厂方法模式扩展73

6.4.1  工厂方法模式的优点73

6.4.2  工厂方法模式的缺点73



7章  抽象工厂模式74

7.1  抽象工厂模式概述74

7.1.1  抽象工厂模式的定义74

7.1.2  关于产品等级结构和产品族75

7.1.3  抽象工厂模式的应用场景76

7.1.4  抽象工厂模式的UML类图76

7.1.5  抽象工厂模式的通用写法76

7.2  使用抽象工厂模式解决实际问题78

7.2.1  使用抽象工厂模式支持产品扩展78

7.2.2  使用抽象工厂模式重构数据库连接池81

7.3  抽象工厂模式在SPRING源码中的应用88

7.4  抽象工厂模式扩展89

7.4.1  抽象工厂模式的优点89

7.4.2  抽象工厂模式的缺点90

8章  单例模式91

8.1  单例模式概述91

8.1.1  单例模式的定义91

8.1.2  单例模式的应用场景91

8.1.3  单例模式的UML类图92

8.1.4  单例模式的通用写法92

8.2  使用单例模式解决实际问题93

8.2.1  饿汉式单例写法的弊端93

8.2.2  还原线程破坏单例的事故现场93

8.2.3  双重检查锁单例写法闪亮登场97

8.2.4  看似的静态内部类单例写法100

8.2.5  还原反破坏单例模式的事故现场101

8.2.6  更加优雅的枚举式单例写法问世103

8.2.7  还原反序列化破坏单例模式的事故现场108

8.2.8  使用容器式单例写法解决大规模生产单例的问题114
...................



书名:从企业级开发到云原生微服务Spring Boot实战
定价 108.00
出版社 电子工业出版社
版次 1
出版时间 2020年01月
开本 16开
作者 汪云飞,沈永林,陈晓茜
装帧 平装
ISBN编码 9787121377921



内容简介.jpg

本书以Spring 5.2和Spring Boot 2.2为基础,系统地讲解了在日常企业级开发和微服务开发中面临的大部分的问题,如函数式编程、Spring MVC、Spring Data、Spring Security、响应式编程、事件驱动、Spring Integration、Spring Batch、Spring Cloud、Kubernetes 与微服务等。本书内容由浅入深,适合有Java基础的初级程序员学习。同时,本书还介绍了较深的理论及原理知识,可供中、高级工程师提升使用。本书讲解的所有主题都附有实战案例,读者可快速将相关技术应用于工作实践中


目录.jpg

1章  初识Spring Boot 1

1.1  Spring Boot概述 1

1.2  快速建立Spring Boot应用 2

1.2.1  安装Java 2

1.2.2  使用Spring Initializr 2

1.2.3  一段代码 3

1.3  体验Spring Boot 4

1.3.1  Spring Boot的应用结构 4

1.3.2  build.gradle 5

1.3.3  QuickStartApplication 5

1.3.4  application.properties 6

1.4  小结 6

2章  函数式编程 7

2.1  了解函数式编程 7

2.2  Lambda表达式 7

2.2.1  了解Lambda表达式 7

2.2.2  把Lambda表达式作为参数 8

2.3  函数接口 9

2.3.1  Predicate 10

2.3.2  Function 12

2.3.3  Consumer 14

2.3.4  Supplier 14

2.3.5  Operator 15

2.3.6  Comparator 15

2.3.7  自定义函数接口 16

2.4  方法引用 16

2.4.1  构造器方法引用 16

2.4.2  静态方法引用 17

2.4.3  实例方法引用 18

2.4.4  引用特定类的任意对象的方法 18

2.5  Stream 18

2.5.1  Stream简介 19

2.5.2  获得Stream 19

2.5.3  中间作 20

2.5.4  终结作 23

2.6  Optional 27

2.6.1  获得Optional 28

2.6.2  Optional的用法 28

2.7  小结 29



3章  Spring 5.X基础 30

3.1  IoC容器 30

3.2  Spring Bean的配置 31

3.2.1  注解配置(@Component) 31

3.2.2  Java配置(@Configuration和@Bean) 31

3.2.3  依赖注入(Dependency Injection) 32

3.2.4  运行检验(CommandLineRunner) 37

3.2.5  Bean的Scope 38

3.2.6  Bean的生命周期 40

3.2.7  应用环境 43

3.2.8  条件配置(@Conditional) 46

3.2.9  开启配置(@Enable*和@Import) 47

3.3  对Bean的处理(BeanPostProcessor) 53

3.4  Spring Aware容器 54

3.5  Bean之间的事件通信 57

3.6  Spring EL 59

3.7  AOP 61

3.8  注解工作原理 64

3.8.1  BeanPostProcessor 64

3.8.2  BeanFactoryPostProcessor 66

3.8.3  使用AOP 68

3.8.4  组合元注解 68

3.9  小结 68



4章  深入Spring Boot 69

4.1  Spring Boot介绍 69

4.2  Spring Boot的“魔法” 69

4.2.1  加载自动配置 69

4.2.2  实现自动配置 71

4.3  Spring Boot的配置 73

4.3.1  应用配置 74

4.3.2  修改默认配置 76

4.3.3  外部配置 79

4.4  日志和报告 91

4.4.1  日志 91

4.4.2  报告 93

4.5  多线程任务和计划任务 94

4.5.1  Task Eecutor 94

4.5.2  Task Scheduler 97

4.6  Gradle插件 99

4.6.1  依赖 99

4.6.2  Spring Boot Starter 100

4.6.3  插件任务 100

4.7  自定义Starter 100

4.7.1  包装技术库 101

4.7.2  Starter的结构 103

4.7.3  autoconfigure模块 105

4.7.4  Starter模块 107

4.7.5  使用Starter 108

4.8  Spring Boot Actuator 110

4.8.1  常用端点 110

4.8.2  自定义 119

4.8.3  使用Prometheus和Grafana监控指标 124

4.9  小结 128



5章  Spring Web MVC 129

5.1  Spring Web MVC简介 129

5.2  用Spring Boot学习Web MVC 129

5.2.1  核心注解 129

5.2.2  RESTful服务 130

5.2.3  @ControllerAdvice 146

5.2.4  @RestControllerAdvice 151

5.2.5  JSON定制 156

5.2.6  RestTemplate 159

5.3  Web MVC配置 161

5.3.1  Spring MVC的工作原理 161

5.3.2  配置MVC 161

5.3.3  Interceptor 162

5.3.4  Formatter 164

5.3.5  HttpMessageConverter 166

5.3.6  方法参数和返回值处理设置 169

5.3.7  初始化数据绑定设置 176

5.3.8  类型转换原理与设置 176

5.3.9  路径匹配和内容协商 183

5.3.10  JSON 188

5.3.11 其他外部属性配置 189

5.4  Servlet容器 191

5.4.1  注册Servlet、Filter和Listener 191

5.4.2  配置Servlet容器 196

5.5  异步请求 202

5.5.1  Servlet 3.0 异步返回 202

5.5.2  HTTP Streaming 206

5.5.3  HTTP/2 212

5.6  小结 214



6章  数据访问 215

6.1   Spring Data Repository 215

6.1.1  DDD与Spring Data Repository 215

6.1.2  查询方法 218

6.2  关系数据库——Spring Data JPA 218

6.2.1  JPA、Hibernate和Spring Data JPA 218

6.2.2  环境准备 218

6.2.3  自动配置 220

6.2.4  定义聚合 221

6.2.5  定义聚合Repository 224

6.2.6  查询 226

6.2.7  事件监听 238

6.2.8  领域事件 242

6.2.9  审计功能 245

6.2.10  Web支持 246

6.2.11  数据库初始化 248

6.3  SQL——Spring Data Elasticsearch 252

6.3.1  Elascticsearch简介 252

6.3.2  环境准备 252

6.3.3  在Spring Boot中的自动配置 253
........................



书名:Spring 5核心原理与30个类手写实战

谭勇德(Tom) 著

定价118元

出版社: 电子工业出版社

ISBN:9787121367410

版次:1

包装:平装丛书名: 咕泡学院

Java架构师成长丛书 开本:16

出版时间:2019-07-01





《Spring 5核心原理与30个类手写实战》基于编程开发实践,不仅深度解析Spring 5的原理与新特性,更从环境准备、顶层结构设计、数据访问等方面一步步地推导出Spring的设计原理。在每个知识点上,均以大量的经典代码案例辅助讲解,使理论紧密联系实际。后手写30个类,以体会Spring作者的创作过程,让每一位读者学以致用。

对于立志成为Java架构师的技术人员,以及对以Spring为核心的Java Web开发感兴趣的计算机专业高校生、在职Java开发人员来说,本书是一本具备强实战意义的技术升级指南。读者通过本书可以看源码不再“晕车”,轻松找到入口;系统学习设计思想,提高解决问题的效率;培养架构思维能力,以及自驱学习能力


暂时没有内容介绍,请见谅!
暂时没有目录,请见谅!