JSP优化的策略.docVIP

  • 4
  • 0
  • 约8.01千字
  • 约 14页
  • 2018-06-03 发布于福建
  • 举报
JSP优化的策略

JSP优化策略 一.标识(注释)的优化 网站在开发上往往容易出现这样两种情况:一种是代码过于紧密,其中包含大量注释信息和排版空白,一种就是代码太过宽松,其中不但包含了编辑器自动生成的标识语言及大量缩排空白,而且包含了编辑器常用来控制文件结构的特定注释,甚至还有冗余或无用的标识或代码。象这样的代码是不适合传输的。我们可以通过下面一些安全有效的途径来减小文件的大小: 1.1删除多余的空白区域 一般说来,可以把那些多余的空白字符如空格,水平TAB,换行符等删除掉。不过当然了,象pre,textarea文本框和CSS的white-space属性中的空白是不能删除的。 1.2删除注释文字 除客户端对IE浏览器和文档类型声明条件注释之外的注释几乎都可以删除,不会对文件造成什么影响。 1.3将色值重新调整至最简短形式 在颜色上,尽量不要只使用十六进制值或只使用颜色名称,哪个短就用哪个。比如对于红颜色,用它的属性值#ff0000就没有red来得简短。而对于浅金黄色如果用它的颜色名lightgoldenrodyellow就太长了,反不如用属性值#FAFAD2。 1.4将文字实体重新调整至最简短形式 这一点与色值的替换类似。我们可以把一个单词名很长的文字实体用一个数字性实体来表示。 1.5删除无用的标识 将无用代码删除。 二.CSS的优化 我们可以对CSS代码进行精简来进一步减小文件的大小。不过,如今大多数网站所创建的CSS都要比普通HTML难压缩的多。对CSS的代码精简有下面这样一些安全有效的措施: 2.1删除CSS空白 CSS对空白的敏感度远远低于(X)HTML,因而可将CSS中的空白删除来有效降低CSS文件和样式表区域的大小。 2.2删除CSS注释信息 就象删除普通代码中的注释来精简代码一样,由于CSS中的注释对普通的终端用户来说并没有什么实用价值,所以应予删除。不过,如果需要考虑改进过的浏览器,则可以保留在CSS的style中的屏蔽注释信息。 2.3将CSS中色值调整至最简短形式 这一点也和HTML相似。对CSS字体颜色可以用单词或十六进制格式。不过,这样做在CSS中的效果会更为显著一些。这是因为CSS支持3位6进制色值,例如对白色(#ffffff)可用#fff来表示。 2.4对CSS设置进行重组,减少及删除 CSS中设定了字体的大小,字重,颜色等。一般CSS内容都是: p{font-size:36pt; font-family:Arial; line-height:48pt; font-weight:bold;} 我们可以将其改写成:p{font:bold 36pt/48pt Arial;} 如果运用得当的话,可以对样式表中的一些语法规则进行大幅削减。不过目前还没有这样的工具,所以我们只能手工删除,不过即将推出的w3compiler2.0版将会包含这一特性。 2.5重命名类和ID值 在CSS优化中,对样式表或ID值的重命名可能是最危险的一个步骤。对样式表的重命名可以遵循这样的原则:例如对于:.superSpecial{color:red;font-size:36pt;}则可将其更名为sS。而对ID值一样可以遵循这样的原则,例如对于:#firstParagraph{background-color:yellow;}则可将原来的#firstParagraph更名为#fp。自然,这样做可能会牵涉到标识-样式-脚本的问题:如果一个tag有一个ID值,而这个值又可能不但用于样式表,还可能用于脚本参考,甚至可能是一个链接目标地址。在这种情况下一旦修改了这个值,那么必须确保对所有文件中相关的脚本和链接参考都进行了相应的修改。 请注意:最好不要更改名称属性,尤其是表单区域中的名称属性。因为这些数值也会被服务器端程序操作。 三.javascript优化 1.减少下载时间优化 类似css,也是要在运行环境下删除所有空白及注释,甚至删除换行和制表符,更甚者为了减少代码字符数,可以将参数和变量全部替换为单字符的,以尽量减少客户端下载时间。当然从代码逻辑的角度进行优化以减少代码行数,也不失为有效方法。这里需要补充说明是单个TCP-IP包中能放入的字节数是1160,最好将每个javascript文件,css文件等都保持在1160字节以下以获取最优下载时间。 2.执行时间优化 javascript是一种解释型的语言,它比编译型的C程序慢5000倍;比解释型的java慢100倍;比解释型的Perl慢10倍。 不过我们仍然可以做一些事来优化javascript代码的 2-1.关注范围 javascript的范围可以认为是某个变量存在的空间,浏览器的默认范围是window。而在函数中定义的变量只存在于函数范围内,函数执行完毕时就销毁,可以认为javascript的范围是一

文档评论(0)

1亿VIP精品文档

相关文档