本书从软件架构设计必备的通用技能UML开始,重点介绍常用的类图和时序图;然后介绍软件架构设计常用的七大原则;接着结合JDK、Spring、MyBatis、Tomcat、Netty等经典框架源码对GoF的23种设计模式展开分析,并结合作者多年“踩坑填坑”和“教学答疑”经验,用深刻、全面、通俗、生动、有趣、接地气的方式结合真实业务场景分析每种设计模式,治愈“设计模式选择困难症”;之后介绍4种常用的新设计模式;总结软件架构、设计模式与应用框架之间的区别。
如果你已经有编程经验,那么你一定要学一遍设计模式;如果你是工程师或者架构师,那么本书将颠覆你以前的认知;如果你觉得设计模式晦涩难懂,那么本书一定能让你醍醐灌顶;如果你看框架源码总是力不从心,那么本书就是“内功心法”。
第一章 重新认识UML
1.1 UML的定义
统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的标准语言,是非专利的第三代建模和规约语言。UML是一种面向对象设计的建模工具,是在开发阶段说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法,但独立于任何具体的程序设计语言。
1.2 UML应用场景
UML的应用是工程实践,在对大规模、复杂系统进行建模方面,是在软件架构层次,已经被验证有效。UML模型大多以图表的方式表现出来。一份典型的建模图表通常包含几个块或框、连接线和作为模型附加信息的文本。这些虽简单却重要,在UML规则中相互联系和扩展。
UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等……
本书从软件架构设计的通用技能UML开始,重点介绍常用的类图和时序图;然后介绍软件架构设计常用的七大原则;接着结合JDK、Spring、MyBatis、Tomcat、Netty等经典框架源码对GoF的23种设计模式展开分析,并结合作者多年“踩坑填坑”和“教学答疑”经验,用深刻、全面、通俗、生动、有趣、接地气的方式结合真实业务场景分析每种设计模式,治愈“设计模式选择困难症”;之后介绍4种常用的新设计模式;总结软件架构、设计模式与应用框架之间的区别。
如果你已经有编程经验,那么建议你重学设计模式。
如果你是工程师或者架构师,那么本书将带给你的认知。
如果你觉得设计模式晦涩难懂,那么本书将让你醍醐灌顶。
如果你看框架源码总是力不从心,那么本书就是“内功心法”。
学习设计模式的过程是对自己认知提升的过程,是从不知道自己不知道,到知道自己不知道,到知道自己知道,到不知道自己知道的过程。
——蒋孟枝(James),咕泡学院联合创始人
本书将成为咕泡学院所有技术书籍的总纲,要想在技术上深耕,必须从设计模式开始。
——谭锋(Mic),咕泡学院联合创始人
让30W+学员受益的“手写源码学习法”开创者
影响100W+程序员的“Java架构师成长路径”制定人
书《Spring 5核心原理与30个类手写实战》作者
书《Netty 4核心原理与手写RPC框架实战》作者
多年“踩坑填坑”和“教学答疑”经验总结
“首著”基于经典框架源码和真实业务场景讲设计模式
含JDK、Spring、MyBatis、Tomcat、Netty等源码
让设计模式从经典应用中来再到真实实践中去真正落地
如果你已经有编程经验,那么一定要学一遍设计模式
如果你是工程师或架构师,本书将颠覆你以前的认知
如果你觉得设计模式晦涩难懂,本书一定能让你醍醐灌顶
如果你看框架源码总是力不从心,本书就是“内功心法”
评论晒单