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

什么样的代码是臃肿的

    业务代码与技术代码耦合

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

    多余依赖关系

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

先看一段代码:

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

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

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

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

 

缓存 咖啡因子  ehcache (监控)

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

 

消除依赖目的

     可读性差

     可复用差

     可维护性差

     易变性差

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

 

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

1 携带数据附属品

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

 

 

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

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

runtime 基本上 都是这个注解

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值