如果重写一个类 Nodeclub 的项目,基础框架如何选择:
Koa vs. Express
选用 Koa 可以利用 Node harmony 的 generators 特性来写出没有 callback 的代码,但是增加了学习成本,倒不是 generator 的写法,而是新的思维方式,担心会写出不能发挥 harmony 全部潜能的夹生代码
如果使用 Express ,配合 Bluebird ,也可以写出不那么恐怖的流程控制,假如前段使用 Angular.js ,也是使用类似的 Promise 实现,这样写来前后端不存在思维转换的问题
Mongoose vs. Sequelize
这个倒是没多少纠结,就是非关系型数据库(MongoDB)跟关系型数据库(Mysql、MariaDB、PostgreSQL)的选择
本人并没有多少数据库使用经验,而且一向的观点就是够用就行,如果文件数据库(Sqlite、LevelDB)能满足需求就不上需要额外运行服务的数据库。不过个人倾向于后者,如果选用现在大行其道的 MongoDB ,又会纠结于如何设计出符合 NoSQL 理念的数据库