我目前正在研究一个非常复杂的程序,它有多个不同的组件,并且在不同阶段部署在客户端网站上。发布管理已经到位,但有点复杂,我需要改变一个相当基本的组件,它将影响所有其他将随它构建的库。使用反射来确定调用方法是不好的做法吗?有没有更好的办法?
我的问题是,而不是宣布它是一个突破的变化,并迫使所有图书馆更新到下一个版本的新组件,我想我可以使用反射来看看我添加的新类是否存在如果这样使用它,否则继续使用旧的方法。然后在几个月的时间内,我会通过并删除这个,并删除旧的方法。这意味着处于不同部署阶段的各个客户团队不会突然发现他们必须同时升级所有内容,或者什么也不是。
这个问题似乎像它不会有什么明显的缺点,是它认为可怕的做法是使用反射来“检测版本”,或者这听起来好不好?