实时Javascript开发框架Clouda、Meteor、Firebase对比
什么是实时Javascript开发框架?
自从2009年Node.js横空出世以来,吸引了无数程序猿们的眼球:前端后端都用一样的语言来做开发是多么和谐完美的一件事儿,前端工程师们再也不用找写后端的大爷们配合调代码了。Node.js的强势是无须质疑的,基于Chrome的V8引擎、超低学习门槛、事件驱动、Socket.io、良好的模块管理工具,给Node.js带来了无限的想象空间。
实时开发框架里面的Realtime的意思是,前端和后端的数据交换是实时的,也就意味着一旦服务器在有了最新的数据时,前端会实时得到数据并呈现在用户面前。据测试,这一速度可以达到10ms这一个级别。10ms什么概念?App上一次接收到数据都还没来得及展示到用户的屏幕上,由此带来的用户体验革命可想而知:-)。
这巨大的突破来源于Node.js 的架构与 Django, Rails 等传统的 Framework的本质的不同,它不需要放在 Nginx / Apache 后,利用 WSGI、 CGI 之类的接口一板一眼的 [接受Request] -> [运行程序逻辑] -> [生成并返回Response],而是跟前端的直接对话。这是一个巨大的变化,之前一些无法想象的功能都有可能实现了。比如 https://github.com/Miserlou/DirtyShare 可以用浏览器实现 P2P 的文件传输。正因为Node.js 可以更精细的控制 Request 和Response 的时间和内容,WebSocket 似乎天生就是为 Node.js 而生的,而配合 http://socket.io 这个神奇的库之后,在Realtime WebApp 这个领域,Node.js 已经没有对手了。[1]
介绍完实时JS开发框架的概念,该上干货了,欢迎围观Clouda、Meteor、Firebase的大PK,围观之前请自备Node.js及MongoDB基础知识:
共同优点:
1. 前后端统一,只用Javascript一门语言,抹平云端界限,一份代码处处运行。
2. 实时数据同步,所有数据实时推送的基础设置,每个终端都无延迟同步响应。
3. 前端随动反馈,面向数据的编程模型,数据实时推送后,界面会自动更新。
4. 省流量,省掉了通过Ajax请求建立和关闭连接时的暂用的额外流量。
5. 跨平台,iOS、Android、PC端一应俱全。
6. 代码简洁,轻轻松松几分钟内实现一个聊天室或TodoList的跨平台应用。
不算缺点的缺点:
1. 没有Web UI,得自行解决UI问题。
2. 前后端混合编程可能刚开始有点难以理解。
Clouda (开发框架):http://cloudajs.org/
优点:
1. 专为移动,全面兼容手机、平板、PC。
2. 高兼容性,标配数据同步工具,兼容已有服务;同时兼容Backbone等开源框架。
3. SEO能力,原厂匹配主流搜索引擎,每个APP场景都可以被搜索引擎爬虫抓取。(度娘的良心!)。
4. 中文框架,简单语法搭配丰富教程与文档,保证快速上手,还配有5分钟教程。
5. 多种渲染模式,支持客户端和服务端渲染,节省服务端或客户端的运算资源。
6. MVC结构,便于代码管理及扩展开发。
缺点:
1. 新框架,学习资料偏少。
2. 目录结构略微复杂,上手难度高。
3. 完善度不高,部分代码难以理解。
Meteor (开发框架):http://www.meteor.com
优点:
1. 结构简单,上手较容易(非MVC框架)。
2. 实时代码更新,在服务器代码更新后,客户端无须用户干预,实时更新。
3. 延迟同步机制,用户提交的数据实时反馈在屏幕上,如果因为网络原因数据提交失败,数据会在网络重新连接后上传。
4. 便捷发布,打包后的程序中会包含所有依赖项,让代码可以在任意装有Node.js的机器运行。
5. 互通性,支持通过DDP协议连接到NativeAPP、数据库甚至是Arduinos。
6. 兼容性,可以轻松的兼容其他模板框架、测试框架、Dom操作框架等。
Firebase (数据服务):https://www.firebase.com/
优点:
1. Api简单,使用起来非常的方便,可大大减少代码量。
2. 可通过网页对数据进行管理,很方便。
3. 支持SSL、权限认证、数据安全机制。
缺点:
1. 数据结构和数据库存储方式不一致(由于想支持REST方式读取数据)
2. 不能部署自己的数据库(很多项目都需要自己维护数据库的)
3. 目前数据操作能力较弱(有很多需求(稍微复杂点的查询)目前Firebase很难支持)
4. 数据分析功能很弱,只能查看流量和当前在线人数(独立数据库的话,这部分很容易做的更强大)[2]
总的来说,Cloudajs具备较大的本土化资源优势、支持SEO,Meteor的功能更强劲,Firebase更倾向于数据服务而非开发框架。
引用:
[1] http://www.zhihu.com/question/19653241
[2] http://cnodejs.org/topic/51f0edf7f4963ade0e082c19
实时Javascript开发框架Clouda、Meteor、Firebase对比相关推荐
- 10 个优秀的JavaScript开发框架
实用的Javascript开发框架 JavaScript基本上是一个面向对象的脚本语言,创建web应用程序和互动网站.Javascript框架也被称为Javascript库.JavaScript框架很 ...
- 移动WebApp开发框架 Clouda!
官方地址:http://baidu.csdn.net/ 实例地址:http://cloudajs.org/docs/step1_getting_started 一.定义 Clouda是简单,可依赖的实 ...
- es mysql 同步插件_[es和数据库怎么同步]mysql与elasticsearch实时同步常用插件及优缺点对比(ES与关系型数据库同步)...
目前mysql与elasticsearch常用的同步机制大多是基于插件实现的,常用的插件包括:elasticsearch-jdbc,elasticsearch-river-MySQL,go-mysql ...
- 《JavaScript开发框架权威指南》——1.4 查找、添加和删除Bower包
本节书摘来自异步社区<JavaScript开发框架权威指南>一书中的第1章,第1.4节,作者:[美]Tim Ambler , Nicholas Cloud著,更多章节内容可以访问云栖社区& ...
- 《JavaScript开发框架权威指南》——2.4 处理任务
本节书摘来自异步社区<JavaScript开发框架权威指南>一书中的第2章,第2.4节,作者:[美]Tim Ambler , Nicholas Cloud著,更多章节内容可以访问云栖社区& ...
- 中文书籍对《人月神话》的引用(20211105更新161-165本):大师品软件、JavaScript开发框架权威指南
中文书籍对<人月神话>的引用(第001到160本)>> <人月神话>于1975年出版,1995年出二十周年版.自出版以来,该书被大量的书籍和文章引用,直到现在热潮不 ...
- 推荐一些优秀的JavaScript开发框架
JavaScript基本上是一个面向对象的脚本语言,创建web应用程序和互动网站.Javascript框架也被称为Javascript库.JavaScript框架很容易提高设计web开发工作,提供了许 ...
- 2015年最新出炉的JavaScript开发框架
前端框架简化了开发过程中,像 Bootstrap 和 Foundation 就是前端框架的佼佼者.在这篇文章了,我们编制了一组新鲜的,实用的,可以帮助您建立高质量的 Web 应用程序的 JavaScr ...
- python和javascript详细对比_python与javascript 引入模块的方法对比
1.引入整体模块对比 python 方法一: #引入全部函数 from xxx import * #直接使用模块里面的各函数或者属性 test() 方法二: #引入全局的模块 importglobal ...
- 逐行分析鸿蒙系统的 JavaScript 开发框架
近日,鸿蒙终于发布了,开发者们也着实"沸腾"了.笔者也第一时间下载了源码,研究了一个晚上,顺带写了一个 hello world 程序,还顺手给鸿蒙文档提了 2 个 PR. 当然我最 ...
最新文章
- linux 查看端口被哪个程序占用
- rust风化速度_反驳《Golang、Rust的执行速度的对照,让人大吃一惊。》——不会别瞎说...
- java输出的文本内容不对_java 字符串写入文件后再读出不一样? 有什么解决办法吗?...
- 深入大数据安全分析(1):为什么需要大数据安全分析?
- ubuntu安装chrome及firefox
- uniapp延迟执行_uni-app android 调试运行首页一直卡在加载中
- 3.sf2 核心目录及文件结构
- 键盘视频鼠标(KVM)切换器基础知识
- 关于VMware的Server版卸载须知
- linux安装搜狗错误,centos安装sogou出错
- java ee课程设计_javaee课程设计
- 投入大小的伪原创工具
- 网站页面要怎么设计?
- AI绘图打开二次元世界
- 数据库1NF 2NF 3NF范式解释
- CSharp + OpenCvSharp实现医学图像拼接
- 力扣209. 长度最小的子数组
- java中使用tika_【Tika基础教程之中的一个】Tika基础教程
- 深度:传统服装品牌大量进入,老年身体机能变化催生数千亿中老年服装市场!
- 「多语言图像描述」最强评估基准XM3600来了!涵盖36种语言