MEAN架构的解释以及一些相关技术的名词

阅读数:2241 发布时间:2015-04-11 00:39:48

作者:秀野堂主 标签: MEAN mongodb angular.js node.js express

最近在Angular社区的原型开发者间,一种全Javascript的开发架构MEAN正突然流行起来。

其首字母分别代表的是:

(M)ongoDB——noSQL的文档数据库,使用JSON风格来存储数据,甚至也是使用JS来进行sql查询;
(E)xpress——基于Node的Web开发框架;
(A)agular——JS的前端开发框架,提供了声明式的双向数据绑定;
(N)ode——基于V8的运行时环境(JS语言开发),可以构建快速响应、可扩展的网络应用。

MEAN的支持者宣称,如果整个开发栈均能使用JS,必然会大大地提高效率,这一点毋庸置疑是一个很大的卖点。这样一来,开发人员(无论是前端还是后端)不仅能使用一致的数据模型,在其它方面也同样可以获得一致的编程体验。

例如,拿Mongo来说,你可以使用类JSON格式(BSON,二进制的JSON)来存储数据,然后在Express/Node中调用JSON查询语句,再将结果以JSON格式传给前端的Angular显示,这样,也自然使调试程序容易了很多。

注意:

事实上,在MEAN架构中,前端的Angular并不是必须的,你可以将它替换成其他的前端框架,如Backbone、Ember或者Polymer。

Grunt:用于生成,预览和自动化测试你的项目,这要特别感谢由Yeoman和grin t-contrib团队创建的许多grunt tasks。

Bower:前端的依赖管理工具,有了它你再也不需要手动下载和管理第三方JS库了。

YO:快速生成一个新的应用,包括配置好你的Grunt任务以及你极有可能会用到的Bower依赖。

相关文章推荐: