上一页 1 ··· 8 9 10 11 12 13 14 下一页
摘要: 上一节说到了桥接模式,桥接模式有两种理解方式。第一种理解方式是“将抽象和实现解耦,让它们能独立开发”。这种理解方式比较特别,应用场景也不多。另一种理解方式更加简单,类似“组合优于继承”设计原则,这种理解方式更加通用,应用场景比较多。不管是哪种理解方式,它们的代码结构都是相同的,都是一种类之间的组合关 阅读全文
posted @ 2021-06-18 15:14 hochan_100 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 上次我们学习了第一种结构型模式:代理模式。它在不改变原始类(或者叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。代理模式在平时的开发经常被用到,常用在业务系统中开发一些非功能性需求,比如:监控、统计、鉴权、限流、事务、幂等、日志。 我们再学习另外一种结构型模式:桥接模式。桥接模式的代码实 阅读全文
posted @ 2021-06-18 14:03 hochan_100 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 作为 Spring 的关键功能支撑,Spring 事件是一个相对独立的点。或许你从没有在自己的项目中使用过 Spring 事件,但是你一定见过它的相关日志。而且在未来的编程实践中,你会发现,一旦你用上了 Spring 事件,往往完成的都是一些有趣的、强大的功能,例如动态配置。 案例 1:试图处理并不 阅读全文
posted @ 2021-06-18 10:45 hochan_100 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 创建型模式主要解决对象的创建问题,封装复杂的创建过程,解耦对象的创建代码和使用代码。 其中,单例模式用来创建全局唯一的对象。工厂模式用来创建不同但是相关类型的对象(继承同一父类或者接口的一组子类),由给定的参数来决定创建哪种类型的对象。建造者模式是用来创建复杂对象,可以通过设置不同的可选参数,“定制 阅读全文
posted @ 2021-06-17 18:18 hochan_100 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 当一个系统采用的切面越来越多时,因为执行顺序而导致的问题便会逐步暴露出来 1:错乱混合不同类型的增强 还是沿用上节课的宿舍管理系统开发场景。 这里我们先回顾下,你就不用去翻代码了。这个宿舍管理系统保护了一个电费充值模块,它包含了一个负责电费充值的类 ElectricService,还有一个充电方法 阅读全文
posted @ 2021-06-17 16:45 hochan_100 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 对于熟悉 JavaScript 语言的前端程序员来说,原型模式是一种比较常用的开发模式。这是因为,有别于 Java、C++ 等基于类的面向对象编程语言,JavaScript 是一种基于原型的面向对象编程语言。即便 JavaScript 现在也引入了类的概念,但它也只是基于原型的语法糖而已。不过,如果 阅读全文
posted @ 2021-06-17 12:22 hochan_100 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 上次聊了工厂模式,另外一个比较常用的创建型设计模式,Builder 模式,中文翻译为建造者模式或者构建者模式,也有人叫它生成器模式。 实际上,建造者模式的原理和代码实现非常简单,掌握起来并不难,难点在于应用场景。比如,你有没有考虑过这样几个问题:直接使用构造函数或者配合 set 方法就能创建对象,为 阅读全文
posted @ 2021-06-17 10:24 hochan_100 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 案例 1:构造器内抛空指针异常 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public clas 阅读全文
posted @ 2021-06-16 16:16 hochan_100 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 当创建对象是一个“大工程”的时候,我们一般会选择使用工厂模式,来封装对象复杂的创建过程,将对象的创建和使用分离,让代码更加清晰. 那何为“大工程”呢?一种是创建过程涉及复杂的 if-else 分支判断,另一种是对象创建需要组装多个其他类对象或者需要复杂的初始化过程。 工厂模式和 DI 容器有何区别? 阅读全文
posted @ 2021-06-16 15:02 hochan_100 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 除了单例模式,还有另外一个比较常用的创建型模式:工厂模式 一般情况下,工厂模式分为三种更加细分的类型:简单工厂、工厂方法和抽象工厂。不过,在 GoF 的《设计模式》一书中,它将简单工厂模式看作是工厂方法模式的一种特例,所以工厂模式只被分成了工厂方法和抽象工厂两类。实际上,前面一种分类方法更加常见。 阅读全文
posted @ 2021-06-16 09:37 hochan_100 阅读(68) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 下一页