化静为动
有哲学基础的都知道,运动是绝对的,静止是相对的。
静态语言既然是客观存在,那么他必然遵守这个道。
但是如何化静为动呢?
还好,我们有两大法宝:多态,反射,利用这两个法宝,就可以实现对象的运行期邦定。
关于怎样利用反射实现动态加载Bean的文章、代码那是相当多了,我就不再举例了。
如果想深入了解的话,可以参考Spring的做法。
关于如何利用多态和接口实现运行时绑定的文章网上也是一找一堆的,也就不多说了。
化静为动,目前所知道的最多也只能是延迟绑定,动态加载,实现对象间的弱耦合。
其实利用反射这种做法有待商榷。
利用反射最经常用到的方法就是将Bean的属性关系等设置到XML文件中。
把本来属于程序员的工作以XML的形式展示在最终用户的面前,不能想象会有什么后果?
或许这样作可以使得程序员的设计显得优秀,
但是这样却使得代码和XML文件的耦合性加大。
一个系统的耦合程度是固定的,代码之间的耦合度降低了,那么代码和文件,
文件和文件的耦合度就不可避免的增加了。
程序员要做的只是在这几种选择之中做到均衡,不能太灵活,全部以配置文件的方式,
也不能全部在代码中耦合。
化静为动完。
浙公网安备 33010602011771号