什么是更好的调用内部所有需要的代码的函数,或内部具有所需代码的其他函数的函数?

时间:2014-01-20 00:47:57

标签: java javascript php c++

我不知道如何更准确地表达问题(因为我的英语不太好),但让我用一些例子解释(我主要在php,javascript和java上工作):

哪种风格更好或更有效?

function foo(){
    //somecode1
    requiredByFoo();
}
function requiredByFoo(){
    //somecode2
}

function foo(){
   //someCode1
   //somecode2
}

我问这个是因为我正在学习编程,我希望养成良好的习惯并做有效的代码。谢谢 ! :d

4 个答案:

答案 0 :(得分:1)

这一切都取决于实际的代码是什么,但总的来说,正如人们所说,更多的方法大多是一件好事。每种方法都应该做一件事,它会使代码块更小。

    如果方法很小且很多,
  • 测试会更容易,因为你可以单独测试每个方法,如果它没有做很多事情,那么可能的结果/流程的数量更容易掌握。
  • 当以这种方式编写时,代码非常更容易 理解,它减少了读取一行一行代码以了解每种方法的作用的必要性,如果它做它的名字而且它很小,那通常就足够了。
  • 如果将代码制作成较小的部分,则重用代码的不同部分会更容易,而也会减少代码重复

现在我可能还有很多其他专业人士没有考虑过。如果您需要更多信息,请查看 SRP (单一责任原则)以及其他精益和敏捷实践,这些都是众所周知的。

答案 1 :(得分:0)

每个功能只能根据您的设计做一件事。如果SomeCode 1和SomeCode 2是两个共同执行功能的部分,请采用后面的方法。

答案 2 :(得分:0)

就过程语言而言,编写一个能够提供一个特定任务的函数总是很好的,这样你就可以进一步重用它。因此,请始终保持您的功能代码尽可能小,并从另一个函数调用一个函数。

答案 3 :(得分:0)

在内存使用方面,两个代码都将使用相同的内存,因为包含函数代码的类将在内存中加载一次,无论您调用函数多少次。 在设计方面,您的代码应该尽可能可扩展,因此您应该在尽可能多的类和函数中分割业务逻辑。

如前所述,这不会导致Java中更多的内存消耗。