代码之家  ›  专栏  ›  技术社区  ›  jjclarkson Andy Rose

我的函数代码应该拆分成另一个源文件吗?

  •  1
  • jjclarkson Andy Rose  · 技术社区  · 15 年前

    我发现自己复制和粘贴了两次相同的代码。

    现在我有一个函数要在两个源文件之间共享。它将从两个源文件传递相同的变量。如果我不想“重复我自己”,这是最好的做法吗?如果两个文件都有其他独立的功能,这些功能应该位于库文件中,还是位于源文件中?你如何决定一门课是否合适?你如何决定何时开始把事情分开?

    4 回复  |  直到 13 年前
        1
  •  4
  •   anthony    15 年前

    不要重复你自己。使用共享函数创建包含文件。

        2
  •  2
  •   Jesus Rodriguez    15 年前

    你应该读一本面向对象的分析和设计书。这些问题是关于OO原则的。

    在我看来,你最好的选择是读一本书,比如: HF: OOA&D . 我读了它,它回答了你所有的问题。

    如果两个文件重复某些代码,您应该在函数中取出该代码,并在两个文件中使用它。

    记住,一个类只有一个职责,那么,您必须将该函数放在正确的位置,例如,如果它是一个实用程序代码,则不能将它放在实用程序模块中。

    什么时候上课合适?你必须对你的问题的用例做一些领域分析,并查看作为你程序候选类的名词。

    如何确定?你必须在结束之前对你的问题做一些分析和设计。

    简言之,我推荐你那本书,这是你所需要的:pp

        3
  •  2
  •   Dave Archer    15 年前

    同意上面的回答-不要重复(哈哈,重复别人的回答很讽刺!).

    关于类和函数,我不会说有一个明确的答案。

    我听说过,为了速度,我们有时应该放弃OO功能,但我认为这与现在的计算机速度无关。我个人总是喜欢在应用程序/网站开始变得比很小更大的时候就开始上课。例如,您可以同时使用两个函数来在一个页面上实现特定的结果。重用这意味着您必须a)再次调用两者,或者b)编写第三个函数来调用另一个2。在这种情况下,一个班级开始看起来更吸引人。

    类很容易测试(尤其是使用模拟框架)。 类还可以方便地序列化包含大量数据的对象

        4
  •  1
  •   Steve Gattuso Derick Bailey    15 年前

    不久前,我读了一篇关于复制/粘贴代码的文章(我相信编写恐怖代码,但如果我错了就纠正我)。基本上,如果您在代码中使用了大量的复制/粘贴,那么您应该考虑将其转换为一个函数,这是一个很好的实践,因为它允许您简化代码,不仅使其更优化,而且使其他开发人员更容易跟随。