做LAMP体系的web开发有好几年了,当然JAVA之类的也是用了很久,因为是对日软件外包开发,新技术的使用一直处于滞后的状态,现在正好有一个机会,做一个全新的EC网站,用到了MEAN框架,了解了一下,主要有以下的优点。
1,并发度高,
由传统的线程方式变成了事件驱动,效率更高,支持高并发。特别适合使用人数多的网站架构
2,开发效率高,代码层次结构清晰。
前端代码使用了Angualar.js的MVC框架,另外还有Bootstrap,使前端代码中终于少了很多javascript代码。代码清晰。后台使用了node.js+express,开发起来非常快。尤其是MongoDB的使用,让普通的DB操作变的非常简洁。
其实,用什么样的体系还是取决于目标项目的性质,没有什么是绝对的优势。比如这次因为是一个EC网站,所以目标人群大,url设计需要注意,并发度高,后台逻辑相对简单,这些特性注定了MEAN体系非常适用。
简单介绍一下MEAN体系。
MEAN = MongoDB,Express,Angular,Nodejs/Nginx
MongoDB 是一种文件导向 数据库管理系统 ,由 C++ 撰写而成,以此来解决应用程序开发社区中的大量现实问题。 NoSql.
Express 是一个简洁而灵活的 node.js Web 应用框架 , 提供一系列强大特性帮助你创建各种 Web 应用
AngularJS 是一款 开源 JavaScript 函式库,由 Google 维护,用来协助 单一页面应用程式 运行的。它的目标是透过 MVC模式 (MVC) 功能增强基于浏览器的应用,使开发和测试变得更加容易。
Nginx (发音同 engine x )是一款由 俄罗斯 程序员 Igor Sysoev 所开发轻量级的 网页服务器 、 反向代理服务器 以及电子邮件( IMAP/POP3 )代理服务器。
与MEAN体系非常相配的当然我还使用了以下的技术
BootStrap 一个基于Jquery开发的开源前端框架,提供了很多专业风格的CSS控件,给我们这些没有多少审美的程序员带来了福音
Redis 一个key-value数据库,支持多种数据类型。利用起来非常方便。