变量名称会影响网站性能吗?我知道这将是一个很小的数字,但是仍然有人可以提供在性能方面不选择长变量名的原因吗?
变量名称会影响网站性能吗?我知道这将是一个很小的数字,但是仍然有人可以提供在性能方面不选择长变量名的原因吗?
Answers:
有谁能提供在性能方面不选择长变量名的原因?
迈克尔回答了这个问题(即,否),但是变量名确实会影响程序员的性能。如果您聘请了新的开发人员或不熟悉代码的人,那么变量名长和/或令人困惑可能会分散注意力并延缓理解过程。
通常,您希望使用简短的描述性变量名,因为它们更易于阅读。想象一下,如果您不得不忽略代码十年,然后又重新理解了一切。您是要阅读“ getInput”还是“ getInputFromUserWhoInputsStringOrElseInformReaderOfError”?(当然是夸大了:P)
但是有时候,使用稍长的名称可能会有所帮助。例如,getBirthdayInput()比getInput()具有更多的描述性。您想要简化到一定程度,但是过度简化也可能会带来问题。
不,不会。一般来说,在编译代码时,变量名将被它们所引用的内存地址替换。计算机对变量名一无所知。他们只想知道值存储在哪里。
变量是符号,仅此而已。他们用名称替换了十六进制值,以便程序员可以更轻松地了解自己在做什么。因此,选择较短的变量名称将不会提高性能。
就是说,您可能会在编译时间和JIT首次解释方面获得微小的改进(我在说微观的),但这只是因为解析器读取变量名所需的CPU周期更少。这是一次性的成本,并且在担心性能时在统计上微不足道。
尽管Michael对于应用程序编程是正确的,但您的问题是使用PHP(一种解释型语言)进行的Web开发。在这种情况下,需要从文件中读取代码,然后进行解释。在这种情况下,较长的变量名将花费较长的时间来加载和解析。
但是,这样做对性能的影响不大,对于整个脚本而言,可能在几分之一毫秒的范围内。您始终可以使用示例脚本进行尝试,并使用一种计时方法,例如http://www.developerfusion.com/code/2058/determine-execution-time-in-php/中详细介绍的方法,但这可能不会开始计时,直到读完文件为止。此外,重试之间的执行时间将比变量名长度之间的差异大得多,因此您将需要执行大量的重试并取平均,然后才能获得一个有意义的平均值。
正如BlackJack所指出的那样,较长的名称可能更难于理解,并且花很多力气才能键入(而且更容易出现错字)。尽管可能会获得很小的性能提升,但这并不能证明为程序员带来的额外麻烦。因此,首选简短,简洁且易于理解的变量名。
简而言之,不必担心变量长度名称,而可以专注于编写干净,有意义的代码。
也许:
服务器代码通常是经过编译的,并且出于上述原因,变量名的长度不会影响它。但是,如果使用变量名来构建标记,则会进行各种字符串操作。由于HTTP响应(包含标记/返回的json /返回的数据)较大,因此花费的时间会稍长一些,尽管差异可以忽略不计。如果未缩小JavaScript,它将是一个更大的文件,需要更长的时间才能到达客户端。
除了缩小JavaScript文件之外,对Web应用程序/网站的任何优化工作都将更好地用于其他方面。
是的,它可以,但不是您正在考虑的意义。
如果变量名不正确,开发人员将很容易在源代码中感到困惑。这将很难阅读和理解。
最后,源代码将很难维护,并且几乎不可能使其发展。这将不可避免地导致更高的维护成本,更高的开发成本,更多的错误以及更差的性能。
变量名在运行时绝对没有影响,而在编译时完全可以忽略。但是,坏名字不可避免地会导致性能下降,因为没有人理解代码,并且代码最终陷入一堆又一堆的骇客之中,从而使情况每况愈下。
阅读以下内容以了解良好的变量名:http : //tottinge.blogsome.com/含义fulnames
请注意,如果您觉得需要很长的变量名,则意味着您的代码架构不良。变量名称始终在上下文中表示:名称空间,类名称,文件名,文件夹,函数名称等。因此,如果名称需要很长才能明确,则表示您要命名的名称是DOESN'贝隆。在这种情况下,请考虑将代码放在适当的位置,或者在尚不存在的位置创建该位置。
对于php,答案显然是肯定的。
表示不会有所作为的答案不一定正确。例如,我有一个小的php脚本,只有几行,但是在完成工作之前它必须循环约1,950,000次,因此,尽管可能不会注意到脚本的一次运行,但这些零点几秒的时间实际上相加循环很多次。
您可以使用短名称来减少代码的可读性。您将节省一两秒。但是,由于代码的可读性较差,因此很难改进代码并使之更快。因此,带有短名称的无法维护,无法改进的代码最终将以明显较慢的速度运行。
因此,回答您的问题(“是否会影响性能”):是的,但不是您喜欢的方式。