我开始使用PHP开发Web开发世界,然后在最近几年开始使用Rails。从那时起,我一直在Rails中完成所有的Web项目。
最近似乎有一种趋势,即将Rails作为纯RESTful后端服务,并使用Backbone.js等前端框架进行所有前端交互。我想知道你们对它们有什么看法?这将是最终的未来吗?
同样,除了Backbone.js之外,为此目的还有哪些其他前端框架的替代方案?
另外假设我要同时支持我的应用程序的桌面版和移动版,这是一条正确的选择吗?那么我将有一个具有不同前端服务的后端服务?这样我就不需要管理Rails方面的所有视图了吗?
谢谢!
答案 0 :(得分:19)
对于客户端框架,本文列出了20个具有pro和con的框架: http://net.tutsplus.com/articles/web-roundups/20-javascript-frameworks-worth-checking-out/
以下是清单:
这些大致都是关于创建基于客户端,基于ajax的javascript MVC框架。
如果您希望从某个地方开始,那么我建议您考虑客户端模板(... ates ... ates ... ates)(只是“V”)到支持面向服务的体系结构(您创建的服务端点支持许多客户端)。
这是一项新技术,它涉及模块化客户端代码,将MVC引入客户端,并让业务逻辑存在于平台中。许多软件即服务应用程序正在利用它们,随着javascript库和框架的日益复杂,以及HTML5,CSS3等的浏览器功能,客户端演示中的复杂程度将越来越高。
所以要学习它。
有什么好处?
使用Linked In来解释:利用浏览器缓存,解耦前端客户端表示,异步加载,渐进式渲染(对于某些框架),性能,ajax交互等。
几个很棒的框架包括:
我强烈建议您查看Linked In's move away from JSP towards Client-Side Templates以及为什么他们会在Linked In's front-end client-side templates throwdown中选择dust.js进行比较。他们进行了更详细的研究,并研究了为什么他们改变了堆栈以支持这一点(它涉及使用3种服务器端技术),以及他们可以找到的所有框架的比较。
答案 1 :(得分:2)
结果是一个可爱的响应式网站,但是,维护是一场噩梦。要非常小心,以保持JS代码的有序组织。
就我个人而言,我发现维护服务器代码(使用任何语言)比使用javascript更容易,因此我不会再次沿着这条路走下去了。
(IMHO)
弗兰
答案 2 :(得分:2)
我认为当代的Web应用程序正朝着这种具有RESTful后端和前端编码的所有视图交互的模式发展。这些来自Joe Zim的免费视频教程:
http://www.joezimjs.com/javascript/introduction-to-backbone-js-part-1-models-video-tutorial/
帮助我了解主干以及它如何简化模板和查看渲染。