我想我已经为这两个框架投入了一些时间。我真的很喜欢它们,因为它们将Swing编码带到了Web开发中。对于我来说,没有更容易的选择(虽然有click,但我不喜欢速度模板)。
是的,它们有差异。
我不必太担心外观和感觉。它带有漂亮的主题
是的,但每个严肃的公司都会以不同的方式设计其应用程序(除非您正在原型设计)。
我将在Java中完成所有编程,这是我非常擅长的,而不必花时间去破解我不太擅长的CSS
那么Vaadin会比较“好”。
我将失去声明式创建UI的能力。
那有什么优点呢? (顺便说一句:您可以使用groovy进行声明性编码;-))
但好吧。 我知道你的意思:如果你能负担得起几个单独的设计师,那么wicket会更好。
我几乎无法给它们桌面外观和感觉。
为什么不能?或者你在这里指什么?Wicket支持ajax,有些组件支持漂亮的“桌面外观”(ajaxlink,lazycomponent,autocompletion,progressbar,请参见wicket stuff + extensions)。 好吧,对于任何更复杂的组件,您都必须使用javascript进行编码,但是顺便说一句,您是否知道您甚至可以在wicket中
使用GWT。
一些小经验:
Vaadin在编码时肯定更快(没有css、html的东西)。但是如果你要投入生产,需要注意编程的便利性可能会以客户端性能为代价:例如,如果您使用“错误”的布局,如Horizontal/VerticalLayout,...大量使用javascript可能会减慢旧浏览器的速度。
但是Vaadin并不慢!使用适当的布局,如CssLayout或FastLayout,即使旧浏览器也可以使用它。(尽管如果您使用CssLayout,您的编码风格真的很像wicket。)
Vaadin的一个问题是有点难以进行分析,因为您不容易看到客户端需要所有CPU的位置,而嵌套的div名称变得神秘。
Wicket的一个伟大之处在于其
warp persist integration。
(Guice可以集成到Vaadin和Wicket中)
使用Vaadin应该很容易测试UI(尽管我没有找到单元测试的东西),而使用
wicket非常容易。
最后但并非最不重要的是,在Vaadin中创建列表/表格与wicket相比非常容易。