As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center提供指导。
已关闭8年。
我只是想知道-为相对简单的任务创建函数(分解)是否是不好的编程风格?
例如,在PHP中,我感到烦人的是,在 session ,发布,获取和cookie中使用'$ _',然后使用大写字母。因此,如果我创建了一个名为setSesVar('key','value')的函数,该函数会为我创建一个 session 变量,那不好吗?每次为此调用一个函数的开销值得吗?还是不相关/自己的偏好?
其他一些例子:
C++(和Java)中的 printLn函数 javascript中getElementBydId的简写形式(假设我不使用jQuery或其他库) 重定向以代替PHP 中的 header ('Location:'。url)
还有一个稍微偏离主题的问题-我习惯于使用具有更多“严格”数组的语言;在PHP中,您可以在购买时添加一个元素,只需说myArray [] ='newElement'。我觉得我应该做myArray [sizeof(myArray)],但我敢打赌,添加不必要的代码可能是不好的风格。 首先,PHP中没有的任何东西都是您的代码新手必须弄清楚的。如果我看到 其次,如果这些函数最终相互调用,则最终会导致老鼠的函数调用嵌套。跟随10行(甚至30行)的函数比跟踪调用2行函数的2行函数要容易得多,该2行函数调用了另外2行函数,而该2行函数可能也可能不调用另外2行行功能。为了跟踪代码的方式,您必须悠悠浏览文件(或更糟糕的是,在一系列不同的文件之间使用制表符)。
在我看来,PHP内置的任何内容(可以用简单的一行代码表示)都不应该拥有自己的功能。我建议将函数限制为至少三行,但有一个异常(exception):需要访问对象内部的方法(例如getter或setter)可以较小。但是大多数函数应该做一些PHP尚未完成的事情。如果它们不这样做,那么您将无缘无故地破坏功能的目的并增加复杂性。
已关闭8年。
我只是想知道-为相对简单的任务创建函数(分解)是否是不好的编程风格?
例如,在PHP中,我感到烦人的是,在 session ,发布,获取和cookie中使用'$ _',然后使用大写字母。因此,如果我创建了一个名为setSesVar('key','value')的函数,该函数会为我创建一个 session 变量,那不好吗?每次为此调用一个函数的开销值得吗?还是不相关/自己的偏好?
其他一些例子:
C++(和Java)中的
还有一个稍微偏离主题的问题-我习惯于使用具有更多“严格”数组的语言;在PHP中,您可以在购买时添加一个元素,只需说myArray [] ='newElement'。我觉得我应该做myArray [sizeof(myArray)],但我敢打赌,添加不必要的代码可能是不好的风格。
最佳答案
取决于函数的功能以及执行的操作量。如果您将所有内容都做成一个单行函数,那么您并没有真正摆脱任何复杂性。实际上,您通过两种方式增加了复杂性:
$_SESSION['stuff'] = "some value";
,我知道它在做什么-花费了一个多小时使用PHP的人也是如此。另一方面,如果我看到setSessionVar('stuff', 'some value');
,则必须去确认setSessionVar
的作用。我的意思是,除了在$_SESSION
中设置内容外,还需要做更多的事情;否则,为什么不只做呢? 在我看来,PHP内置的任何内容(可以用简单的一行代码表示)都不应该拥有自己的功能。我建议将函数限制为至少三行,但有一个异常(exception):需要访问对象内部的方法(例如getter或setter)可以较小。但是大多数函数应该做一些PHP尚未完成的事情。如果它们不这样做,那么您将无缘无故地破坏功能的目的并增加复杂性。