SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Downloaden Sie, um offline zu lesen
Vaadin Jump Start
Haim Michael
May 30th
, 2014
All logos, trade marks and brand names used in this presentation belong to their
respective owners. Haim Michael and LifeMichael are not related, connected
or associated with any of the technologies mentioned in this presentation or with
the companies that develop them.
You can find the video clip at http://youtu.be/ueQ-TGuIW1Q.
LifeMichael.com
Table of Content
LifeMichael.com
●
What is Vaadin?
●
Google Web Toolkit
● Extending Vaadin
●
Vaadin Themes
●
Data Binding
●
Visual Designer
● Vaadin TouchKit
●
The History of Vaadin
● Easy Deployment
●
Vaadin IDEs
● Learning Resources
● Questions & Answers
What is Vaadin?
● Vaadin is a Java web applications framework that
simplify the development of one page web applications
with a rich user interface.
● Vaadin creates the code running on the web browser,
including the code that communicates with the server.
● Using Vaadin we don't need to learn client side web
technologies such as JavaScript, CSS and HTML5.
www.vaadin.com
LifeMichael.com
What is Vaadin?
● Handling the first HTTP request from the client Vaadin
returns bunch of code in JavaScript back to the client.
● That code is responsible from now on for rendering the
user interface, handling its events and communicating
with the server.
LifeMichael.com
Web Browser HTTP Server
Code We Developed
using Vaadin
Code in JavaScript
Generated by Vaadin
continuous
connection
What is Vaadin?
● Using Vaadin the code looks as if we were developing a
stand alone application with GUI based on Swing.
LifeMichael.com
@SuppressWarnings("serial")
public class HelloUI extends UI {
@Override
protected void init(VaadinRequest request) {
final VerticalLayout layout = new VerticalLayout();
layout.setMargin(true);
setContent(layout);
Button button = new Button("Click Me");
button.addClickListener(new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
layout.addComponent(new Label("click!"));
}
});
layout.addComponent(button);
}
}
Google Web Toolkit
● The Vaadin framework uses the Google Web Toolkit
framework that assists with generating the code in
JavaScript and provides the capability to create a full
featured user interface.
www.gwtproject.org
LifeMichael.com
Extending Vaadin
● Vaadin allows us to extend it with new 3rd party widgets
as well as with our owns. We can find lots of add-ons
ready for use in the Vaadin directory.
https://vaadin.com/directory
LifeMichael.com
Vaadin Themes
● Using Vaadin we get a clear separation between the
structure of the user interface and its appearance.
● The appearance is controlled by the theme we choose.
● We can use themes that were already developed or
develop our own. Each theme includes mainly CSS.
LifeMichael.com
Data Binding
● The Vaadin framework allows us to bind user interface
components directly to the data they display.
● It is possible to create UI components that allow the end
user to edit the data.
LifeMichael.com
Visual Designer
● The visual designer simplifies the development
process. The code it generates is relatively readable.
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is a responsive framework that
includes a collection of mobile platform optimized HTML5
widgets.
www.vaadin.com/touchkit
LifeMichael.com
Vaadin TouchKit
● Vaadin TouchKit targets Android 2.3 (or newer), iOS 5 (or
newer) and Windows Phone 8 (or newer).
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is optimized for mobile telephones
hybrid applications development. Vaadin TouchKit
supports the PhoneGap framework and allows us writing
code in Java that is executed on the server and takes
care after the required interaction with the mobile
telephone hardware.
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is available for free when
developing open source projects. When dealing with
commercial products there is a license fee.
LifeMichael.com
The History of Vaadin
● The framework was born in 2000. The original name was
Millstone Library.
● The framework was developed as inner project in IT Mill in
order to develop an information system for one of its
clients.
LifeMichael.com
The History of Vaadin
● In 2006 IT Mill released a new version that included an
extensive use of Ajax and in 2007 the client side engine
was rewritten with GWT.
● In 2009 the framework was renamed to Vaadin. Shortly
after, the IT Mill company was also renamed as Vaadin.
● Vaadin 7 was released in 2012 and it is significantly more
web oriented.
LifeMichael.com
Easy Deployment
● The Vaadin framework uses one single Java Servlet for
running the application.
● We can deploy a Vaadin based web application on every
Java EE application server, such as Tomcat*, WebLogic,
WebSphere, Jboss and Glassfish.
* Apache Tomcat is not a Java EE application server. It is merely a web container. For
running a vaadin web application it is sufficient.
LifeMichael.com
Vaadin IDEs
● The Vaadin plugin is available for Eclipse, Netbeans and
IntelliJ.
LifeMichael.com
www.eclipse.org www.netbeans.org
www.jetbrains.com/idea/
Learning Resources
● You can find the Book of Vaadin available online for free at
https://vaadin.com/book.
LifeMichael.com
Learning Resources
● The Vaadin API documentation can be found at
https://vaadin.com/api.
LifeMichael.com
Learning Resources
● You can find a growing number of online free courses about
various topics in the Java programming language (including
Vaadin) at http://abelski.lifemichael.com.
LifeMichael.com
Learning Resources
● You can find my israeli guide for using Vaadin available for
free at http://www.vaadinbook.co.il.
LifeMichael.com
Questions & Answers
● Three courses you might find interesting include
Software Engineering in PHP
more info
Android 4.4 Java Applications Development
more info
HTML5 Cross Platform Mobile Applications
more info
● If you enjoyed my lecture please leave me a comment
at http://speakerpedia.com/speakers/life-michael.
Thanks for your time!
Haim.
LifeMichael.com
Vaadin Jump Start
Haim Michael
May 30th
, 2014
All logos, trade marks and brand names used in this presentation belong to their
respective owners. Haim Michael and LifeMichael are not related, connected
or associated with any of the technologies mentioned in this presentation or with
the companies that develop them.
You can find the video clip at http://youtu.be/ueQ-TGuIW1Q.
LifeMichael.com
Table of Content
LifeMichael.com
● What is Vaadin?
● Google Web Toolkit
●
Extending Vaadin
● Vaadin Themes
● Data Binding
●
Visual Designer
●
Vaadin TouchKit
● The History of Vaadin
● Easy Deployment
●
Vaadin IDEs
●
Learning Resources
● Questions & Answers
What is Vaadin?
● Vaadin is a Java web applications framework that
simplify the development of one page web applications
with a rich user interface.
● Vaadin creates the code running on the web browser,
including the code that communicates with the server.
● Using Vaadin we don't need to learn client side web
technologies such as JavaScript, CSS and HTML5.
www.vaadin.com
LifeMichael.com
What is Vaadin?
● Handling the first HTTP request from the client Vaadin
returns bunch of code in JavaScript back to the client.
● That code is responsible from now on for rendering the
user interface, handling its events and communicating
with the server.
LifeMichael.com
Web Browser HTTP Server
Code We Developed
using Vaadin
Code in JavaScript
Generated by Vaadin
continuous
connection
What is Vaadin?
● Using Vaadin the code looks as if we were developing a
stand alone application with GUI based on Swing.
LifeMichael.com
@SuppressWarnings("serial")
public class HelloUI extends UI {
@Override
protected void init(VaadinRequest request) {
final VerticalLayout layout = new VerticalLayout();
layout.setMargin(true);
setContent(layout);
Button button = new Button("Click Me");
button.addClickListener(new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
layout.addComponent(new Label("click!"));
}
});
layout.addComponent(button);
}
}
Google Web Toolkit
● The Vaadin framework uses the Google Web Toolkit
framework that assists with generating the code in
JavaScript and provides the capability to create a full
featured user interface.
www.gwtproject.org
LifeMichael.com
Extending Vaadin
● Vaadin allows us to extend it with new 3rd party widgets
as well as with our owns. We can find lots of add-ons
ready for use in the Vaadin directory.
https://vaadin.com/directory
LifeMichael.com
Vaadin Themes
● Using Vaadin we get a clear separation between the
structure of the user interface and its appearance.
● The appearance is controlled by the theme we choose.
● We can use themes that were already developed or
develop our own. Each theme includes mainly CSS.
LifeMichael.com
Data Binding
● The Vaadin framework allows us to bind user interface
components directly to the data they display.
● It is possible to create UI components that allow the end
user to edit the data.
LifeMichael.com
Visual Designer
● The visual designer simplifies the development
process. The code it generates is relatively readable.
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is a responsive framework that
includes a collection of mobile platform optimized
HTML5 widgets.
www.vaadin.com/touchkit
LifeMichael.com
Vaadin TouchKit
● Vaadin TouchKit targets Android 2.3 (or newer), iOS 5 (or
newer) and Windows Phone 8 (or newer).
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is optimized for mobile telephones
hybrid applications development. Vaadin TouchKit
supports the PhoneGap framework and allows us writing
code in Java that is executed on the server and takes
care after the required interaction with the mobile
telephone hardware.
LifeMichael.com
Vaadin TouchKit
● The Vaadin TouchKit is available for free when
developing open source projects. When dealing with
commercial products there is a license fee.
LifeMichael.com
The History of Vaadin
● The framework was born in 2000. The original name was
Millstone Library.
● The framework was developed as inner project in IT Mill in
order to develop an information system for one of its
clients.
LifeMichael.com
The History of Vaadin
● In 2006 IT Mill released a new version that included an
extensive use of Ajax and in 2007 the client side engine
was rewritten with GWT.
● In 2009 the framework was renamed to Vaadin. Shortly
after, the IT Mill company was also renamed as Vaadin.
● Vaadin 7 was released in 2012 and it is significantly more
web oriented.
LifeMichael.com
Easy Deployment
● The Vaadin framework uses one single Java Servlet for
running the application.
● We can deploy a Vaadin based web application on every
Java EE application server, such as Tomcat*, WebLogic,
WebSphere, Jboss and Glassfish.
* Apache Tomcat is not a Java EE application server. It is merely a web container. For
running a vaadin web application it is sufficient.
LifeMichael.com
Vaadin IDEs
● The Vaadin plugin is available for Eclipse, Netbeans and
IntelliJ.
LifeMichael.com
www.eclipse.org www.netbeans.org
www.jetbrains.com/idea/
Learning Resources
● You can find the Book of Vaadin available online for free at
https://vaadin.com/book.
LifeMichael.com
Learning Resources
● The Vaadin API documentation can be found at
https://vaadin.com/api.
LifeMichael.com
Learning Resources
● You can find a growing number of online free courses about
various topics in the Java programming language (including
Vaadin) at http://abelski.lifemichael.com.
LifeMichael.com
Learning Resources
● You can find my israeli guide for using Vaadin available for
free at http://www.vaadinbook.co.il.
LifeMichael.com
Questions & Answers
● Three courses you might find interesting include
Software Engineering in PHP
more info
Android 4.4 Java Applications Development
more info
HTML5 Cross Platform Mobile Applications
more info
● If you enjoyed my lecture please leave me a comment
at http://speakerpedia.com/speakers/life-michael.
Thanks for your time!
Haim.
LifeMichael.com

Weitere ähnliche Inhalte

Ähnlich wie Vaadin Jump Start

Java Development Company | Xicom
Java Development Company | XicomJava Development Company | Xicom
Java Development Company | XicomRyanForeman5
 
Vaadin Flow - JavaLand 2018
Vaadin Flow - JavaLand 2018Vaadin Flow - JavaLand 2018
Vaadin Flow - JavaLand 2018Peter Lehto
 
Android crash course_20180812
Android crash course_20180812Android crash course_20180812
Android crash course_20180812Haim Michael
 
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speechVue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speechDivante
 
Top 10 PWA Frameworks in 2020
Top 10 PWA Frameworks in 2020Top 10 PWA Frameworks in 2020
Top 10 PWA Frameworks in 2020Devathon
 
Django app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh AgarwalDjango app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh Agarwalratneshsinghparihar
 
Is Vue catching up with React.pdf
Is Vue catching up with React.pdfIs Vue catching up with React.pdf
Is Vue catching up with React.pdfMindfire LLC
 
9 Best Tools to Leverage for Progressive Web App Development
9 Best Tools to Leverage for Progressive Web App Development9 Best Tools to Leverage for Progressive Web App Development
9 Best Tools to Leverage for Progressive Web App Developmentcodecraftcrew
 
#11 DataWeave Extension Library using Visual Studio Code
#11 DataWeave Extension Library using Visual Studio Code#11 DataWeave Extension Library using Visual Studio Code
#11 DataWeave Extension Library using Visual Studio CodeAnoopRamachandran13
 
Curious Coders Java Web Frameworks Comparison
Curious Coders Java Web Frameworks ComparisonCurious Coders Java Web Frameworks Comparison
Curious Coders Java Web Frameworks ComparisonHamed Hatami
 
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationDivante
 
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and Vaadin
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and VaadinSimple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and Vaadin
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and VaadinJian Wu
 
Vaadin7 coding ui components
Vaadin7   coding ui componentsVaadin7   coding ui components
Vaadin7 coding ui componentsmp technology
 
Vaadin7 - coding ui components
Vaadin7 -  coding ui componentsVaadin7 -  coding ui components
Vaadin7 - coding ui componentsPatrick Pfister
 
Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1Muhammad Ghazali
 
Top Web Development Frameworks Comparison: All You Need To Know
Top Web Development Frameworks Comparison: All You Need To KnowTop Web Development Frameworks Comparison: All You Need To Know
Top Web Development Frameworks Comparison: All You Need To KnowPixel Crayons
 

Ähnlich wie Vaadin Jump Start (20)

Java Development Company | Xicom
Java Development Company | XicomJava Development Company | Xicom
Java Development Company | Xicom
 
Vaadin Flow - JavaLand 2018
Vaadin Flow - JavaLand 2018Vaadin Flow - JavaLand 2018
Vaadin Flow - JavaLand 2018
 
Web summit.pptx
Web summit.pptxWeb summit.pptx
Web summit.pptx
 
Android crash course_20180812
Android crash course_20180812Android crash course_20180812
Android crash course_20180812
 
What's new in Visual Studio 2022
What's new in Visual Studio 2022What's new in Visual Studio 2022
What's new in Visual Studio 2022
 
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speechVue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
 
Top 10 PWA Frameworks in 2020
Top 10 PWA Frameworks in 2020Top 10 PWA Frameworks in 2020
Top 10 PWA Frameworks in 2020
 
Micro-Frontend Architecture
Micro-Frontend ArchitectureMicro-Frontend Architecture
Micro-Frontend Architecture
 
Django app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh AgarwalDjango app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh Agarwal
 
Is Vue catching up with React.pdf
Is Vue catching up with React.pdfIs Vue catching up with React.pdf
Is Vue catching up with React.pdf
 
9 Best Tools to Leverage for Progressive Web App Development
9 Best Tools to Leverage for Progressive Web App Development9 Best Tools to Leverage for Progressive Web App Development
9 Best Tools to Leverage for Progressive Web App Development
 
Django PPT.pptx
Django PPT.pptxDjango PPT.pptx
Django PPT.pptx
 
#11 DataWeave Extension Library using Visual Studio Code
#11 DataWeave Extension Library using Visual Studio Code#11 DataWeave Extension Library using Visual Studio Code
#11 DataWeave Extension Library using Visual Studio Code
 
Curious Coders Java Web Frameworks Comparison
Curious Coders Java Web Frameworks ComparisonCurious Coders Java Web Frameworks Comparison
Curious Coders Java Web Frameworks Comparison
 
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
 
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and Vaadin
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and VaadinSimple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and Vaadin
Simple Open Source Java Cloud App Stack with Guice, Hibernate, Jersey and Vaadin
 
Vaadin7 coding ui components
Vaadin7   coding ui componentsVaadin7   coding ui components
Vaadin7 coding ui components
 
Vaadin7 - coding ui components
Vaadin7 -  coding ui componentsVaadin7 -  coding ui components
Vaadin7 - coding ui components
 
Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1
 
Top Web Development Frameworks Comparison: All You Need To Know
Top Web Development Frameworks Comparison: All You Need To KnowTop Web Development Frameworks Comparison: All You Need To Know
Top Web Development Frameworks Comparison: All You Need To Know
 

Mehr von Haim Michael

Virtual Threads in Java
Virtual Threads in JavaVirtual Threads in Java
Virtual Threads in JavaHaim Michael
 
MongoDB Design Patterns
MongoDB Design PatternsMongoDB Design Patterns
MongoDB Design PatternsHaim Michael
 
Introduction to SQL Injections
Introduction to SQL InjectionsIntroduction to SQL Injections
Introduction to SQL InjectionsHaim Michael
 
Record Classes in Java
Record Classes in JavaRecord Classes in Java
Record Classes in JavaHaim Michael
 
Microservices Design Patterns
Microservices Design PatternsMicroservices Design Patterns
Microservices Design PatternsHaim Michael
 
Structural Pattern Matching in Python
Structural Pattern Matching in PythonStructural Pattern Matching in Python
Structural Pattern Matching in PythonHaim Michael
 
Unit Testing in Python
Unit Testing in PythonUnit Testing in Python
Unit Testing in PythonHaim Michael
 
OOP Best Practices in JavaScript
OOP Best Practices in JavaScriptOOP Best Practices in JavaScript
OOP Best Practices in JavaScriptHaim Michael
 
JavaScript Jump Start 20220214
JavaScript Jump Start 20220214JavaScript Jump Start 20220214
JavaScript Jump Start 20220214Haim Michael
 
Bootstrap Jump Start
Bootstrap Jump StartBootstrap Jump Start
Bootstrap Jump StartHaim Michael
 
What is new in PHP
What is new in PHPWhat is new in PHP
What is new in PHPHaim Michael
 
What is new in Python 3.9
What is new in Python 3.9What is new in Python 3.9
What is new in Python 3.9Haim Michael
 
Programming in Python on Steroid
Programming in Python on SteroidProgramming in Python on Steroid
Programming in Python on SteroidHaim Michael
 
The matplotlib Library
The matplotlib LibraryThe matplotlib Library
The matplotlib LibraryHaim Michael
 
Pandas meetup 20200908
Pandas meetup 20200908Pandas meetup 20200908
Pandas meetup 20200908Haim Michael
 
The num py_library_20200818
The num py_library_20200818The num py_library_20200818
The num py_library_20200818Haim Michael
 
Jupyter notebook 20200728
Jupyter notebook 20200728Jupyter notebook 20200728
Jupyter notebook 20200728Haim Michael
 
Node.js Crash Course (Jump Start)
Node.js Crash Course (Jump Start) Node.js Crash Course (Jump Start)
Node.js Crash Course (Jump Start) Haim Michael
 

Mehr von Haim Michael (20)

Anti Patterns
Anti PatternsAnti Patterns
Anti Patterns
 
Virtual Threads in Java
Virtual Threads in JavaVirtual Threads in Java
Virtual Threads in Java
 
MongoDB Design Patterns
MongoDB Design PatternsMongoDB Design Patterns
MongoDB Design Patterns
 
Introduction to SQL Injections
Introduction to SQL InjectionsIntroduction to SQL Injections
Introduction to SQL Injections
 
Record Classes in Java
Record Classes in JavaRecord Classes in Java
Record Classes in Java
 
Microservices Design Patterns
Microservices Design PatternsMicroservices Design Patterns
Microservices Design Patterns
 
Structural Pattern Matching in Python
Structural Pattern Matching in PythonStructural Pattern Matching in Python
Structural Pattern Matching in Python
 
Unit Testing in Python
Unit Testing in PythonUnit Testing in Python
Unit Testing in Python
 
OOP Best Practices in JavaScript
OOP Best Practices in JavaScriptOOP Best Practices in JavaScript
OOP Best Practices in JavaScript
 
Java Jump Start
Java Jump StartJava Jump Start
Java Jump Start
 
JavaScript Jump Start 20220214
JavaScript Jump Start 20220214JavaScript Jump Start 20220214
JavaScript Jump Start 20220214
 
Bootstrap Jump Start
Bootstrap Jump StartBootstrap Jump Start
Bootstrap Jump Start
 
What is new in PHP
What is new in PHPWhat is new in PHP
What is new in PHP
 
What is new in Python 3.9
What is new in Python 3.9What is new in Python 3.9
What is new in Python 3.9
 
Programming in Python on Steroid
Programming in Python on SteroidProgramming in Python on Steroid
Programming in Python on Steroid
 
The matplotlib Library
The matplotlib LibraryThe matplotlib Library
The matplotlib Library
 
Pandas meetup 20200908
Pandas meetup 20200908Pandas meetup 20200908
Pandas meetup 20200908
 
The num py_library_20200818
The num py_library_20200818The num py_library_20200818
The num py_library_20200818
 
Jupyter notebook 20200728
Jupyter notebook 20200728Jupyter notebook 20200728
Jupyter notebook 20200728
 
Node.js Crash Course (Jump Start)
Node.js Crash Course (Jump Start) Node.js Crash Course (Jump Start)
Node.js Crash Course (Jump Start)
 

Kürzlich hochgeladen

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 

Kürzlich hochgeladen (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 

Vaadin Jump Start

  • 1. Vaadin Jump Start Haim Michael May 30th , 2014 All logos, trade marks and brand names used in this presentation belong to their respective owners. Haim Michael and LifeMichael are not related, connected or associated with any of the technologies mentioned in this presentation or with the companies that develop them. You can find the video clip at http://youtu.be/ueQ-TGuIW1Q. LifeMichael.com
  • 2. Table of Content LifeMichael.com ● What is Vaadin? ● Google Web Toolkit ● Extending Vaadin ● Vaadin Themes ● Data Binding ● Visual Designer ● Vaadin TouchKit ● The History of Vaadin ● Easy Deployment ● Vaadin IDEs ● Learning Resources ● Questions & Answers
  • 3. What is Vaadin? ● Vaadin is a Java web applications framework that simplify the development of one page web applications with a rich user interface. ● Vaadin creates the code running on the web browser, including the code that communicates with the server. ● Using Vaadin we don't need to learn client side web technologies such as JavaScript, CSS and HTML5. www.vaadin.com LifeMichael.com
  • 4. What is Vaadin? ● Handling the first HTTP request from the client Vaadin returns bunch of code in JavaScript back to the client. ● That code is responsible from now on for rendering the user interface, handling its events and communicating with the server. LifeMichael.com Web Browser HTTP Server Code We Developed using Vaadin Code in JavaScript Generated by Vaadin continuous connection
  • 5. What is Vaadin? ● Using Vaadin the code looks as if we were developing a stand alone application with GUI based on Swing. LifeMichael.com @SuppressWarnings("serial") public class HelloUI extends UI { @Override protected void init(VaadinRequest request) { final VerticalLayout layout = new VerticalLayout(); layout.setMargin(true); setContent(layout); Button button = new Button("Click Me"); button.addClickListener(new Button.ClickListener() { public void buttonClick(ClickEvent event) { layout.addComponent(new Label("click!")); } }); layout.addComponent(button); } }
  • 6. Google Web Toolkit ● The Vaadin framework uses the Google Web Toolkit framework that assists with generating the code in JavaScript and provides the capability to create a full featured user interface. www.gwtproject.org LifeMichael.com
  • 7. Extending Vaadin ● Vaadin allows us to extend it with new 3rd party widgets as well as with our owns. We can find lots of add-ons ready for use in the Vaadin directory. https://vaadin.com/directory LifeMichael.com
  • 8. Vaadin Themes ● Using Vaadin we get a clear separation between the structure of the user interface and its appearance. ● The appearance is controlled by the theme we choose. ● We can use themes that were already developed or develop our own. Each theme includes mainly CSS. LifeMichael.com
  • 9. Data Binding ● The Vaadin framework allows us to bind user interface components directly to the data they display. ● It is possible to create UI components that allow the end user to edit the data. LifeMichael.com
  • 10. Visual Designer ● The visual designer simplifies the development process. The code it generates is relatively readable. LifeMichael.com
  • 11. Vaadin TouchKit ● The Vaadin TouchKit is a responsive framework that includes a collection of mobile platform optimized HTML5 widgets. www.vaadin.com/touchkit LifeMichael.com
  • 12. Vaadin TouchKit ● Vaadin TouchKit targets Android 2.3 (or newer), iOS 5 (or newer) and Windows Phone 8 (or newer). LifeMichael.com
  • 13. Vaadin TouchKit ● The Vaadin TouchKit is optimized for mobile telephones hybrid applications development. Vaadin TouchKit supports the PhoneGap framework and allows us writing code in Java that is executed on the server and takes care after the required interaction with the mobile telephone hardware. LifeMichael.com
  • 14. Vaadin TouchKit ● The Vaadin TouchKit is available for free when developing open source projects. When dealing with commercial products there is a license fee. LifeMichael.com
  • 15. The History of Vaadin ● The framework was born in 2000. The original name was Millstone Library. ● The framework was developed as inner project in IT Mill in order to develop an information system for one of its clients. LifeMichael.com
  • 16. The History of Vaadin ● In 2006 IT Mill released a new version that included an extensive use of Ajax and in 2007 the client side engine was rewritten with GWT. ● In 2009 the framework was renamed to Vaadin. Shortly after, the IT Mill company was also renamed as Vaadin. ● Vaadin 7 was released in 2012 and it is significantly more web oriented. LifeMichael.com
  • 17. Easy Deployment ● The Vaadin framework uses one single Java Servlet for running the application. ● We can deploy a Vaadin based web application on every Java EE application server, such as Tomcat*, WebLogic, WebSphere, Jboss and Glassfish. * Apache Tomcat is not a Java EE application server. It is merely a web container. For running a vaadin web application it is sufficient. LifeMichael.com
  • 18. Vaadin IDEs ● The Vaadin plugin is available for Eclipse, Netbeans and IntelliJ. LifeMichael.com www.eclipse.org www.netbeans.org www.jetbrains.com/idea/
  • 19. Learning Resources ● You can find the Book of Vaadin available online for free at https://vaadin.com/book. LifeMichael.com
  • 20. Learning Resources ● The Vaadin API documentation can be found at https://vaadin.com/api. LifeMichael.com
  • 21. Learning Resources ● You can find a growing number of online free courses about various topics in the Java programming language (including Vaadin) at http://abelski.lifemichael.com. LifeMichael.com
  • 22. Learning Resources ● You can find my israeli guide for using Vaadin available for free at http://www.vaadinbook.co.il. LifeMichael.com
  • 23. Questions & Answers ● Three courses you might find interesting include Software Engineering in PHP more info Android 4.4 Java Applications Development more info HTML5 Cross Platform Mobile Applications more info ● If you enjoyed my lecture please leave me a comment at http://speakerpedia.com/speakers/life-michael. Thanks for your time! Haim. LifeMichael.com
  • 24. Vaadin Jump Start Haim Michael May 30th , 2014 All logos, trade marks and brand names used in this presentation belong to their respective owners. Haim Michael and LifeMichael are not related, connected or associated with any of the technologies mentioned in this presentation or with the companies that develop them. You can find the video clip at http://youtu.be/ueQ-TGuIW1Q. LifeMichael.com
  • 25. Table of Content LifeMichael.com ● What is Vaadin? ● Google Web Toolkit ● Extending Vaadin ● Vaadin Themes ● Data Binding ● Visual Designer ● Vaadin TouchKit ● The History of Vaadin ● Easy Deployment ● Vaadin IDEs ● Learning Resources ● Questions & Answers
  • 26. What is Vaadin? ● Vaadin is a Java web applications framework that simplify the development of one page web applications with a rich user interface. ● Vaadin creates the code running on the web browser, including the code that communicates with the server. ● Using Vaadin we don't need to learn client side web technologies such as JavaScript, CSS and HTML5. www.vaadin.com LifeMichael.com
  • 27. What is Vaadin? ● Handling the first HTTP request from the client Vaadin returns bunch of code in JavaScript back to the client. ● That code is responsible from now on for rendering the user interface, handling its events and communicating with the server. LifeMichael.com Web Browser HTTP Server Code We Developed using Vaadin Code in JavaScript Generated by Vaadin continuous connection
  • 28. What is Vaadin? ● Using Vaadin the code looks as if we were developing a stand alone application with GUI based on Swing. LifeMichael.com @SuppressWarnings("serial") public class HelloUI extends UI { @Override protected void init(VaadinRequest request) { final VerticalLayout layout = new VerticalLayout(); layout.setMargin(true); setContent(layout); Button button = new Button("Click Me"); button.addClickListener(new Button.ClickListener() { public void buttonClick(ClickEvent event) { layout.addComponent(new Label("click!")); } }); layout.addComponent(button); } }
  • 29. Google Web Toolkit ● The Vaadin framework uses the Google Web Toolkit framework that assists with generating the code in JavaScript and provides the capability to create a full featured user interface. www.gwtproject.org LifeMichael.com
  • 30. Extending Vaadin ● Vaadin allows us to extend it with new 3rd party widgets as well as with our owns. We can find lots of add-ons ready for use in the Vaadin directory. https://vaadin.com/directory LifeMichael.com
  • 31. Vaadin Themes ● Using Vaadin we get a clear separation between the structure of the user interface and its appearance. ● The appearance is controlled by the theme we choose. ● We can use themes that were already developed or develop our own. Each theme includes mainly CSS. LifeMichael.com
  • 32. Data Binding ● The Vaadin framework allows us to bind user interface components directly to the data they display. ● It is possible to create UI components that allow the end user to edit the data. LifeMichael.com
  • 33. Visual Designer ● The visual designer simplifies the development process. The code it generates is relatively readable. LifeMichael.com
  • 34. Vaadin TouchKit ● The Vaadin TouchKit is a responsive framework that includes a collection of mobile platform optimized HTML5 widgets. www.vaadin.com/touchkit LifeMichael.com
  • 35. Vaadin TouchKit ● Vaadin TouchKit targets Android 2.3 (or newer), iOS 5 (or newer) and Windows Phone 8 (or newer). LifeMichael.com
  • 36. Vaadin TouchKit ● The Vaadin TouchKit is optimized for mobile telephones hybrid applications development. Vaadin TouchKit supports the PhoneGap framework and allows us writing code in Java that is executed on the server and takes care after the required interaction with the mobile telephone hardware. LifeMichael.com
  • 37. Vaadin TouchKit ● The Vaadin TouchKit is available for free when developing open source projects. When dealing with commercial products there is a license fee. LifeMichael.com
  • 38. The History of Vaadin ● The framework was born in 2000. The original name was Millstone Library. ● The framework was developed as inner project in IT Mill in order to develop an information system for one of its clients. LifeMichael.com
  • 39. The History of Vaadin ● In 2006 IT Mill released a new version that included an extensive use of Ajax and in 2007 the client side engine was rewritten with GWT. ● In 2009 the framework was renamed to Vaadin. Shortly after, the IT Mill company was also renamed as Vaadin. ● Vaadin 7 was released in 2012 and it is significantly more web oriented. LifeMichael.com
  • 40. Easy Deployment ● The Vaadin framework uses one single Java Servlet for running the application. ● We can deploy a Vaadin based web application on every Java EE application server, such as Tomcat*, WebLogic, WebSphere, Jboss and Glassfish. * Apache Tomcat is not a Java EE application server. It is merely a web container. For running a vaadin web application it is sufficient. LifeMichael.com
  • 41. Vaadin IDEs ● The Vaadin plugin is available for Eclipse, Netbeans and IntelliJ. LifeMichael.com www.eclipse.org www.netbeans.org www.jetbrains.com/idea/
  • 42. Learning Resources ● You can find the Book of Vaadin available online for free at https://vaadin.com/book. LifeMichael.com
  • 43. Learning Resources ● The Vaadin API documentation can be found at https://vaadin.com/api. LifeMichael.com
  • 44. Learning Resources ● You can find a growing number of online free courses about various topics in the Java programming language (including Vaadin) at http://abelski.lifemichael.com. LifeMichael.com
  • 45. Learning Resources ● You can find my israeli guide for using Vaadin available for free at http://www.vaadinbook.co.il. LifeMichael.com
  • 46. Questions & Answers ● Three courses you might find interesting include Software Engineering in PHP more info Android 4.4 Java Applications Development more info HTML5 Cross Platform Mobile Applications more info ● If you enjoyed my lecture please leave me a comment at http://speakerpedia.com/speakers/life-michael. Thanks for your time! Haim. LifeMichael.com