Riot.js:不足1KB的MVP客户端框架

2016-03-11 admin 评论:0

Riot.js是一款MVP(模型-视图-呈现)开源客户端框架,其最大的特点就是体积非常小,不足1KB,虽然体积小,但它可以帮助用户构建大规模的Web应用程序。

Riot.js是由Moot公司开发,目前最新版本为v0.9.2,遵循MIT开源许可。

Riot.js包含的组件有:一件模板引擎、路由、事件库和一个严格的MVP模型,可以把所有的组件组织在一起。和其他框架相比,它速度更快、体积更小、功能更加强大。

下面我们一起来看下Riot.js的几大特征。

最小

下面是目前几个比较流行的客户端JS框架,Riot.js是所有这些框架里体积最小的:

Riot.js之所以如此轻量,它主要注重于构建和维护应用的核心因素,目前,它主要依赖于jQuery,但在即将发布的v1.0中会有一个独立的版本,并且可以在Node.js上运行。

应用程序代码更少

下面是各个框架构建Todo MVC应用程序的代码量:

Raw amount of minified JS and HTML in Todo MVC

代码量的多少要取决于很多因素,比如编码风格等,所以这并不是一个非常重要的指标。

最快

Riot.js配备了一个非常快速的JavaScript模板引擎,它的速度几乎是Resig“微模板”或Underscore模板的5倍。

Running a variable substitution x amount of times.

MVP设计模式

Riot.js使用Model-View-Presenter (MVP)设计模式来组织代码,这样它能够更加模块化、更具可测试性且易于理解。

就像MVC(Model View Controller)或MVVM(Model View ViewModel)设计模式,目的都是把应用程序的逻辑从视图中分离出来,但MVP更简单,让我们与MVC比较下:

MVC设计模式更加复杂,许多箭头围称一个圈。控制器角色不明确,该模式可以有很多种解释方式。事实上,这是导致该模式下有太多客户端框架的根本原因。

相反,MVP则没有太多的解释空间,每个角色定位都很清楚,它可以应用在各种大小的项目上,并且也是单元测试的最佳模式。

相关资料

Riot.js官网:https://moot.it/riotjs

托管地址:https://github.com/moot/riotjs

详细介绍:https://moot.it/blog/technology/riotjs-the-1kb-mvp-framework.html

国内镜像地址:https://code.csdn.net/OS_Mirror/riotjs

评论
回到顶部