Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 重构工具的优缺点_Language Agnostic_Refactoring - Fatal编程技术网

Language agnostic 重构工具的优缺点

Language agnostic 重构工具的优缺点,language-agnostic,refactoring,Language Agnostic,Refactoring,一般来说,重构工具的优点和缺点是什么?优点:显而易见的一点:速度 缺点: 它们将您推向它们包含的重构,而您可能会忽略它们不包含的重构,这对您不利 我只试过一个,使用VS,它明显减慢了应用程序的速度。我无法决定它是否值得,但我不得不重建机器,还没有重新安装,所以我想这告诉了你 代码改进建议。(可以是 (优点和缺点) 消除代码噪音(优势) 重命名变量、方法(优点) 我认为修改代码或编写代码的速度是最大的优势。我有CodeRush,没有它我就迷路了 我想说,最大的缺点是内存占用,如果你的内存很紧,

一般来说,重构工具的优点和缺点是什么?

优点:显而易见的一点:速度

缺点:

  • 它们将您推向它们包含的重构,而您可能会忽略它们不包含的重构,这对您不利
  • 我只试过一个,使用VS,它明显减慢了应用程序的速度。我无法决定它是否值得,但我不得不重建机器,还没有重新安装,所以我想这告诉了你
      • 代码改进建议。(可以是 (优点和缺点)
      • 消除代码噪音(优势)
      • 重命名变量、方法(优点)

      我认为修改代码或编写代码的速度是最大的优势。我有CodeRush,没有它我就迷路了

      我想说,最大的缺点是内存占用,如果你的内存很紧,那么它可能会带来更多的伤害。但是我的每个开发设备上都有4Gb和8Gb,所以我没有注意到。(并不是说它们占用了大量内存,但如果您的内存小于等于2Gb,那么它将是显而易见的)


      此外,我还注意到.NET的两大重构工具(RefactorPro/CodeRush和Resharper)在其代码分析/建议引擎中的网站项目(一种我无法控制的遗留继承)方面都存在问题。似乎认为一切都不好(事实上,这可能是对网站项目的一个相当准确的评估,但我不想经常被提醒)

      优势

      • 如果有工具帮助,您更有可能进行重构
      • 一个工具在第一次进行“重命名”类型重构时,更可能是正确的
      • 有一个工具可以让您在代码库上进行重构,而无需手动进行单元测试
      • 一个工具可以节省你很多时间
      • 两种主流工具(RefactorPro/CodeRush和Resharper)也将突出显示大多数编码错误,而无需编译
      • 如果您没有遵守他们的最佳实践概念,这两个主要工具都会突出显示出来
      缺点

      • 有时,由于工具中的包或代码库中的反射等原因,工具会在您没有预料到的情况下更改代码的含义
      • 使用更少的单元测试可能会让您感到安全
      • 一个工具可能会非常慢,所以对于重命名本地变量等,手工操作会更快
      • 工具会大大降低开发系统的速度,因为在编辑代码时,用来保持数据库更新的工具
      • 学习工具需要时间
      • 一个工具会把你推向它们包含的重构,而你可能会忽略它们没有包含的重构,这对你不利
      • 对于大型代码库,一个工具将占用大量内存,然而现在内存是廉价的
      • 没有工具能够很好地处理非常大的解决方案文件
      • 你必须让你的老板同意支付工具的费用,这可能需要比工具节省的时间更长的时间
      • 您可能需要让IT部门同意安装该工具
      • 如果他们不让你使用相同的工具,你将在下一份工作中迷失方向:-)