《spring实战》读书笔记-简化java开发

简化java开发

1、基于pojo的轻量级和最小侵入性编程
2、通过依赖注入和面向接口实现松耦合
3、基于切面和惯例进行声明式编程
4、通过切面和模板减少样板式代码

1、最小侵入性编程
反例:某些框架强迫应用继承类或实现他们的接口 导致应用与框架绑死;
正例:spring非侵入式编程通过依赖注入来使得应用之间保持松耦合
这里写图片描述
2、依赖注入 (DI)
将对象的依赖关系交给系统中负责协调各对象的第三方组件在创建对象的时候进行设定,对象本身无需创建和管理它们的依赖关系。依赖关系会被自动注入到需要它们的对象中
原因: 任何一个有实际意义的应用,都会由两个或更多的类组成,它们之间相互协作来完成特定的业务逻辑。传统做法,每个对象负责管理与自己协作的对象(即它所依赖的对象)的引用,会导致形成高度耦合和难以测试的代码。
反例:
这里写图片描述
正例:
这里写图片描述
这里写图片描述
这里写图片描述
3、面向切面
di可以使相互协作的组件之间保持松散耦合,
aop可以使遍布应用各处的功能分离出来形成可重用组件
原因:系统是由不同的组件组成,每个组件都有自己特定的功能,组件除了实现自己的核心功能外,往往会承担额外的职责,诸如,日志,安全,事务管理等一些系统服务经常需要融入到具有核心业务逻辑的组件中,这些系统服务通常被称为横切关注点,因为它们会跨越系统多个组件。
如果将这些关注点分散到系统多个组件中,那么你的代码会带来双重的复杂性
A.实现系统关注点的代码会重复出现在多个组件中,如果这些关注点的逻辑发生改变,那么将需要修改多个模块中的相关实现,即使你将关注点抽象为一个独立的模块,其它模块只是调用它的方法,但是,方法的调用还是会重复出现在各模块中,
B.组件因为那些与自己核心功能无关的代码而变得混乱
反例:
这里写图片描述
正例:
这里写图片描述
4、使用模板消除样板式代码
样板式代码:通常为实现通用和简单的任务,不得不重复编写相同的代码。
反例:
这里写图片描述
正例:
这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值