架构师 (一) 系统如何优雅

什么样的代码是臃肿的

    业务代码与技术代码耦合

    主业务代码与增值业务代码耦合

    多余依赖关系

何为耦合,其实就是两者有依赖关系

先看一段代码:

架构师 (一) 系统如何优雅_第1张图片

其实 真正的业务代码只有一行: 就是 mapper.selectByPrimaryKey(id) 

1  先从缓存中获取数据,没有再进行查询数据库 这其实是一种技术代码

2  ls.errorlog  操作成功 ,打印日志,是一种增值业务

3 业务代码其实就有  mapper 是业务代码,其他的 缓存 依赖 其实都是多余依赖

 

缓存 咖啡因子  ehcache (监控)

元级依赖  数据库依赖  操作系统依赖

 

消除依赖目的

     可读性差

     可复用差

     可维护性差

     易变性差

    运行期依赖(比如依赖缓存,服务器启动的时候,缓存挂了,主业务代码就会挂掉)

 

解决方法:  注解(annotation), 注解其实就是标签

1 携带数据附属品

2 特定场景下由外部解析产生作用

 

架构师 (一) 系统如何优雅_第2张图片

 

retention source 是 java 代码中,编译成 class 之后就会消失,比如 @Override

class 打包变成 class 之后 基本上没有

runtime 基本上 都是这个注解

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(架构师 (一) 系统如何优雅)