diff options
Diffstat (limited to 'documentation/introduction')
-rw-r--r-- | documentation/introduction/intro-background.asciidoc | 57 | ||||
-rw-r--r-- | documentation/introduction/intro-eclipse.asciidoc | 27 | ||||
-rw-r--r-- | documentation/introduction/intro-walkthrough.asciidoc | 21 |
3 files changed, 50 insertions, 55 deletions
diff --git a/documentation/introduction/intro-background.asciidoc b/documentation/introduction/intro-background.asciidoc index ec70b75d9f..ef0138494f 100644 --- a/documentation/introduction/intro-background.asciidoc +++ b/documentation/introduction/intro-background.asciidoc @@ -19,22 +19,27 @@ international pharmaceutical company. IT Mill made the application already in the year 2001 and it is still in use. Since then, the company has produced dozens of large business applications with the library and it has proven its ability to solve hard problems easily. +Millstone 3 was released as open source in 2002. -The next generation of the library, IT Mill Toolkit Release 4, was released in -2006. It introduced an entirely new AJAX-based presentation engine. This allowed -the development of AJAX applications without the need to worry about -communications between the client and the server. +Progress has often required hard decisions to avoid carrying unnecessary legacy burden far into the future. +Nevertheless, our aim has always been to keep migrations easy. [[intro.background.toolkit-5]] -== Release 5 Into the Open +== Release 4 with Single-Page Rendering -((("IT Mill -Toolkit"))) +The next generation of the library, IT Mill Toolkit 4, was released in 2006. +It introduced an entirely new AJAX-based presentation engine. +This allowed the development of AJAX applications without the need to worry about communications between the client and the server. + +[[intro.background.toolkit-5]] +== Release 5 Powered by GWT + +((("IT Mill Toolkit"))) ((("AJAX"))) IT Mill Toolkit 5, released initially at the end of 2007, took a significant step further into AJAX. The client-side rendering of the user interface was -completely rewritten using GWT, the Google Web Toolkit. ((("Google Web -Toolkit"))) +completely rewritten using GWT, the Google Web Toolkit. +((("Google Web Toolkit"))) IT Mill Toolkit 5 introduced many significant improvements both in the server-side API and in the functionality. Rewriting the Client-Side Engine with @@ -50,13 +55,12 @@ The Release 5 was published under the Apache License 2, an unrestrictive open source license, to create faster expansion of the user base and to make the formation of a developer community possible. - [[intro.background.vaadin6]] == Birth of Vaadin Release 6 -IT Mill Toolkit was renamed as __Vaadin Framework__, or Vaadin in short, in -spring 2009. Later IT Mill, the company, was also renamed as Vaadin Ltd. Vaadin -means an adult female semi-domesticated mountain reindeer in Finnish. +IT Mill Toolkit was renamed as _Vaadin Framework_, or Vaadin in short, in +spring 2009. Later IT Mill, the company, was also renamed as Vaadin Ltd. +Vaadin means an adult female semi-domesticated mountain reindeer in Finnish. With Vaadin 6, the number of developers using the framework exploded. Together with the release, the Vaadin Plugin for Eclipse was released, helping the @@ -68,20 +72,16 @@ tremendous growth in the ecosystem around Vaadin. The size of the user community, at least if measured by forum activity, has already gone past the competing server-side frameworks and even GWT. - [[intro.background.vaadin7]] == The Major Revision with Vaadin 7 Vaadin 7 was a major revision that changed the Vaadin API much more than Vaadin -6 did. It is certainly more web-oriented than Vaadin 6 was. We are doing -everything we can to help Vaadin rise high in the web universe. Some of this -work is easy and almost routine - fixing bugs and implementing features. But -going higher also requires standing firmer. That was one of the aims of Vaadin 7 -- redesigning the product so that the new architecture enables Vaadin to reach -over many long-standing challenges. Many of the changes required breaking API -compatibility with Vaadin 6, especially in the client-side, but they are made -with a strong desire to avoid carrying unnecessary legacy burden far into the -future. +6 did. +It became more web-oriented than Vaadin 6 was. +We are doing everything we can to help Vaadin rise high in the web universe. +Some of this work is easy and almost routine - fixing bugs and implementing features. +But going higher also requires standing firmer. +That was one of the aims of Vaadin 7 - redesigning the product so that the new architecture enables Vaadin to reach over many long-standing challenges. Inclusion of the Google Web Toolkit in Vaadin 7 was a significant development, as it meant that Vaadin now provides support for GWT as well. When Google opened @@ -89,6 +89,13 @@ the GWT development in summer 2012, Vaadin (the company) joined the new GWT steering committee. As a member of the committee, Vaadin can work towards the success of GWT as a foundation of the Java web development community. +[[intro.background.vaadin8]] +== Vaadin 8 Introduces New Data Binding API - - +The biggest change in Vaadin 8 is the complete modernization of the data binding API. +Binding components to data sources is one of the core features of the Vaadin Framework, as it eliminates the need to explicitly shuffle data between Vaadin components and data objects, typically beans. +The old data model was designed in time before Java features such as generics. +While the data model was improved over the years, it was fundamentally outdated and complex to use. +The new data binding API works much more fluently in Java 8, especially with Java 8 features such as lambda expressions. +Consequently, to be able to fully use the new features of Java 8, we have raised the requirements from Java 6 to 8. +The change should make Vaadin up to date with the most current Java technologies used by developers. diff --git a/documentation/introduction/intro-eclipse.asciidoc b/documentation/introduction/intro-eclipse.asciidoc index ef7a642af1..e698aef3bc 100644 --- a/documentation/introduction/intro-eclipse.asciidoc +++ b/documentation/introduction/intro-eclipse.asciidoc @@ -5,28 +5,31 @@ layout: page --- [[intro.eclipse]] -= Support for the Eclipse IDE += Support for IDEs While Vaadin is not bound to any specific IDE, and you can in fact easily use it -without any IDE altogether, we provide special support for the Eclipse IDE, -which has become the most used environment for Java development. +without any IDE altogether, we provide special support for the Eclipse IDE, IntelliJ IDEA, and the NetBeans IDE, which have become the most used environment for Java development. -*_Vaadin Plug-in for Eclipse_* helps you in: +An official Vaadin plug-in is available for the Eclipse and NetBeans IDEs. +It helps in: * creating new Vaadin projects, * creating custom themes, -* creating custom client-side widgets, and +* creating custom client-side widgets, + +* downloading add-ons from the Vaadin directory, and * easily upgrading to a newer version of the Vaadin library. -Using the Vaadin plug-in for Eclipse is the recommended way of installing Vaadin for development. -Downloading the installation package that contains the JARs or defining Vaadin as a Maven dependency is also possible. +Availability of the features depends on the IDE. +The ultimate edition of IntelliJ IDEA comes with built-in support for Vaadin. -*_Vaadin Designer_* is a commercial Eclipse plug-in that enables visual editing of Vaadin UIs and composites. -See <<dummy/../../../designer/designer-overview#designer.overview, "Vaadin Designer">> for its complete reference. +*_Vaadin Designer_* is a commercial plug-in available for the Eclipse IDE and IntelliJ IDEA. +It enables visual editing of declarative designs that you can use in your applications. +See <<dummy/../../../designer/designer-overview#designer.overview, "Vaadin Designer">> for more information. -Installation of the Eclipse IDE and the plug-in is covered in <<dummy/../../../framework/installing/installing-eclipse#installing.eclipse,"Installing the Eclipse IDE">>. -The creation of a new Vaadin project using the plug-in is covered in <<dummy/../../../framework/getting-started/getting-started-first-project#getting-started.first-project.creation,"Creating a Project in the Eclipse IDE">>. -See <<dummy/../../../framework/themes/themes-eclipse#themes.eclipse,"Creating a Theme in Eclipse">> and <<dummy/../../../framework/gwt/gwt-eclipse#gwt.eclipse,"Starting It Simple With Eclipse">> for instructions on using the different features of the plug-in. +Using the Vaadin plug-in is the recommended way of installing Vaadin for development. +Installing the IDEs and the plug-ins is covered in <<dummy/../../../framework/installing/installing-overview#installing, "Installing Development Tools">>. +The creation of a new Vaadin project with each IDE is covered in <<dummy/../../../framework/getting-started/getting-started-first-project#getting-started.overview, "Creating a Vaadin Project">>. diff --git a/documentation/introduction/intro-walkthrough.asciidoc b/documentation/introduction/intro-walkthrough.asciidoc index 152817c0ed..ad3519ccd7 100644 --- a/documentation/introduction/intro-walkthrough.asciidoc +++ b/documentation/introduction/intro-walkthrough.asciidoc @@ -31,12 +31,7 @@ public class HelloWorld extends UI { // Have a clickable button content.addComponent(new Button("Push Me!", - new ClickListener() { - @Override - public void buttonClick(ClickEvent e) { - Notification.show("Pushed!"); - } - })); + click -> Notification.show("Pushed!"))); } } ---- @@ -59,18 +54,8 @@ user interface component, which displays simple text, and sets the text to The example also shows how to create a button and handle button click events. Event handling is described in -<<dummy/../../../framework/architecture/architecture-events#architecture.events,"Events -and Listeners">> and on the practical side in -<<dummy/../../../framework/application/application-events#application.events,"Handling -Events with Listeners">>. In addition to listeners, in Java 8 you can handle -events with lambda expressions, which simplifies the handler code significantly. - - -[source, java] ----- -content.addComponent(new Button("Push Me!", - event -> Notification.show("Pushed!"))); ----- +<<dummy/../../../framework/architecture/architecture-events#architecture.events,"Events and Listeners">> and on the practical side in <<dummy/../../../framework/application/application-events#application.events,"Handling Events with Listeners">>. +In Java 8, you can implement listeners with lambda expressions, which simplifies the handler code significantly. The result of the Hello World application, when opened in a browser, is shown in <<figure.intro.walkthrough>>. |