WAPA来源
WAPA是Web Application Performance Analyzer(Web应用性能分析器)的简称,其来源于Intel软件与服务部门全球合作伙伴关系事业部HTML5应用团队的创新项目。旨在给开发者提供如何编写高性能HTML5应用程序提供代码级别的建议。
众所周知,Web应用很长一段时间因为其性能底下的问题,无法和本地应用在用户体验上相媲美,随着HTML5以及移动终端性能的快速发展,Web应用即将呈现一个井喷的趋势,不管是在其数量上,还是质量上。但是如何编写高效的Web应用却是横在开发者面前的一道坎,这主要体现在三个方面:
1. Web开发不同于本地开发,实现同样的功能有几种写法,DOM Selector就是一个典型的例子;哪种方法在Web应用的开发中是高效的相信困扰了很多开发者。
2. W3C的HTML5标准已经尘埃落定,但是各大厂商的实现却是百花齐放,同样的一个功能,实现的方法各不相同,相应的接口也不一样。
3. Web的发展日新月异,越来越多的最新的高性能的API开放给了广大的开发者,CSS3 animation就是其中的典型,如何及时充分使用这些高性能的接口去开发应用呢?
基于解决以上三个问题,我们开发了WAPA工具。接下来将会由系列文章给大家介绍WAPA的架构,构成,分析规则和策略,协助开发者开发高性能HTML5应用程序。
WAPA工作流程
WAPA的工作流程如上图所示:
1. 首先解包目标Web应用的安装包;
2. 接下来解析相应的源代码文件(.html, .js. .css)
3. 如果是JS文件,则生成相应的语法树;如果是html和CSS文件,则静态解析文件;
4. 将解析后的文件或者语法树和WAPA中预置的优化规则进行匹配和识别;
5. 根据匹配和识别的结果生成相应的report,供开发者选择。
WAPA系列内容安排
本文是WAPA介绍的开篇,接下来会依次讲解:WAPA使用篇,WAPA规则详解篇,和WAPA总结篇。
在WAPA使用篇中将具体介绍如何使用WAPA,WAPA会汇报出什么样的提示给开发者;
在规则详解篇中将为开发者详解每个规则提示的性能原因和改进方法;
在总结篇中将会给大家总结WAPA分析案例中常见的HTML5应用开发性能障碍点以及如何避免