Vaadin 10用于新项目

时间:2018-02-18 15:48:42

标签: vaadin vaadin8 vaadin10 vaadin-flow

我是Java开发人员,我将开始新项目。我的客户端开发技能非常有限,这就是为什么我真的很喜欢Vaadin框架的想法。我已经评估了Vaadin 10 Bakery App Starter应用程序https://vaadin.com/start#vaadin10,并且为了使这个应用程序启动并运行而自定义的HTML / CSS / JavaScript数量让我感到惊讶。现在我真的很困惑,不明白它如何简化开发人员的生活。

我现在可以作为项目启动器应用的唯一应用程序是着名的QuickTickets Dashboard https://demo.vaadin.com/dashboard/,其中所有UI都是纯粹用Java实现的。目前最大的问题是这个应用程序是在Vaadin 8上实现的,我无法为Vaadin 10找到它的版本。你有类似Vaadin 10的东西吗?如果不是,您是否有从Vaadin 8到Vaadin 10的迁移指南,我可以使用它来尝试将此应用程序移植到Vaadin 10?

5 个答案:

答案 0 :(得分:12)

试一试10!

是的,这是真的。我们还没有为只有Java的用户提供启动器。但这并不意味着Vaadin 10不可能。哈维尔已经给出了一个很好的例子。我们一直致力于新的首发,并且将来也会允许第三方的首发。

有关迁移,请查看https://vaadin.com/docs/v10/flow/migration/1-migrating-v8-v10.html。它应该给你一个很好的概述。

除此之外,Vaadin 10已达到测试状态,我们计划在今年发布最终版本。

如果你从未与Vaadin合作,我会建议使用Vaadin 10而不是开始学习“旧”Vaadin(即使它会被支持多年)。

答案 1 :(得分:7)

虽然Vaadin 10 Bakery App Starter在演示框架的新功能方面做得很好,但它主要基于PolymerTemplate,如果你正在寻找一些与Vaadin 8更相似的代码,它可能不是最好的例子。

实际上,编写仅Java的UI仍然像以前的版本一样简单。例如,Vaadin Flow Tutorial(下面的摘录)中描述的MainView类包含Grid,不需要编写HTML或JS。

如果采用这种方法,您可以将应用程序基于Skeleton Starter App,并将ExampleTemplate(聚合物)替换为您自己在Java代码中定义的布局。

@HtmlImport("styles/shared-styles.html")
@Route("")
@Theme(Lumo.class)
@BodySize(height = "100vh", width = "100vw")
public class MainView extends VerticalLayout {
    private CustomerService service = CustomerService.getInstance();
    private Grid<Customer> grid = new Grid<>();

    public MainView() {
       grid.setSizeFull();

       grid.addColumn(Customer::getFirstName).setHeader("First name");
       grid.addColumn(Customer::getLastName).setHeader("Last name");
       grid.addColumn(Customer::getStatus).setHeader("Status");

       add(grid);

       updateList();
   }

   //etc...
}

答案 2 :(得分:7)

使用Vaadin 8

我和Vaadin一起开发了几年,我建议坚持使用Vaadin 8。

虽然Vaadin 10(由GWT替换WebComponents)有了根本性的变化,但我强烈建议坚持使用Vaadin 8开始一个新项目。特别是如果你也是从Vaadin开始。

Vaadin 10是开发者预览版。一路上会有很多变化。此外,知识库(文档,StackOverflow,论坛等)要小得多。此外,我还没有看到2018年发生的稳定版本。我的猜测是2019年夏天,直到它足够稳定以取代Vaadin 8。

了解long-term plans for Vaadin 8 on the company’s roadmap。计划包括几年定期发布季度节奏。

2018年3月:Vaadin 10(现称为 Vaadin Flow just went into beta。公司announced a new release cadence plan,发布季度版和长期支持版(LTS)。也许稳定的发布会比我预期的更早发布。但我仍然建议 Vaadin Framework 8 用于新项目。

答案 3 :(得分:2)

我已经制作了Beverage Buddy app启动器的这个修改版本,您可以查看:https://github.com/OlliTietavainenVaadin/drink-starter-flow。只有Java在那里使用,没有CSS或JavaScript。

答案 4 :(得分:0)

如果您对Kotlin而不是Java感到满意,可以尝试https://github.com/mvysny/vaadin-kotlin-pwa。该应用程序的目标是完全不使用Polymer Templates,并编排纯服务器端的所有内容,就像我们使用Vaadin 8一样。所有内容都应该在Github自述文件中解释 - 如果没有,请告诉我并打开一个bug报告。

相关问题