我正在进入斯卡拉,我觉得面向对象&功能范式组合真的很有趣。因此,我已经阅读了一些关于基本Scala的教程,但是现在我想深入到Scala中来,以便进一步了解Web应用程序。 任何人都有教程,链接,博客或任何有用的信息?斯卡拉为web应用程序
回答
绝对结帐play。它的语法非常流畅,具有动态加载的类(当您进行更改时不会重新启动JVM),并且可以很好地考虑API。
我还建议看一下Lift,因为它很好地利用了Scala的实力。例如,嵌入式SiteMap DSL用于构建您的网站,以及actor-based Comet implementation。
在这个Interview with David Pollak他解释了他开始这个项目的原因和(简而言之)Lift相比Rails,Wicket,Smalltalk Web框架Seaside和Struts的好处。
有关于它的一些书籍(Lift in Action,The Definitive Guide to Lift: A Scala-based Web Framework),其中包括两名beeing免费提供(Simply Lift由大卫·波拉克,Exploring Lift包括一个非常有趣的chapter about Lift's internals)。
当您来自MVC背景时,您应该了解为什么Lift为Web应用程序使用不同的"View First" architecture。但也有一个MVC Helper。关于这一点,另请参阅chapter 13 in Simply Lift。
对于不同有趣的代码片段,我推荐Seven Things Demo Application,但也有another offical demo。
当您阅读一些示例视图代码时,您可能会遇到像<lift:surround with="default" at="content">
这样的标签。你将不得不导入xml命名空间来传递(x)带有这些标签的html验证器。由于这不是非常适合设计人员的方式,所以在视图中嵌入lift语义的新方法是使用常规html元素的class属性:<div id="main" class="lift:surround?with=default;at=content">
- 1. 在谷歌应用程序引擎为斯卡拉异步?
- 2. 斯卡拉println不适用于应用程序trait
- 3. 斯卡拉`应用程序并不需要parameters`编译错误
- 4. 斯卡拉播放任何应用程序从application.conf
- 5. 斯卡拉“这”和“自我”不是简单的应用程序
- 6. 斯卡拉在斯卡拉类
- 7. 通用斯卡拉
- 8. 斯卡拉 - Haskell的序列
- 9. 斯卡拉地图排序
- 10. 序列在斯卡拉
- 11. 斯卡拉 - 可以'这个'在斯卡拉为空对象?
- 12. 斯卡拉远程演员
- 13. 斯卡拉进程生成
- 14. 斯卡拉 - 不能为环
- 15. 斯卡拉“< - ”为理解
- 16. 斯卡拉枚举为int
- 17. 斯卡拉:简单的web服务
- 18. 卡夫卡与斯卡拉
- 19. 在斯卡拉
- 20. 在斯卡拉
- 21. 斯卡拉
- 22. 在斯卡拉
- 23. 在斯卡拉
- 24. 斯卡拉
- 25. 在斯卡拉
- 26. 在斯卡拉
- 27. 与斯卡拉
- 28. 在斯卡拉
- 29. 在斯卡拉
- 30. 斯卡拉:Option.getOrElse(...)
实际上,我对Scala的Web框架感到非常失望,它们都很杂乱,无法读取,没有很好的记录。 – juliomalegria
国际海事组织尤其是探索电梯是一个很好的文件的例子。但当然不在API文档的意义中......而关于可读性:如果函数式编程,嵌入式DSL,中缀表示法等等,我不想开始讨论......使代码更多或更少可读。两者都可以是这种情况,也取决于读者。但是,当我第一次阅读Lift码时,我经常感到困惑。 – Silas
困惑?我迷路了。这是一个很大的改变,来自于像Django这样美丽,可读(以及有据可查)的东西。 – juliomalegria