对于java现有松耦合的个人看法

个人拙见:
现在流行使用注解和Xml来达到松耦合的目的,但也大量使用了反射,这造成一定的资源消耗,而且维护起来比较繁琐,个人概念中,松耦合就是即插即用,为什么需要那么麻烦去配置XML,个人觉得看似更简单了,不过使用xml的规则也越来越复杂,不过是将从java源文件更改换到了xml文件上,如果一个实现类的方法我需要修改,那我依然需要动用源文件啊,方便也只是方便在,不知道实现类的名字,所以用xml可以无视实现类名字的变化,但是这样安全性也没想的那么好吧,而且还需要读取xml文件,然后再通过反射,我用框架写一些小服务,也需要去xml配置实现这些的。
个人认为:
可以java本身为主,xml为辅的方式,来进行面向接口
首先,我可以在接口当中,定义一个静态集合(map或者list,具体看需求),泛型为接口本身,然后定义一个 接口 getImpelement(动态参数)方法;
然后在实现类中,显式的创建无参构造或者按需求构建有参构造,创建get方法,利用重载,获取相应实现类的对象,然后重要的是在实现类中使用static静态代码块,内部使用 集合.add()的方式,将new的对象传入(这个对象我个人认为可以是无参对象,毕竟有get方法,可以定义,当然因为向接口集合中添加了,所以也可以直接使用接口集合中的唯一对象),然后在接口中定义
就需要考虑如何能将这些实现类的对象传入接口集合中,个人想法就是在命名上思考,可以统一为 implement_实现名,这样我在程序入口添加一个扫描字节码全文件的方式,统一将所有实现类的文件名使用 Class.formName(),进行加载,会自动执行静态代码块,将自身对象传入每个所对应的接口,因为只是加载,不需要用获取的Class去创建对象,所以对资源消耗不大,而且省略了xml的一些繁琐配置,这样当我们需要使用接口调用实现类的方法的时候,就可以直接从接口集合里面取,当我们需要传入不同参数,也有可以直接使用接口的get实现的方法,来获取不同的实现类对象;
如果需要使用外部实现类,就可以使用xml配置一下就好了;

以上纯属个人拙见,不知道会不会有人阅读到这篇胡思乱想,个人会继续在实际开发中,使用此种方法,去验证不足之处,希望大家集思广益,共同探讨,共同进步。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值