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

2016-03-11 admin

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

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处。

转载请注明:文章转载自 JavaScript中文网 [https://www.javascriptcn.com]

本文地址:https://www.javascriptcn.com/read-678.html

文章标题:Riot.js:不足1KB的MVP客户端框架

相关文章
一些前端学习中好的书籍,整理
一、Javascript方面的书籍: 1 JavaScript权威指南(第6版):号称javascript圣经,前端必备;前端程序员学习核心JavaScript语言和由Web浏览器定义的JavaScript API的指南和综合参考手册; 2...
2015-11-12
为什么要选择Nodejs?Nodejs有什么好处?
什么?JavaScript还能用作服务器编程! Caleb Madrigal是来自美国密尔沃基市的一名软件顾问。四年前,他在听说“将JavaScript用作服务器端语言”这样的说法时,认为那是一个荒唐的想法。有那么多服务器端语言可供选择,为...
2015-11-12
js性能优化 如何更快速加载你的JavaScript页面
确保代码尽量简洁 不要什么都依赖JavaScript。不要编写重复性的脚本。要把JavaScript当作糖果工具,只是起到美化作用。别给你的网站添加大量的JavaScript代码。只有必要的时候用一下。只有确实能改善用户体验的时候用一下。 ...
2015-11-12
2015年JavaScript或“亲库而远框架”
2014年过去了,作为一个JavaScript开发者很难满怀信心的去“挽回”一个特定的库或技术,即便是强大的Angular,似乎也因为最近的一些事情而动摇。 2014年10月的ng-europe会议上,Angular开发者团队透露了一个关于...
2015-11-12
10个强大的纯CSS3动画案例分享
我们的网页外观主要由CSS控制,编写CSS代码可以任意改变我们的网页布局以及网页内容的样式。CSS3的出现,更是可以让网页增添了不少动画元素,让我们的网页变得更加生动有趣,并且更易于交互。本文分享了10个非常炫酷的CSS3动画案例,希望大家...
2015-11-16
Node.js 2014这一年发生了什么
Node.js 的 2014 年充满了不幸和争议. 这一年 Noder 们经历了太多的伤心事, 经历了漫长的等待, 经历了沉重的分裂之痛. 也许 Noder 们不想回忆14年 Node.js land 发生的事情, 但正因为痛才更有铭记的价...
2015-11-12
React.js编程思想
JavaScript框架层出不穷,在很多程序员看来,React.js是创建大型、快速的Web应用的最好方式。这一款由Facebook出品的JS框架,无论是在Facebook还是在Instagram中,它的表现都非常出色。 使用React.j...
2015-11-12
从2014年的发展来展望JS的未来将会如何
<font face="寰�杞�闆呴粦, Arial, sans-serif ">2014骞达紝杞�浠惰�屼笟鍙戝睍杩呴€燂紝鍚勭�嶈��瑷€灞傚嚭涓嶇┓锛屼互婊¤冻鐢ㄦ埛涓嶆柇鍙樺寲鐨勯渶姹傘€傝繖浜涜��...
2015-11-12
12个你未必知道的CSS小知识
虽然CSS并不是一种很复杂的技术,但就算你是一个使用CSS多年的高手,仍然会有很多CSS用法/属性/属性值你从来没使用过,甚至从来没听说过。 1.CSS的color属性并非只能用于文本显示 对于CSS的color属性,相信所有Web开发人员...
2015-11-12
Vue.js组件tab实现选项卡切换
本文实例为大家分享了vue插件tab选项卡的具体代码,供大家参考,具体内容如下 效果图: 代码如下: <!DOCTYPE html> <html lang="en"> <head> ...
2017-03-13
回到顶部