完整的JavaScript开发堆栈:MEAN

http://www.jdon.com/46187    banq 


正如当初PHP的LAMP、Spring的SSH等开发堆栈一样,Javascript带来了完整的MEAN开发堆栈,是MongoDB、ExpressJS,AngularJS和Node.js简称。

MongoDB是一个使用JSON风格存储的数据库,非常适合javascript。(JSON是JS数据格式)

ExpressJS是一个Web应用框架,提供有帮助的组件和模块帮助建立一个网站应用。

AngularJS是一个前端MVC框架。

Node.js是一个并发 异步 事件驱动的Javascript服务器后端开发平台。

在mongoDB中我们可以直接存储JSON格式的数据,然后在ExpressJS和的NodeJS服务器编写一个基于JSON的查询,并无缝地(无需像其他语言需要在JSON和语言数据模型之间转换)传递JSON到AngularJS前端。

同时,数据库调试和管理也变得轻松了许多,存储在数据库中的对象基本上等同于你在客户端看到的对象。更妙的是,前端工作人员也能够轻松了解后端代码和数据库查询,使用的是相同的语法和对象,你不必考虑多套语言的最佳实践,降低了入门门槛。

架构图如下:


为什么选择MongoDB?
虽然有人指出MongoDB适合小中型的应用程序,但没有大型的应用程序(例如100的数以百万计的用户)案例,这其实取决于你想做什么。

在性能和可靠性之间需要在SQL和NoSQL之间做一个权衡,如果数据一旦存储以后不太做修改,以读取为主的应用可以选择MongoDB,如果你有复杂的交易过程,这时传统关系数据库也许是一个好的选择。

为什么Express?
Express是Node.js用于Web应用的工具包,能够创建基于http的端口,处理cookie等,提供一切你可能需要建立自己的Web服务器的库包,主要有:

1. 简单的REST路由:如app.get(/account/:id, function(req, res){ /* req.params('id') is available */ });
2.通过Jade的简单模板化
3.自动化的http处理。
4.支持异步处理请求响应的中间件。
5.分析POST请求体
6.防止XSS攻击
7.错误处理

MEAN的安装

最后请注意的是,使用Node.js相比Ruby , Python或Java其他语言将面临更多挑战:必须管理内存泄漏,记住CPU绑定的计算循环(排除CPU密集型),小心处理异常防止崩溃等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值