Skip to content
/ rocket Public

基于Backbone的webapp开发框架,帮助广大web开发人员快速创建高性能、易维护、支持多人开发的webapp程序。

Notifications You must be signed in to change notification settings

gmuteam/rocket

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ROCKET

基于Backbone的webapp开发框架,帮助广大web开发人员快速创建高性能、易维护、支持多人开发的webapp程序。

快速入口

  • ROCKET编码规范
  • 目录组织规范
  • 如何创建一个webapp页面
  • 创建并开发一个WEBAPP应用-HelloRocket
  • 核心类介绍
  • 事件中心
  • 如何扩展
  • MVC分解
  • Model共享

webapp框架是什么

webapp framework是开发Mobile HTML5 SPA程序(称之为移动webapp,后续简称webapp,如果对移动webapp概念不熟悉的同学,可以先阅读这篇文章移动webapp介绍)的通用开发框架,集成webapp产品开发涉及的规范、框架类库、最佳实践,提供一套完整的代码框架,有丰富的配置接口,同时为扩展提供了足够的空间。使用框架开发,可以大大缩短webapp开发周期,并且保证开发的规范性,使后期升级和维护更容易。

框架的设计目标

化繁为简: 分而治之的控制模型,提供一种MVC分解模型,将复杂应用逻辑分解成树状控制结构,每个控制节点粒度(代码规模)适中。

并行开发:满足并行开发需求,使SPA程序多人合作开发成为可能。

有章可循:支持一系列的规范和流程,使开发更加顺手,利于功能模块的复用和后期维护。

快速开发:基于框架进行webapp开发,节省重复造轮子的时间,丰富的脚手架帮助工程师迅速搭建webapp产品。

化繁为简

webapp充分利用HTML5的特性,力求在移动浏览器上实现NativeApp的体验,相比移动站点,webapp在代码规模和复杂性上大大增加,表现在以下几个(包括但不限于)方面:

  • 页面管理,在一个HTML document上模拟多个功能相对独立的页面,提供这些模拟页面的展示、隐藏、切换等各类效果,接近与native app的体验,同时每个页面提供不亚于web站点页面的功能

  • webapp特定的hash路由功能,实现hash到特定控制逻辑的派发以及hash穿透

  • 更大的DOM树,需要引入垃圾回收机制,保证运行性能

  • 类native app特效

webapp较普通web站点逻辑更加复杂,代码量更加巨大,普通webapp在代码规模上一般都超1w,甚至更多。如何更好地用代码完相应的功能逻辑,直接影响webapp的开发效率和质量。

在APP层面,使用传统web应用的路由分发机制,在页面层面,引入一种MVC的分解模型,形成的控制器树,使多个规模适中的MVC模块协作完成一个复杂的功能逻辑。

并行开发

webapp从发布代码结构来看,与web站点是一样的,只不过其所引用的代码体积比web站点要大很多。一个复杂的webapp可能包含多个功能独立的页面,如何让多人来承担这些页面的开发、代码调试、提交,达到并行,并且能够在发布层面做到无缝整合,是摆在webapp开发面前的一道难题。

webapp框架设计目标中,满足多人开发是一个重要的目标。框架设计按页面为单位,确保页面之间不存在代码上的耦合,代码在开发的物理目录上是完全独立的,可以独立提交。对于关联不可避免的地方,比如公共配置、代码整合等地方,使用一些方法使其尽可能弱化,达到尽可能的薄,减少冲突。

有章可循

众所周知,规范至于团队开发的重要性。webapp框架定义了一系列的规范和流程,目录规范、命名规范、MVC使用规范、事件流规范、页面开发流程等。

快速开发

得益于webapp的一系列规范和流程,以及丰富demo,使得webapp在开发、调试、部署等环节都得到了加速。

About

基于Backbone的webapp开发框架,帮助广大web开发人员快速创建高性能、易维护、支持多人开发的webapp程序。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages