cuttingEdgepresentation0318
-
Upload
hongbiao-chen -
Category
Documents
-
view
26 -
download
2
Transcript of cuttingEdgepresentation0318
1
From Legacy Java to Dynamic Web and Mobile Applications
Hongbiao Chen, Sr. Pr. Web DeveloperIshita Verma, Software Engineer
From Legacy Java to Dynamic Web and Mobile Applications
CUTTING EDGE 2014
Back End
From Legacy Java to Dynamic Web and Mobile Applications 2
Why Get Rid of HTML Responses?1
REpresentational State Transfer2
The Symantec Trust Center Application3
Server Side Frameworks roundup4
Mobile App Frameworks roundup5
CUTTING EDGE 2014
Why Get Rid of HTML Responses?
• Pushes you towards a decoupled RESTful design of reusing couple pool of resources for serving different clients
• Client side MVC have faster page load for most parts*.• HTML responses are just not very flexible. • Faster to iterate over presentation logic with client side
technologies.
*if you don’t often need to go to server to render
3From Legacy Java to Dynamic Web and Mobile Applications
CUTTING EDGE 2014
REpresentational State Transfer
"REST is defined by four interface constraints:
- identification of resources;-manipulation of resources through representations; -self-descriptive messages; and, -hypermedia as the engine of application state.“
From Legacy Java to Dynamic Web and Mobile Applications 4
CUTTING EDGE 2014
The Symantec SSL Trust Center Application
From Legacy Java to Dynamic Web and Mobile Applications 5
Give every “thing” a URILink things together Use standard methodsResources with multiple representationsCommunicate statelessly
CUTTING EDGE 2014
Technology Roundup: Spring
• Spring HATEOAS – provides common abstractions
(representaiton models, a Link class, API to build links pointing to Spring MVC controllers etc.) to ease building hypermedia driven REST APIs with Spring MVC in general.
• Spring Data JPA, – makes it easy to easily implement JPA based
repositories. • Spring Data REST
– uses Spring HATEOAS to automatically expose resources for entities managed by Spring Data repositories and leverages hypermedia aspects to do pagination, link entities etc.
From Legacy Java to Dynamic Web and Mobile Applications 6
CUTTING EDGE 2014
Technology Roundup: Play!
From Legacy Java to Dynamic Web and Mobile Applications 7
CUTTING EDGE 2014
PhoneGap & Sencha Architect
From Legacy Java to Dynamic Web and Mobile Applications 8
CUTTING EDGE 2014
Front End
From Legacy Java to Dynamic Web and Mobile Applications 9
Mobile App1
Web App2
AngularJS3
Jasmine4
Grunt5
CUTTING EDGE 2014
Mobile App
From Legacy Java to Dynamic Web and Mobile Applications 13
Certificates
CUTTING EDGE 2014
Mobile App
From Legacy Java to Dynamic Web and Mobile Applications 15
Certificate Details
CUTTING EDGE 2014
Web App
From Legacy Java to Dynamic Web and Mobile Applications 17
Enrollment
- Configure
CUTTING EDGE 2014
Web App
From Legacy Java to Dynamic Web and Mobile Applications 18
Enrollment
- Contact
CUTTING EDGE 2014
Features Comparison
Feature Angular Backbone Ember Knockout
Observables Y Y Y Y
Routing Y Y Y
View binding Y p Y Y
Two-way binding Y Y Y
Partial view Y p Y
Filter Y p Y
Module Y
Controllers Y Y Y
Directives Y Y
Factories Y
Services Y
Dependency Injection Y
From Legacy Java to Dynamic Web and Mobile Applications
CUTTING EDGE 2014
Community
Metric Angular Backbone Ember Knockout
GitHub Stars 20,797 17,169 9,448 4,675
Plugins 486 195 14 40
Sites using 106 86 ? ?
From Legacy Java to Dynamic Web and Mobile Applications
CUTTING EDGE 2014
Questions?
From Legacy Java to Dynamic Web and Mobile Applications 28