javaweb传统开发困惑
高内聚低耦合
问题一:层与层之间紧密耦合在一起,接口与具体实现紧密耦合在了一起。
解决思路:程序代码中不要手动new对象,第三方根据要求为程序提供需要的Bean对象。
问题二:通用地事务功能耦合在业务代码中,通用的日志功能耦合在业务代码中。
解决思路:程序代码不要手动new对象,第三方根据要求为程序提供需要的Bean对象的代理对象。
IOC思想:Inversion of Control,控制反转,强调的是原来在程序中创建Bean的权利反转给第三发。
DI思想:Dependency Injection,依赖注入,强调的Bean之间的关系,这种关系第三方负责去设置。
AOP思想:Aspect Oriented Programming,面向切面编程,功能的横向抽取主要的实现方式就是Proxy。