优雅之道
敲木鱼的小和尚
热衷于专研技术的大好青年
展开
-
重构方法学习—对对象进行重构
Move method(搬移方法)含义:在该函数最常用引用的类中建立一个有着类似行为的新函数。将旧函数变成一个单独的委托函数,或是将旧函数完全移除原因如果一个类有太多行为,或如果一个类与另一个类有太多合作而形成高度耦合,就会搬移函数。通过这种手段,可以使系统中的类更简单,这些类最终也将更干净利落的实现系统交付的任务。Move Field(搬移字段)含义:在目标类新建一个字段,修改源字段的所有用户,令他们改用新字段原因对于一个字段,在其所驻类之外的另一个类中有更多函原创 2020-12-14 23:48:20 · 340 阅读 · 0 评论 -
重构方法学习—对函数进行重构
1. Extract Method(提炼函数)含义:将一部分代码提炼成一个小的方法,然后替换原有逻辑的地方三种情况无局部变量有局部变量对局部变量再赋值局部变量只在提炼代码赋值:直接提炼成方法就可以局部变量之外也使用了此变量局部变量在提炼方法后面没有使用,那么直接在提炼的目标方法中修改就可以了局部变量在提炼方法后面仍然使用,那么通过返回结果返回该变量改变后的值2. Inline Method(内联函数)含义:在函数调用的地方,使用函数体来替换函数的调用原创 2020-12-11 00:31:46 · 342 阅读 · 0 评论 -
映射框架--MapStruct--001--基本使用
简介MapStruct是满足JSR269规范的一个Java注解处理器,用于为Java Bean生成类型安全且高性能的映射。它基于编译阶段生成get/set代码,此实现过程中没有反射,不会造成额外的性能损失。您所要做的就是定义一个mapper接口(@Mapper),该接口用于声明所有必须的映射方法。在编译期间MapStruct会为该接口自动生成实现类。该实现类使用简单的Java方法调用来映射source-target对象,在此过程中没有反射或类似的行为发生。编译时期使用自动生成get和set方法,进行原创 2020-08-31 21:05:36 · 326 阅读 · 0 评论 -
优雅之道--001--灾难性的判空操作
优雅的判空对于项目中存在很多需要判空的操作,杂糅在代码里面,增加了很多非业务代码,如何合理的判空,称为了一个很重要的点,直接介绍几种判空操作1. NullObject模式NullObject模式:在获取对象的时候,如果对象为空,就返回一个符合返回类型的空对象。这样在处理的时候都可以按照对象统一处理,只是在空对象中,一些方法的返回是按照不存在的逻辑进行的。在博客的迭代器模式中,使用了空对象...原创 2019-11-20 14:21:38 · 143 阅读 · 0 评论