scala - Scala Web微框架

标签 scala web-frameworks

我正在寻找具有以下某些属性的Scala Web框架。

  • 模块化,以防万一(例如)我不想使用特定的模板语言或框架默认使用的DB接口(interface)。
  • 避免“魔术”或讨厌的设计决策(通常优先选择Unfiltered的功能样式)-诸如线程本地请求/响应对象,反射(参见Bowler的功能名称约定)之类的东西。
  • DB接口(interface)。是否支持与SQLAlchemy相同程度的灵活性(ORM和SQL都支持平滑的互操作和转义填充)?
  • 模板/查看语言。尽管我对基于组件的方法感兴趣,但在这里非常灵活。
  • 性能,可伸缩性(Comet支持)。

  • 符合要求的最佳Scala网络微框架是什么?我一直在研究的一些框架:
  • Scalatra
  • 鲍勒(在Scalatra上构建)
  • 播放(Scala界面)
  • 抑扬索
  • 未过滤(最少的HTTP请求处理,无数据库接口(interface)/模板语言)

  • 但是,如果不花时间玩所有这些,就很难说出要使用什么。

    最佳答案

    Bowler 几乎是Scalatra + Scalate,并且对开发人员采取了一些强制执行/启用REST良好实践的做法,例如正确使用Content-Type和Accept HTTP Header来响应和发出HTML和JSON以及处理GET,POST,DELETE和PUT以适当的方式进行(并且使GET和DELETE的错误使用更加困难)。

    如果您对面向组件的UI感到好奇,那么Bowler会使用support Scalate's Scuery style,它与Bowler结合使用可提供非常可组合的UI样式,受UI Wicket的影响很大。

    就前端与服务器端而言,Bowler takes quite a strong view that client-side code(JavaScript / CSS)是客户端代码,而服务器端代码是服务器端。 JavaScript与服务器端Scala代码之间没有令人讨厌的“集成”,而是应在客户端和服务器上使用同类最佳的,并通过常见的,易于理解的格式(例如JSON)进行集成。

    关于scala - Scala Web微框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6629900/

    相关文章:

    web-frameworks - 对网络框架的付费支持

    java - 使用 JSF 的动态网页

    类 Django 框架模式

    scala - 无法在 Spark DataFrame 中对 MapType 列进行分组

    performance - Scala 动态类管理

    scala - 如何分组并连接 Dataframe Spark Scala 中的列表

    scala - 在无形 HList 中映射元组

    python - Web 应用程序框架究竟是什么?

    scala - Scala 中的 forSome 关键字有什么用?

    web-frameworks - 是否有适用于 kotlin 原生的 Web 框架