您认为其他程序员使用简短函数与使用内联代码有什么关系?
功能示例:
//Check if all keys from $keys exist in $array
function functionName(array $array, array $keys) {
return array_diff($keys, array_keys($array));
}
functionName($mas,$keys);
VS。仅使用代码:
array_diff($keys, array_keys($mas));
答案 0 :(得分:3)
我认为在你的例子中,这是多余的。没有必要创建一个额外的函数调用,并且没有充分的理由将字节添加到文件大小。
此外,内联array_diff($keys, array_keys($mas));
比其他程序员更容易调试,而不是查看代码以确切了解functionName()
做了什么以及它位于何处。
答案 1 :(得分:0)
这取决于functionName
实际上是什么。
如果您在整个代码中使用customerDetailsAreValid
并且突然不得不添加$array['email']
的验证,那么您将会对意图与实施的分离表示感谢。
另一方面,如果你将array_diff
包裹在函数diffArray
中,则没有多大意义。
答案 2 :(得分:0)
我认为在编写逻辑时,清晰度是一个主要问题,您希望它能在任何时间内存在。
总的来说,我厌恶内联函数。我认为他们很懒惰,推广意大利面条代码,并且一般来说,开发人员对样式/可读性/清晰度完全缺乏关注。
Filesize - 我发现这个论点很随意。 js文件被传输一次然后被传输。在许多情况下,您会发现所有添加到文件大小的描述性名称等(希望是评论)。如果大小非常重要,请使用文件最小化器,使文件尽可能小。
寻找功能?怎么样试图弄清楚在一个浩繁的docReady中发生了什么。 CTL-F通常会调用查找工具。
我将承认可能存在一些简单的情况,其中内联函数对代码的可读性几乎没有减少。但是,内联方法永远不会比参考和实现的交替分离更清晰。
我的两分钱