2009-06-15 28 views
1

我刚刚发现自己复制并粘贴相同的代码两次。我的功能代码应该拆分成另一个源文件吗?

现在我有一个功能,我想在两个源文件之间共享。它将从两个源文件传递相同的变量。如果我不想“重复自己”,这是否是最好的行动?如果这两个文件都具有独立的其他功能,如果它们驻留在库文件中,或者它们在源文件中?你如何决定课程是否合适?你如何确定何时开始拆分事物?

回答

4

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

2

您应该阅读面向对象的分析和设计手册。这些问题是关于面向对象的原则。

我认为你最好选择一本书,如:HF: OOA&D。我试了一下,它回答了你所有的问题。

如果2个文件正在重复某些代码,那么应该将该代码放在一个函数中并在两个文件中使用它。

请记住,一个类只有一个响应性,那么,你必须把这个函数放在正确的位置,例如,如果它是一个实用程序代码,你不能把它放在一个实用程序模块中。

当一个班是适当的?你必须对你的问题的用例做一些域名分析,并看看你的程序的候选类名词。

如何判断?在编码之前,您必须对问题进行一些分析和设计。

总之,我建议你这本书的,这就是你需要:PP

2

同意上述的答案 - 不重复(哈哈讽刺具有重复别人的答案的!)。

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

我听说过我们应该为了速度而放弃面向对象的功能,但我认为现在对计算机的速度没什么影响。一旦应用程序/网站开始获得比非常小的任何内容,我个人总是喜欢上课。例如,您可以一起使用两个函数来实现页面上的特定结果。重复使用这意味着你必须a)再次调用或b)编写第三个函数来调用其他函数2.在这种情况下,类开始看起来更具吸引力

类很容易测试,尤其是使用模拟框架。 类也可以很容易地序列化一个持有大量数据的对象

1

前一段时间,我读了一篇关于复制/粘贴代码的文章(我相信编码恐怖,但纠正我,如果我错了)。基本上,如果你在代码中使用复制/粘贴,你应该考虑把它变成一个函数,这是一个很好的做法,因为它可以让你简化代码,不仅使它更加优化,而且使它更加优化更容易让其他开发者跟随。

相关问题