asp.net c#是代码性能下降的空行吗?

时间:2013-07-15 05:44:46

标签: c# asp.net performance

快速问题:c#asp.net代码中的空行是否因为文件较大而导致性能下降? 或者是通过编译来处理?有哪些压缩技术适用于这种情况?

4 个答案:

答案 0 :(得分:2)

好吧,如果你在谈论在你的代码后面或C#代码文件中有空格,那么你的编译就不会计算它们。

现代编译器,例如.net框架编译器将在编译代码时删除空格和其他注释以及标点符号。

此过程也称为tokenization;这会在编译之前从代码中删除不需要的东西。删除意味着不从代码库文件中删除,但不考虑它们进行编译。

当你有“;”时你的代码就是这样编译器将其视为编译的行尾,当下一个字符符合它时,将其视为编译的新行。

答案 1 :(得分:1)

编辑(感谢@Jigar):

编译代码的执行时间没有区别。

过多的空格/注释可能使编译器花费更长的时间进行标记化,但C#编译器并不关心语法上没有重要意义的空格。


在表示层上:考虑的可能是传输和渲染,而不是服务器端的影响。

较小的页面将传输和渲染更快。

有许多“缩小”的策略,但任何性能提升肯定取决于许多其他因素,如设备,连接,负载,页面大小等。

提供压缩资源(脚本,json数据,甚至是HTML)并让客户端解压缩和渲染会减少传输开销,这种情况有点普遍。 Like this


值得一提的问题是:还有其他方面可以为更少的工作提供更多的收益吗?

有许多页面速度工具可以从客户的角度分析性能并提出合理的建议。一些基于网络的:

http://yslow.org/

http://tools.pingdom.com/

答案 2 :(得分:0)

空白行实际上是1 or two characters(如果你没有明确地在整个行中使用空格或制表符(:))),那么即使大小性能下降也不会使文件显着增大。

答案 3 :(得分:0)

C#编译器不会考虑空换行符。 C#编译器省略了这些内容。这不会影响您的代码性能。

希望这会对你有帮助......