在一句话说清楚项目要做什么后,接下来就是要分析项目的组成模块及其结构了,首先大模块有两个,一个开发环境,一个运行环境,模块之间通过页面进行连接,其次是递归地进行这个过程,先从三层递归开始:
第一层:如何能快速开发呢?一个所见即所得的界面,一个能不断增加,并且能复用的组件库等。如何丰富功能呢,尤其是扩展本地功能,即浏览器没有提供的能力,如播放器等。如何提高性能呢,移植优化blink。
第二层:组件库设计角度,一是从使用者视角,运营人员,产品设计等,一是从功能视角,交互组件,显示组件,本地功能组件,容器组件等,还可以从数据流视角,组件之间的数据流动,组件从服务器获取数据流等。
第三层:移植,定制并优化blink。组件要有多层粒度,不同等级开发人员使用相应层的组件。
这里核心有两个方面,一个是组件库的设计,一个是blink的优化。
开发在层次上有两个,一个是页面的开发,一个是组件的开发。