设计模式
本设计模式源头均来自网络,不过全是笔者自身理解后的总结,希望能对大家有帮助,当然其实我没想能有人看,算是记录下笔记,方便日后查找吧~
设计这个东西并不是越抽象越好、越低耦越好,比如我在使用某个设计模式之后发现还可以进行抽象,进一步解耦,但是这些操作下来一旦出错纠错十分困难,所以在使用时还需考虑业务。
Yancy_chan
这个作者很懒,什么都没留下…
展开
-
【程序员内功】Java设计模式并不难(四)---建造者模式
Builder Pattern1、概述建造者解决的业务场景是:创建复杂对象,对象中可能包含了许多非简单类型属性,并且这样的对象具有重复性,每个对象的属性大致相同,只是其中具体的属性值不一样。如:游戏中人物模型,游戏人物都有脸型、肤色、服装、发型、装饰等属性,这些属性对于人物模型来说其实并非一个String能解决的,而且每种人物角色的属性值都不一样,这就需要使用建造者模式。2、组成Pro...原创 2020-04-21 14:33:20 · 194 阅读 · 0 评论 -
【程序员内功】Java设计模式并不难(三)---原型模式
Prototype Pattern1、概述原型模式其实不难,它主要做的事情就是对象的拷贝,即使不说原型模式我们也可以想到在对象中提供一个方法创建当前对象的实例,然后将属性一个一个set进去。而原型模式其实就是将"拷贝"这个事情提取了一下,我们可以书写一个抽象原型类(抽象类和接口即可),其中包含clone()方法,然后使用不同的子类(具体原型类)去实现该接口覆盖clone方法(原型方法)即可,而...原创 2020-04-17 14:32:45 · 182 阅读 · 0 评论 -
【程序员内功】Java设计模式并不难(二)---单例模式
Singleton Pattern1、缘起我们在设计某些类的时候该类只需要一个实例对象,更多的实例对象对于我们来说并没有用(甚至是有害),如windows的资源管理器、线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象都可以设计成单例的,因为我们只需要一个进行资源的统筹管理即可。使用单例的好处就是节省资源,确保了对象的唯一性。2、任务管理器设计思路class TaskMana...原创 2020-04-16 15:05:52 · 203 阅读 · 0 评论 -
【程序员内功】Java设计模式并不难(一)---工厂模式
Factory Pattern1、缘起Sunny需开发一套图表库,图表可以根据系统的不同提供不同的外观,于是便有了下面的代码,根据入参type的不同,我们可以构造不同的Chart对象。乍一看代码没有问题,但仔细一想这样书写代码可能会带来哪些不变呢?首先最明显的就是使用了大量的if-else语句,不仅执行效率低,而且不利于阅读、修改。Chart类的职责过重,既需要关注对象的创建初始化,还...原创 2020-04-14 16:36:57 · 176 阅读 · 0 评论