摘要: 1. 运行所有测试 2. 不可重复 3. 表达了程序员的意图 4. 尽可能减少类和方法的数量 不可重复 重复有多种表现,极其雷同的代码当然是重复,类似的代码往往可以调整的更相似,这样就能更容易的进行重构 重复也有实现上的重复等其他一些形态。例如,在某个群集类中可能会有两个方法 int size() 阅读全文
posted @ 2024-07-19 16:32 狗狗没有坏心眼 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 模板模式(Template Pattern)是一种行为设计模式,它在一个方法中定义一个操作的骨架,而将一些步骤的实现延迟到子类中。模板方法模式使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 模板模式的组成部分 抽象类(Abstract Class): 定义算法的骨架,并包含一个模板 阅读全文
posted @ 2024-07-17 17:55 狗狗没有坏心眼 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 定律一:在编写不能通过的单元测试前,不可编写生产代码。 解释: 这条定律的意思是,你不能直接编写实现功能的生产代码,而是在开始之前需要先编写一个单元测试来验证这个功能。这个单元测试应该是你期望生产代码通过的测试。只有在有了这个测试之后,你才能开始编写生产代码。 目的: 确保每一段生产代码都有明确的测 阅读全文
posted @ 2024-07-17 17:44 狗狗没有坏心眼 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 特例模式指的是为处理某些特殊情况而创建的特殊类或对象。这些类或对象专门用于处理特定的异常情况或边界条件,以便简化主业务逻辑的处理。 应用场景:用于需要处理某些特殊输入、边界条件或错误情况的场景。 例如,处理数据库查询时,返回一个特例对象表示没有找到数据。 空对象模式通过提供一个行为为空的对象来替代n 阅读全文
posted @ 2024-07-17 11:45 狗狗没有坏心眼 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 为什么使用这个状态设计模式? 在预约下单模块设计订单状态的时候有7种,用户下单之后变更为待支付,如果取消订单就修改为已取消,如果支付了就修改为派单中,之后服务人员和机构进行抢单或派单修改为待服务、开始服务修改为服务中、订单完成之后修改为已完成。如果有一处用户想取消订单,需要自动退款并将订单状态修改为 阅读全文
posted @ 2024-04-28 17:36 狗狗没有坏心眼 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 前置知识 Java中有些引用类型? Java中主要有4种引用类型,分别是:强、软、弱、虚。他们主要跟Java的垃圾回收机制有关 强引用:Java中默认的引用类型,一个对象如果具有强引用,那么只要这种引用还存在就不会被回收 软引用:在内存充足时,是不会GC这个对象的。只有在JVM内存不足的时候才会调用 阅读全文
posted @ 2024-02-23 18:02 狗狗没有坏心眼 阅读(4) 评论(0) 推荐(0) 编辑
摘要: SPI,全称 Service Provider Interface,是Java中提供的一种服务发现机制 它允许应用程序动态地加载和使用第三方提供的服务实现,而无需在代码中引用这些实现类。 Java SPI是基于接口编程思想的具体体现,通过将服务接口和其实现分离,从而具备更好的可扩展性和可维护性 如何 阅读全文
posted @ 2024-02-23 16:31 狗狗没有坏心眼 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 我们都知道在做系统设置的时候要考虑系统的安全性,需要对一些用户的个人隐私信息,比如:登录密码,身份证号,银行卡号,手机号等进行加密处理,防止用户的个人隐私被泄露。 常见的加密算法有AES、SM4、ChaCha20、3DES、DES、Blowfish、IDEA、RC5、RC6、Camellia等 目前 阅读全文
posted @ 2024-02-21 16:38 狗狗没有坏心眼 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 当使用@Bean注解声明一个方法返回一个bean对象时,有时候我们会遇到需要在bean对象创建后执行一些初始化逻辑的情况。 在这种情况下,我们可以使用initMethod属性来指定一个初始化方法。 虽然在@Bean方法中直接调用初始化逻辑也是可行的,但为什么还要标注initMethod呢? 代码清晰 阅读全文
posted @ 2024-02-20 20:10 狗狗没有坏心眼 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 1.启动类上有一个注解,是一个复合注解,由三个注解组成 第一个注解是@SpringBootConfiguration,底层是一个@Configuration注解,表示当前类是一个配置类 第二个注解是@ComponentScan是一个组件扫描,spring会扫描引导类所在包及子包下的组件 第三个注解是 阅读全文
posted @ 2024-02-01 20:52 狗狗没有坏心眼 阅读(17) 评论(0) 推荐(0) 编辑