代码之家  ›  专栏  ›  技术社区  ›  cwallenpoole

什么时候最好更改代码以符合标准?

  •  2
  • cwallenpoole  · 技术社区  · 16 年前

    我最近负责调试两个不同的程序,这两个程序最终至少需要共享一个XML解析脚本。一个是用PureMVC编写的,另一个是从头开始构建的。虽然最初从头开始写是有意义的(它节省了大量内存,但内存问题已经得到解决)。

    移植非PureMVC应用程序将花费大量时间和精力,不需要使用,但它将使文档和代码共享更容易。它还将降低整体学习曲线。考虑到这一点:

    1.在考虑是否最好将事物移动到一个标准时,应该考虑什么?


    (相关说明)

    有些代码有点奇怪。因为解释应用程序必须将命令从一种语法转换为另一种语法,所以有一个解释器对象是有意义的。因为需要与外部环境进行通信,所以让一个对象与环境交互,并与解释器交互,这更有意义 唯一地 .

    实际上,创建了一个反Singleton。该对象只会与解释器交互,仅此而已。如果另一个类的成员试图调用其公共方法之一,该对象将引发Exception。

    有更好的方法来实现这一点,但这肯定有点奇怪。有更多的标准方法可以完成同样的事情,尽管它们通常涉及创建非常大的类或类文件。我能找到的唯一符合标准的解决方案是,即使不是更多,也需要尽可能多的注释和解释。考虑到这一点:

    2.如果一些代码很古怪,但很有效,那么即使它变得更笨拙,也最好对其进行更改,使其不那么古怪吗?

    4 回复  |  直到 16 年前
        1
  •  2
  •   Galwegian    16 年前

    在我看来,这种类型的重构通常不会在时间表中考虑,只有在有额外时间的情况下才能进行。

    通常,航运代码的标准是它是否有效, 不一定是最好的代码解决方案 .

    所以,在回答你的问题时, 我会在有时间的时候尝试重构 首要任务仍然是生成一段功能代码。

        2
  •  2
  •   Sarah Mei    16 年前

    需要考虑的事项:

    • 它按原样工作吗?

    • 维护它的程序员有多熟练?他们是否遇到过非标准代码?将他们学习它的时间成本(包括延迟点发布的成本)与重构它的时间代价进行比较。

    如果你正在维护它,那么请考虑:

    • 在代码库的预期生命周期内(例如,从现在到重写整个代码之间的时间),处理非标准代码需要花费多少时间?

    这很难猜测,但考虑到许多代码库远远超过了其原始作者所设想的有用性。(Y2K有人吗?)我逐渐意识到什么时候重构是值得的,什么时候不值得,主要是因为经常犯“不”的错误,后来后悔。

        3
  •  1
  •   thursdaysgeek    16 年前

    只有当你无论如何都需要做出改变时才改变它。但不那么古怪总是一个好目标。花在特定软件上的大部分时间都在维护中,所以如果你能做些什么来使维护更容易,你就可以减少花在这段代码上的总时间。尽管如此,如果它正在工作并且不需要任何修改,请不要更改。

        4
  •  1
  •       16 年前