|
|
1
30
如果你喜欢小门,你应该坚持你所知道的;就像。Wicket是一个很好的web框架,正在做Scala&Wicket非常好,因为您可以使用Scala的特性在Wicket中组成类。。。它真的减少了样板与Java的对比。 Lift有Wicket没有的优势:
|
|
|
2
15
小门和电梯是完全不同的动物。我对这两种框架都有一些了解(但与您通常看到的专家级别相差甚远): Wicket:网站上的每个页面都有一个HTML模板页面和一个Java/Scala支持类。Wicket魔术是将HTML模板页面连接到相应的类,并将模板中的每个Wicket ID映射到类中的正确方法,以便在发送给客户端的生成的HTML页面中可以看到数据。就这样。小门是纯网,仅此而已。在Wicket中编写自己的图形组件并从中继承非常容易。
Lift与Rails的功能相同(映射到DB),但与Rails有很大的不同。Rails的思想遗产是显而易见的,因为Lift中的一些api使用Ruby语法(在inspector中带有下划线和问号),这可能会让Scala开发人员感到惊讶。Lift不是Wicket那样的经典MVC框架,它是ModelView模型。实际上,Lift更关注于请求-响应周期。它旨在模拟事件驱动的GUI编程(如JavaSwing或.NETGUI)。这意味着HTML元素和操作是在同一个位置编写的:
并将函数连接到变量,以便存储输入。即使使用AJAX而不是httpget/POST,结构也是相同的。 举重很有表现力和力量,但不是很容易。 如果这不准确,请纠正我! |
|
|
3
10
我在Lift里做了几个网络应用。我来自一个传统的Java背景,有很多Maven+JSF/Facelets+Spring+Hibernate,我必须承认,尽管我喜欢Scala,但我对Lift的一些缺点感到失望。特别是,我认为代码片段经常将业务规则与接口细节混合在一起。而且,实现全面的单元测试非常困难。 我不熟悉Wicket,但目前我正在编写一个使用Play框架的应用程序。Scala支持基本上工作得很好,并且有一个Akka模块。对于任何需要扩展的非平凡应用程序,Akka都是极好的。 Play看起来非常有前景,尽管它仍在积极开发中,文档似乎也相当不错。CRUD框架非常适合快速进入功能状态,或者为不经常更改的数据构建简单的管理接口。 |