基于 Scala 的框架如何为完整的 Scala 新手堆叠 - Lift、Play、Circumflex 等 [英] How do the Scala based frameworks stack up for a complete Scala newbie - Lift, Play, Circumflex, etc

查看:26
本文介绍了基于 Scala 的框架如何为完整的 Scala 新手堆叠 - Lift、Play、Circumflex 等的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

最近,基于 Scala 的 Web 框架社区发生了很多变化.来自 Rails、Rake、ActiveRecord 和迁移 - 这是一个很好的 Scala 框架,可以在其中构建生产站点?

There has been a lot of movement in the Scala based web framework community of late. Coming from Rails, Rake, ActiveRecord and migrations - which is a good Scala framework to build production sites in ?

如果提供更好的可维护代码,那么性能上的小幅下降是可以接受的.如果内置协作功能也会很好 - 例如诸如数据库迁移等.

A small hit in performance is acceptable if it gives a much better maintainable code. It would also be nice if collaboration features are built in - e.g. something like DB migrations, etc.

推荐答案

(主持人David Pollak 是 Lift 框架的创始人)

如果你想要一个简单的 Scala Web 框架来执行 CRUD 和一些页面,我的建议是 Play.它有一个很好的开发周期,而且简单易上手.

If you want a nice simple Scala web framework for doing CRUD and a few pages, Play would be my suggestion. It's got a nice development cycle and it's simple and approachable.

如果您正在构建一个会增长并处理大量流量的应用,我建议您使用 Lift ;-)

If you're building an app that is going to grow and handle lots of traffic, Lift is my recommendation ;-)

Lift 支持多种 ORM 系统.Mapper 很像 ActiveRecord.Mapper 不使用迁移,而是使用 Schemifier 从 Mapper 定义中读取模式定义并相应地更新 RDBMS.

Lift supports a variety of ORM systems. Mapper is much like ActiveRecord. Rather than using migrations, Mapper uses Schemifier to read the schema definition from the Mapper definitions and updates the RDBMS accordingly.

如果您要构建任何类型的 Ajax 或 Comet 应用,Lift 是正确的选择.Lift 的 Ajax 支持很简单……只需将服务器上的一个函数与一个 Ajax 控件相关联.当用户点击按钮、下拉选择等时,函数被调用.

If you're building any kind of Ajax or Comet app, Lift is the right choice. Lift's Ajax support is simple... just associate a function on the server with an Ajax control. When the user clicks the button, pulls down the select, etc. the function gets invoked.

Lift 拥有所有框架中最好的服务器推送(Comet)支持.请查看 http://liftweb.blip.tv/file/2033658/彗星支持的味道.

Lift has the best server-push (Comet) support of any framework. Please check out http://liftweb.blip.tv/file/2033658/ for a flavor of the Comet support.

在性能和可扩展性方面,Lift 为 Foursquare 和其他高流量网站提供支持.

In terms of performance and scalability, Lift powers Foursquare and other very high traffic sites.

就简洁的代码而言,Lift 非常简洁,但类型安全(Play 和其他用字符串名称表示变量的框架并非如此).因此,您将获得类型安全、非常可维护的 REST 支持,这里也非常简洁地演示:http://www.assembla.com/wiki/show/liftweb/REST_Web_Services

In terms of concise code, Lift is very concise, yet type-safe (the same is not true of Play and other frameworks that represent variables with String names). So, you get the kind of type-safe, very maintainable REST support that's also very concise demonstrated here: http://www.assembla.com/wiki/show/liftweb/REST_Web_Services

这篇关于基于 Scala 的框架如何为完整的 Scala 新手堆叠 - Lift、Play、Circumflex 等的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆