当我的一个项目完成后,如何确定哪些程序集是不必要引用的,并把它们删除?
------解决思路----------------------
逐个移除程序集,编译看会不会出错。不出错就可以移除
------解决思路----------------------
或者 在后台移除 using 语句,,如果对引用的类库比较熟悉 就可以根据后台使用控件或者类的情况 直接删除。
------解决思路----------------------
这个不好确定,因为有些程序集不是直接引用的。
打个比方,你自己开发的程序集A,引用了一个外部的程序集B,而程序集B又需要程序集C才能运行。一般可以在A工程里将B和C都引用,这时候你删除C的话编译是没有问题的,但是运行时B会因为缺少C而报错。
当然,还有另一种做法就是将C这种间接引用的库放入一个统一的目录,编译后集中复制到输出目录。不过这样做的话问题依旧存在,你没法一下子确定哪些是你的程序集A不需要的引用。
------解决思路----------------------
手工吧。
如果在一个团队中,那么可以对凡是找到一个可以移除的引用的程序员奖励200块钱。这样不出10分钟,就再也找不到多余的引用了。
------解决思路----------------------
换句话说,这个东东其实通常没有技术的人去处理它也行啊。
它看起来高大上,其实其出现频率只有万分之一,而且还无害。只是你体验到需要修改的时候去手工处理,反而不需要强迫自己去采用技术手段。
------解决思路----------------------
多了又没事,别折腾了,万一用了各种配置反射之类的,到时候删错了反而麻烦
------解决思路----------------------
如果是系统自动加上的引用,删不删没有什么区别,
而自己加的引用,当然还是要自己手动删除.
------解决思路----------------------
一般来说一个项目很少超过10个第三方的东西,只要你有svn随时能撤销修改就ok
直接移除引用的程序集,编译不报错,就提交svn更新,编译报错直接从svn回滚。
当然ls有人考虑IOC注入一类滴也是合理滴,那些东西是外部配置滴,所以实际也很难在编译期就了解那些东西有用,那些东西没用