自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 Smart Input Pro:程序员的中英输入“自动挡”,彻底告别切输入法的手忙脚乱!

1. 场景化自动切换Smart Input Pro最吸引人的特性之一是根据不同编辑场景自动切换输入法。例如,在编写代码时,插件会自动切换到英文模式;而在撰写代码注释或提交Git信息时,则会自动切换到中文输入法。2. 灵活的自定义设置除了默认的场景识别,Smart Input Pro还允许用户根据个人偏好进行高度定制。通过设置特定的正则表达式规则,可以针对不同名称的字符串字面量调整输入法。此外,对于特殊场景如Translation插件翻译窗口,也可以配置自动切换至指定的输入法。

2025-03-14 06:29:57 308

原创 行为型-观察者模式(Observer Pattern)

又被称为发布-订阅(Publish/Subscribe)模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。

2024-12-10 03:43:46 403 1

原创 行为型-状态模式(State Pattern)

对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。

2024-12-10 03:43:04 159

原创 行为型-责任链模式(Chain of Responsibility Pattern)

又名职责链模式,为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。

2024-12-06 04:13:15 518

原创 行为型-命令模式(Command Pattern)

将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行存储、传递、调用、增加与管理。

2024-12-05 20:32:41 375

原创 行为型-策略模式(Flyweight Pattern)

定义一系列算法, 并将每种算法分别放入独立的类中, 以使算法的对象能够相互替换。

2024-12-05 03:07:44 992

原创 行为型-模板方法模式(Template Method Pattern)

定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。

2024-12-05 03:06:50 577

原创 结构型-享元模式(Flyweight Pattern)

运用共享技术来有效地支持大量细粒度对象的复用。它通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。

2024-12-04 04:06:22 856

原创 结构型-组合模式(Composite Pattern)

又名部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。

2024-12-04 02:51:51 533

原创 结构型-外观模式(Facade Pattern)

为一个复杂的系统提供了一个简化的接口。通过这种方式,可以隐藏系统的复杂性,并对外提供一个更易于使用的统一接口。外观模式的主要目的是简化客户端与子系统之间的交互,使得客户端不需要直接与复杂的子系统组件进行沟通。

2024-12-03 08:04:01 489

原创 解决IDEA的easycode插件生成的mapper.xml文件字段之间逗号丢失

easycode插件生成的mapper.xml文件字段之间逗号丢失,如图。

2024-12-03 03:07:45 491

原创 结构型-代理模式(Proxy Pattern)

由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介。Java中的代理按照代理类生成时机不同又分为静态代理和动态代理。静态代理代理类在编译期就生成,而动态代理代理类则是在Java运行时动态生成。动态代理分为JDK代理和CGLib代理两种。

2024-12-03 02:14:21 1397

原创 结构型-装饰模式(Decorator Pattern)

指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式。从上面的代码可以看出,BufferedWriter 通过装饰者模式实现了它的功能。BufferedWriter 本身并不提供实际的写入操作,它将所有的写入操作委托给了它所包装的 Writer(比如 FileWriter)。同时,BufferedWriter 通过缓存字符并在缓冲区填满时进行一次性写入,提升了性能。

2024-11-30 00:02:55 914

原创 结构型-桥接模式(Bridge Pattern)

将抽象与实现分离,使它们可以独立变化。它是用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度。

2024-11-29 06:47:45 355

原创 结构型-适配器模式(Adapter Pattern)

将一客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作,主要目的是兼容性。适配器模式可以细分为类适配器模式,对象适配器模式和接口适配器模式。

2024-11-29 05:15:22 739

原创 创建型-建造者模式(Builder Pattern)

将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。建造者模式(Builder Pattern) 又叫生成器模式,是一种对象构建模式。它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。建造者模式 是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。

2024-11-28 18:08:58 588

原创 设计模式概念与分类

定义:软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题,以及该问题的解决方案。也就是说,它是解决特定问题的一系列套路,是前辈们的代码设计经验的总结,具有一定的普遍性,可以反复使用。代表了代码的最佳实践,被有经验的开发人员所使用设计模式是很多被重复使用并知晓的,主要是对代码和经验的总结使用设计模式是为了重用代码,让代码更容易被他人理解,保证代码的可靠性。

2024-11-28 03:29:56 805

原创 创建型-抽象工厂模式(Abstract Factory Pattern)

是一种为访问类提供一个创建一组相关或相互依赖对象的接口,且访问类无须指定所要产品的具体类就能得到同族的不同等级的产品的模式结构。抽象工厂模式是工厂方法模式的升级版本,将简单工厂模式和工厂方法模式进行整合。工厂方法模式只生产一个等级的产品,而抽象工厂模式可生产多个等级的产品。将工厂抽象成两层,抽象工厂和具体实现的工厂子类。程序员可以根据创建对象类型使用对应的工厂子类。这样将单个的简单工厂类变成了工厂簇,更利于代码的维护和扩展。

2024-11-28 02:17:26 454

原创 创建型-工厂方法模式(Factory Method Pattern)

定义一个用于创建对象的接口,让子类决定实例化哪个产品类对象。工厂方法使一个产品类的实例化延迟到其工厂的子类。

2024-11-27 17:08:03 241

原创 非GoF23种设计模式-简单工厂模式

简单工厂模式不是GoF23种设计模式之一,简单工厂模式通过一个工厂类来决定具体应该实例化哪一个具体的类。

2024-11-27 15:52:02 195

原创 创建型-原型模式(Prototype Pattern)

用一个已经创建的实例作为原型,通过复制该对象来创建一个和原型模式相同的对象。

2024-11-27 05:24:45 953

原创 创建型-单例模式(Singleton Pattern)

双重检查锁模式是一种非常好的单例实现模式,解决了单例、性能、线程安全问题,上面的双重检测锁模式看上去完美无缺,其实是存在问题,在多线程的情况下,可能会出现空指针问题,出现问题的原因是JVM在实例化对象的时候会进行优化和指令重排序操作。单例模式使用的场景:需要频繁的进行创建和销毁的对象、创建对象时耗时过多或耗费资源过多(即:重量级对象),但又经常用到的对象、工具类对象、频繁访问数据库或文件的对象(比如数据源、session 工厂等)枚举类实现单例模式是唯一一种不会被破坏的单例实现模式。输出结果为false。

2024-11-27 05:19:16 877

原创 7大设计模式原则

软件实体(类、模块、函数)应该对扩展开放,对修改关闭。

2024-11-27 05:10:45 573

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除