为什么您建议的后端好,是容易使用,还是容易学习?
Restful服务器端实现
…将使工作角度相当容易和更少的痛苦,以及真正的HTTP规范与所有的好东西,需要。在您选择的任何语言,确保框架允许最小的努力这样做。
在我的经验中:
PHP:
Vanilla PHP和Codeigniter有能力,但穷人这样做,我建议避免他们。我不能说Symphony和更大的基于ORM的框架,但我理解学习曲线是非平凡的。我强烈建议远离CMS应用程序,如wordpress和drupal,因为这种事情不是他们的目的。
我理解Laravel可能提供一个相当低的学习曲线,是有RESTFul interfaces baked in的理解。
NodeJS
NodeJS为服务器端提供了大量的框架,Express和其变体是许多框架的明显基础。 Express提供了创建RESTful接口的灵活性,但默认情况下不会这样做。对于更多的语法糖,通常需要连接你自己的中间件。
Ruby on Rails
从我的理解,有相当多的支持RESTful apis with rails。
PHP
Vanilla PHP MysqLi对数据库的支持工作,但是太低级别无法使用。 CodeIgnighter,Symphony,Lavel和其他框架都为不同程度的数据库提供了必要的抽象和安全性。区分它们之间在这主要是一个味道的问题。 PHP框架可能难以支持Nosql类型的新数据库。
NodeJS
Express支持所有主要形式的数据库,具有适当的中间件,具有几乎来自NPM存储库的数千个选项。像往常一样,你将不得不连接他们来表达自己有不同程度的困难。
Ruby on Rails
Rails支持主动记录模式,提供开箱即用的安全性和易用性。这支持大多数流行的标准关系数据库。我不能说它的集成为Nosql数据库。
学习曲线
这对我来说太主观了,除了一些缺陷之外:NodeJS社区期望有相当高的技能来开始,而callback hell问题足够大,是学习者服务器端开发的严重障碍。
安全
PHP
Vanilla PHP提供很少的安全性,不推荐。 Codeigniter,Laravel和其他框架提供了一些保护与字符串逃避和保护免受sql注入攻击至少。
NodeJS
Express不提供太多的安全功能,但可以使用像helmet这样的模块进行强化。这不是一个反映应用程序的unopinated性质的不足。
Rails
我知道Rails提供基本的sql注入保护通过活动记录和CSRF保护其他功能出of the box。
个人:我使用Koa(一个应用程序,取代快递)为我自己的服务器端开发工作角。我的遗产项目使用CodeIgnighter。