Upload
sib-visions-gmbh
View
336
Download
2
Embed Size (px)
DESCRIPTION
Are there enough web and UI frameworks for us developers? Absolutely! There are really cool web UI frameworks like GXT or Vaadin. There are swing and JavaFX for desktop apps and many others. Don’t forget all web frameworks! Which UI framework is the best for your next project and works with browsers and OS‘ in 5 or 10 years? Which investment is future save? The only solution is a technology and UI independent framework. Such a solution is JVx (Apache 2.0). It is a full-stack app framework, designed as library. Develop UI independent and decide which UI technology is best for you. If you prefer Swing, start your app as Swing Application. If it’s Vaadin, use Vaadin. Don’t rewrite your application, just choose the preferred UI technology!
Citation preview
UI independentApplication Development
in practice
Roland Hörmann
JVx - Application Framework
UI independent application development in practice
Are there enough web UI frameworks?
Which one will work in 5 or 10 years?
Core Applications have to run longer?
How can I handle different UI Plattforms?
JVx - Application Framework
UI independent application development in practice
An
UI independent Framework
is the solution
JVx - Application Framework
UI independent application development in practice
Same Source Code – different UI Platforms
Small & simple
Full Stack Framework
- Web, Mobile & Desktop Applications
Swing
HTML5 + Ajax
Native iOS & Android
JVx - Application Framework
UI independent application development in practice
Web
JVx - Application Framework
UI independent application development in practice
Mobile
Same Source Code!
JVx - Application Framework
UI independent application development in practice
Desktop Swing
Same Source Code!
JVx - Application Framework
UI independent application development in practice
Overview
HTML5 + Ajax
Mobile
Native iOS & Android
Web Desktop
GU
I Te
chn
olo
gie
s
Swing
Others…
FX, …
Same Java Source Code
You
rA
pp
licat
ion
Business Logic, Persistence, Database
JVx - Application Framework
UI independent application development in practice
GUI Architecture
HTML5 + Ajax
Web Desktop
GU
I Te
chn
olo
gies
Swing
Others…
FX, …
Same Java GUI Source Code
You
rA
pp
licat
ion
GUI specificLauncher
GUI API – javax.rad.genui.*
JVx.swing JVx.fxJVx.vaadinGUI specificImplementation
ApplicationWeb Start
ApplicationBrowser
JVx - Application Framework
UI independent application development in practice
GUI Architecture
Mobile
Native iOS & Android
GU
I Te
chn
olo
gies
Same Java Source Code
You
rA
pp
licat
ion
REST
GUI API – javax.rad.genui.*
Native iOS & Android App
JVx.mobile Server
Simple representation of Screens formobile usage and handles all serverinteractions.
Headless instantiation ofScreens
JVx - Application Framework
UI independent application development in practice
System Architecture
Mobile
PersistenceContext und Dependency Management Authentication Management
Serv
er
Web Desktop
Clie
nt
iOS & Android App Browser Java ClientWeb Start
GUI API – javax.rad.genui.*
GUI
Business Logic, PersistenceYou
rA
pp
licat
ion
JVx - Application Framework
UI independent application development in practice
General Features
• Open Source Application Framework– Apache 2.0 License
• Full Stack Framework– Full Application Stack (GUI to Persistence)– Simple APIs, short learning curve– Well documented– Easy to extend
• Database independent• Applicationsserver independent• Multi-Tier Architecture
JVx - Application Framework
UI independent application development in practice
Major GUI Features
• GUI platform independent– Web (vaadin)
– Mobile (iOS, Android)
– Desktop (Swing, in the future JavaFx)
• Unified dynamic model for all data-bound GUI controls– Uses persistence metadata as base
Datatypes, Sizes, Datatype dependent editors(e.g.: „Date“ -> date editor, Master data -> Dropdown list)
– Editor (Number, Date, Dropdown), Table, Tree, Chart
JVx - Application Framework
UI independent application development in practice
Global Features 1/2
• Flexible authentication management withdifferent security managers– Database table, NTLM, LDAP, XML
• CRUD Triggers on Client & ApplicationServer– Before/After Insert, Update, Delete, Select, …
• Event & Listener concept
• Multilanguage support
JVx - Application Framework
UI independent application development in practice
Global Features 2/2
• Lazy Loading– Only visible information is loaded
– No Paging, fully integrated in GUI Controls
– Millions of records can be processed
• Flexible application frame– Integrated in the Framework – consisting of Toolbar, Menu,
Login/out, Change password, Help, About, Save, Reload, …..
– Easy to extend and easy to adjust.-> Corporate Design – CSS, Layout-> Web Applicationen style
– Fully user-definable application frame through usage ofinterfaces
JVx - Application Framework
UI independent application development in practice
More Features
• Online Help System for Web & Desktop Applications
– Table of contents, Search, HTML
• User and roles management– Database tables, if Rolle==admin then function x
- Web, Mobile & Desktop Applications
http://sourceforge.net/projects/jvx/