多属性、多分类MySQL模式设计
一、导读 这是来自B乎的一个问答。 当数据同时具备多个属性/分类时,改如何设计表结构和查询?二、需求描述 我偶尔也会逛逛B乎,看到一些感兴趣的话题也会回复下。 有一次,看到这样的一个话题:链接:https://www.zhihu.com/questio...[mysql] 当数据同时属于多个分类时,该怎么查询?分类cate字段为[1...
2024-01-10设计模式一一一策略模式
jdk中的观察者模式: Observer 观察者 说明:观察(监听)着感兴趣的对象,通过将自身注册到感兴趣的对象中,并且由感兴趣的对象发通知来实现观察(监听)的效果。收到通知后,根据通知的内容做相应的处理。 Observable 被观察者 说明:维护者对自身感兴趣的观察...
2024-01-10设计模式系列委派模式
定义委派模式就是负责任务的调用和分配,跟 设计模式系列--代理模式很像,可以看作是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,而委派模式注重结果。实现方式一般在公司,老板有什么想法,首先是和他手下的管理人员沟通,管理人员将老板的想法落实后,将任务拆解派发...
2024-01-10设计模式开闭原则
今天我们聊设计模式中的开闭原则,即“一个软件实体应当对扩展开放,对修改关闭。即软件 实体应尽量在不修改原有代码的情况下进行扩展。”,不修改原有的代码就是新增类。我以配置数据源为例,假设我们有两个数据源,未来还可能新增一个数据源,我们应当如何写配置类呢?1.写抽象配...
2024-01-10设计模式(16)命令模式
命令模式适用场景Redo & Undo命令模式的优缺点命令模式命令模式是对一类对象公共操作的抽象,它们具有相同的方法签名,所以具有类似操作,可以被抽象出来,成为一个抽象的“命令”对象。请求以命令的形式包裹在对象中,并传给调用对象。调用者寻找可以处理该命令的合适的对象,并把该命...
2024-01-10设计模式一一一装饰模式
目的:对对象的相应功能进行增强。 应用:对提供基础功能的类进行个性化增强。 两大要素: 1,被装饰的类封装于装饰实现类的内部,从而形成对象之间的引用关系。 2,装饰实现类同样实现了原始接口(原始接口即:被装饰类实现的接口) ...
2024-01-10设计模式结构型外观模式
一、外观模式简单介绍外观模式就是解决多个复杂接口带来使用困难,起到简化用户操作的作用。二、外观模式组成部分外观类(Facade):为调用端提供统一的调用接口,外观类知道那些类负责处理请求,从而将调用端的请求代理给适当子系统处理;调用者(Client):外观接口的调用者;子系统集...
2024-01-10JAVA设计模式
一、单例模式1、饿汉式(在类初始化时直接创建对象,不存在线程安全) (1) 直接实例化public class Sigleton{ //声明一个静态变量 public static final Sigleton INSTANCE =new Sigleton(); //私有化构造方法 private Sigleton(){} } (2) 静态代码块饿汉式public class Sigleton{ public static final Sigleton IN...
2024-01-10设计模式学习单例模式
1.懒汉懒汉模式是在需要用到该实例的时候才进行实例化 优点:节约资源,在需要用到该实例的时候才初始化缺点:线程非安全,并发访问情况下,有可能多次实例化,并且每次实例化都覆盖上一次的实例public class Singleton { private static Singleton SINGLETON; private Singleton(){} public static Singleton ...
2024-01-10Go语言设计模式之结构型模式
目录一、组合模式(Composite Pattern)1.1、简述1.2、Go实现二、适配器模式(Adapter Pattern)2.1、简述2.2、Go实现三、桥接模式(Bridge Pattern)3.1、简述3.2、Go实现四、总结一、组合模式(Composite Pattern)1.1、简述在面向对象编程中,有两个常见的对象设计方法,组合和继承,两者都可以解决代码复用的问题...
2024-01-10