如何开始使用Scala开发web?
现在,我熟悉Scala语言并准备好进行web开发。我遇到的唯一一个框架是,我对它一无所知。如何使用Scala进行web开发?我在Scala中使用和来构建web应用程序 我没有选择Lift的主要原因是,我们的开发人员对这两个框架非常有经验,因此转换到Scala对他们来说比较容易 当然,在使用带有Scala的Java web框架时,需要记住以下几点:如何开始使用Scala开发web?,scala,Scala,现在,我熟悉Scala语言并准备好进行web开发。我遇到的唯一一个框架是,我对它一无所知。如何使用Scala进行web开发?我在Scala中使用和来构建web应用程序 我没有选择Lift的主要原因是,我们的开发人员对这两个框架非常有经验,因此转换到Scala对他们来说比较容易 当然,在使用带有Scala的Java web框架时,需要记住以下几点: 收集类。Scala集合比Java集合丰富得多,但大多数Java框架无法使用它们。(很明显,Scala 2.8将引入一些解决方法) 偶尔会出现兼容性问
- 收集类。Scala集合比Java集合丰富得多,但大多数Java框架无法使用它们。(很明显,Scala 2.8将引入一些解决方法)
- 偶尔会出现兼容性问题,例如Tapestry 5.1不接受它在模块类中不需要的方法,但Scala会向每个类隐式添加一个
。这将导致Tapestry拒绝该类$tag()
更具实验性的是,最新的trunk有一个用于处理web应用程序的包。不过,它有点缺乏文档和示例,在接下来的几个月里可能会经历一些重大的变化(我是提交者)。如果你想遵循我正在考虑使用它的最前沿的方式,你可以去看看。我希望很快就会有一个示例应用程序出现。在Scala中使用Lift进行web开发有一些好处:
- 积极、支持、响应的社区李>
- 该框架是为Scala设计的,而不是碰巧与Scala兼容李>
- 多个贡献者已经在这方面投入了大量精力
- 如果(像我一样)您正在从Struts这样的框架迁移,那么这可能是一个挑战李>
- 对用户请求的大部分响应都发生在1.1-SNAPSHOT中,而不是特定版本,这意味着您正在针对移动目标进行编码。这在实践中不是一个大问题,但我可以看到这对一些人来说是令人不安的。显然,一旦1.1发布,这个要点就不会很好地过时
- 有一本开源的Lift书籍(其快照发布为),您可以在(在该页面上搜索master.pdf)上找到
- 以Lift PDF开头是一个简短的介绍
- 邮件列表数量很大(对我来说),但信息来源非常丰富:
Rails快速闪现,Django的“不仅仅包括CRUD”,Wicket的设计师友好模板……),以查看它们是否符合您的要求。现在是最大的scala web框架之一 您是如何解决
$tag
问题的?通过不使用Tapestry 5.1?我刚刚用Java编写了一个类:)这是一个黑客解决方案,但显然Scala 2.8无论如何都会放弃$tag方法,这样就不再是问题了。提示:您可以在Scala中使用Java集合,在Java中使用Scala集合,使用2.7.x,您是否出于某种原因排除了Lift,或者关于电梯的答案是否有效?这不清楚,我不排除电梯。我只是说我不知道开始使用它有多成熟。我想知道Scala web开发的一般方法是什么?