摘要: 3.8 迪米特法则 3.8.1 何为高内聚、低耦合 高内聚: 相近的功能应该放到同一个类中,不相近的功能不要放到同一个类中。相近的功能往往会被同时修改,放到同一个类中,修改会比较集中,代码容易维护。 低耦合: 类与类之间的依赖关系简单清晰。即使两个类有依赖关系,一个类的代码改动不会或者很少导致依赖类 阅读全文
posted @ 2020-04-24 22:48 杨海星 阅读(174) 评论(0) 推荐(0)
摘要: 3.7 DRY原则 3.7.1 DRY 原则(Don’t Repeat Yourself) 三种代码重复的情况:实现逻辑重复、功能语义重复、代码执行重复。 实现逻辑重复,但功能语义不重复的代码,并不违反 DRY 原则。 实现逻辑不重复,但功能语义重复的代码,也算是违反 DRY 原则。 除此之外,代码 阅读全文
posted @ 2020-04-24 21:49 杨海星 阅读(628) 评论(0) 推荐(0)
摘要: 常用设计模式 观察者模式 利用spring的自定义事件和自定义监听器实现 创建订单 定义事件 发微信监听器 发短信监听器 策略模式 不同级别用户的费用计算 spring的特性:构造函数将接口的列表作为参数,spring会自动添加其所有实现 阅读全文
posted @ 2020-04-24 21:22 杨海星 阅读(227) 评论(0) 推荐(0)
摘要: 需求 内网访问外网接口,https协议,需要SSL证书认证。 分析 内网访问外网接口,需要走代理,现成已有nginx服务器,需要在服务器上配置https正向代理 原生nginx不支持https正向代理,需要安装ngx_http_proxy_connect_module 实现 java程序实现增加代理 阅读全文
posted @ 2020-04-24 18:24 杨海星 阅读(2534) 评论(0) 推荐(0)
摘要: 3.6 KISS原则 3.6.1 如何理解KISS原则? KISS 原则的英文描述有好几个版本: Keep It Simple and Stupid. Keep It Short and Simple. Keep It Simple and Straightforward. 意思其实差不多,翻译成中 阅读全文
posted @ 2020-04-23 18:54 杨海星 阅读(811) 评论(0) 推荐(0)
摘要: 3.5 依赖反转原则 3.5.1 控制反转(IOC) Inversion Of Control,缩写为 IOC 把这个简化版本的测试框架引入到工程中之后,只需要在框架预留的扩展点,也就是 TestCase 类中的 doTest() 抽象函数中,填充具体的测试代码就可以实现之前的功能了,完全不需要写负 阅读全文
posted @ 2020-04-21 18:37 杨海星 阅读(215) 评论(0) 推荐(0)
摘要: 3.4 接口隔离原则 3.4.1 如何理解“接口隔离原则”? 英文翻译是“ Interface Segregation Principle”,缩写为 ISP。 Robert Martin 在 SOLID 原则中是这样定义它的:“Clients should not be forced to depe 阅读全文
posted @ 2020-04-07 20:32 杨海星 阅读(189) 评论(0) 推荐(0)
摘要: 3.3 里氏替换原则 3.3.1 如何理解“里式替换原则”? 英文翻译:Liskov Substitution Principle,简写为LSP 子类对象(object of subtype/derived class)能够替换程序(program)中父类对象(object of base/pare 阅读全文
posted @ 2020-04-07 20:31 杨海星 阅读(185) 评论(0) 推荐(0)
摘要: 3.2 开闭原则 3.2.1 对扩展开放、对修改关闭 详细表述 在已有代码基础上扩展代码(新增模块、类、方法等),而非修改已有代码(修改模块、类、方法等)。 实例 API 接口监控告警的代码。 其中,AlertRule 存储告警规则,可以自由设置。 Notification 是告警通知类,支持邮件、 阅读全文
posted @ 2020-04-03 12:00 杨海星 阅读(236) 评论(0) 推荐(0)
摘要: 3.1单一职责 3.1.1 如何理解单一职责原则(SRP)? 一个类只负责完成一个职责或者功能。不要设计大而全的类,要设计粒度小、功能单一的类。单一职责原则是为了实现代码高内聚、低耦合,提高代码的复用性、可读性、可维护性。 3.1.2 如何判断类的职责是否足够单一? 不同的应用场景、不同阶段的需求背 阅读全文
posted @ 2020-04-03 11:59 杨海星 阅读(140) 评论(0) 推荐(0)