最近,我听到了很多有关ScalaLift Web框架的好消息,尤其是从Foursquare's guys中获得的消息,因此,我可能会在下一个项目中使用该技术。

  • 你们中有Scala/Lift开发人员吗?
  • 您在此平台上开发的经验是什么,与Ruby On Rails或Python/Django相比,它有什么优势?
  • 您是否认为它是可行的技术,并且在 future 几年内“值得关注”?

  • 是否值得? 在Scala/Lift平台上分享您的经验。

    最佳答案

  • 我目前正在Scala中执行大部分工作。 (我应该提到,自从前一段时间发明车轮以来,我认为Scala是最好的东西。:-D)

    以我的拙见,这是唯一一种真正使人们能够选择最佳方法来完成任务的语言,而无需在(更多)面向对象方法和(更多)功能方法之间进行不必要的区分。

    看一下以前声称类似这样的语言,我基本上可以看到两个相互竞争的语言设计阵营:
  • 从面向对象的角度来看,函数式编程最近获得了一些关注,并认为:“嗯,我们并不真正了解该函数式东西,但让我们在语言中添加一些奇特的语法糖,因此我们可以说它是也可以使用!” (示例:Java,Python)
  • 然后来自功能方面的人认为:“嗯,我们的功能方法远胜于其他任何方法,而且面向对象的废话很烦人,但让我们在语言中添加一些其他关键字,这将使我们的语言摆脱学术界的束缚。当然!” (例如:F#,OCaml)

  • Scala的设计师统一了双方的许多方法,并创建了一种设计良好的语言,以我的拙见,这是与其他语言的最大区别,因此决定采用“Frankenstein”方法进行编程语言设计。
  • 在使用Lift仅做过一些较小的事情之后,并且只使用过Rails和Django的肤浅经验,我不得不承认,在大多数时候,我想知道为什么Lift中的某些功能与我的预期有所不同,这是由于我的期望有缺陷,Lift的方法更胜一筹。

    Lift当然不是“轻松介绍Scala”,但是了解Lift的工作原理几乎与之前学习Scala一样有意义。

    在没有任何逻辑的情况下拥有“干净” View 的能力是对其他声称相同但又不足的框架的一项重大改进。 Scala的XML文字支持使您可以验证响应的格式是否正确:编译器将在编译时证明您仅向客户端发出格式正确的XML。
  • Lift是可行的技术,并且是目前唯一的真正方法,如果您要构建外观,感觉和行为类似于“真实”桌面应用程序的Web应用程序,而无需自己编写大量代码。
  • 关于java - 您在Scala/Lift中的发展经历是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3644251/

    10-10 23:29