SlideShare a Scribd company logo
1
From Legacy Java to Dynamic Web and
Mobile Applications
Hongbiao Chen, Sr. Pr. Web Developer
Ishita 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 URI
Link things together
Use standard methods
Resources with multiple
representations
Communicate 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 10
Sign In
CUTTING EDGE 2014
Mobile App
From Legacy Java to Dynamic Web and Mobile Applications 11
Home
CUTTING EDGE 2014
Mobile App
Presentation Identifier Goes Here 12
Home
CUTTING EDGE 2014
Mobile App
From Legacy Java to Dynamic Web and Mobile Applications 13
Certificates
CUTTING EDGE 2014
Mobile App
Presentation Identifier Goes Here 14
Certificates
CUTTING EDGE 2014
Mobile App
From Legacy Java to Dynamic Web and Mobile Applications 15
Certificate Details
CUTTING EDGE 2014
Mobile App
Presentation Identifier Goes Here 16
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
Top JavaScript MVC Frameworks
Source: InfoQ
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 2014From Legacy Java to Dynamic Web and Mobile Applications 22
CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 23
CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 24
CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 25
CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 26
CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 27
CUTTING EDGE 2014
Questions?
Ishita_Verma@symantec.com
HongBiao_Chen@symantec.com
From Legacy Java to Dynamic Web and Mobile Applications 28

More Related Content

What's hot

Toronto node js_meetup
Toronto node js_meetupToronto node js_meetup
Toronto node js_meetup
Shubhra Kar
 
Design patterns talk_node_summit
Design patterns talk_node_summitDesign patterns talk_node_summit
Design patterns talk_node_summit
Shubhra Kar
 
A Tour of Different API Management Architectures
A Tour of Different API Management ArchitecturesA Tour of Different API Management Architectures
A Tour of Different API Management Architectures
Nordic APIs
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop Overview
Shubhra Kar
 
Microservices pattern for API Design
Microservices pattern for API DesignMicroservices pattern for API Design
Microservices pattern for API Design
Debashish Maity
 
The New 3-Tier Architecture: HTML5, Proxies, and APIs
The New 3-Tier Architecture: HTML5, Proxies, and APIsThe New 3-Tier Architecture: HTML5, Proxies, and APIs
The New 3-Tier Architecture: HTML5, Proxies, and APIs
Apigee | Google Cloud
 
React with rails a perfect combination to build modern web application
React with rails a perfect combination to build modern web applicationReact with rails a perfect combination to build modern web application
React with rails a perfect combination to build modern web application
Katy Slemon
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?
LunchBadger
 
02 api gateway
02 api gateway02 api gateway
02 api gateway
Janani Velmurugan
 
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
apidays
 
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
CA API Management
 
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
apidays
 
Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?
LaunchAny
 
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
apidays
 
Essential API Facade Patterns: Session Management (Episode 2)
Essential API Facade Patterns: Session Management (Episode 2)Essential API Facade Patterns: Session Management (Episode 2)
Essential API Facade Patterns: Session Management (Episode 2)
Apigee | Google Cloud
 
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
apidays
 
How to Choose the Right API Management Solution
How to Choose the Right API Management SolutionHow to Choose the Right API Management Solution
How to Choose the Right API Management Solution
CA API Management
 
GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?
LaunchAny
 
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
apidays
 
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
LaunchAny
 

What's hot (20)

Toronto node js_meetup
Toronto node js_meetupToronto node js_meetup
Toronto node js_meetup
 
Design patterns talk_node_summit
Design patterns talk_node_summitDesign patterns talk_node_summit
Design patterns talk_node_summit
 
A Tour of Different API Management Architectures
A Tour of Different API Management ArchitecturesA Tour of Different API Management Architectures
A Tour of Different API Management Architectures
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop Overview
 
Microservices pattern for API Design
Microservices pattern for API DesignMicroservices pattern for API Design
Microservices pattern for API Design
 
The New 3-Tier Architecture: HTML5, Proxies, and APIs
The New 3-Tier Architecture: HTML5, Proxies, and APIsThe New 3-Tier Architecture: HTML5, Proxies, and APIs
The New 3-Tier Architecture: HTML5, Proxies, and APIs
 
React with rails a perfect combination to build modern web application
React with rails a perfect combination to build modern web applicationReact with rails a perfect combination to build modern web application
React with rails a perfect combination to build modern web application
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?
 
02 api gateway
02 api gateway02 api gateway
02 api gateway
 
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
apidays LIVE LONDON - Protecting financial-grade APIs - Getting the right API...
 
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
 
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
apidays LIVE JAKARTA - 10 commandments for scalable microservices by Archanaa...
 
Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?
 
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
apidays LIVE Australia 2020 - Evaluating the usability of security APIs by Dr...
 
Essential API Facade Patterns: Session Management (Episode 2)
Essential API Facade Patterns: Session Management (Episode 2)Essential API Facade Patterns: Session Management (Episode 2)
Essential API Facade Patterns: Session Management (Episode 2)
 
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
apidays LIVE Australia 2020 - Building an Enterprise Eventing Platform by Gna...
 
How to Choose the Right API Management Solution
How to Choose the Right API Management SolutionHow to Choose the Right API Management Solution
How to Choose the Right API Management Solution
 
GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?
 
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
apidays LIVE Australia 2020 - Building a scalable API platform for an IoT eco...
 
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
 

Viewers also liked

How does your media product represent particular social
How does your media product represent particular socialHow does your media product represent particular social
How does your media product represent particular social
ExEthee
 
SK Gaming
SK GamingSK Gaming
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidariasFortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
Laura Cecilia Silva
 
Funding for small companies in 2016
Funding for small companies in 2016Funding for small companies in 2016
Funding for small companies in 2016
Businessmakeover.eu
 
Appreciation Certificate -Candian Accreditation
Appreciation Certificate -Candian AccreditationAppreciation Certificate -Candian Accreditation
Appreciation Certificate -Candian AccreditationAmmar Ghosheh
 
Kimia unsur
Kimia unsur  Kimia unsur
Kimia unsur
suryanimega
 
La música en la actualidad
La música en la actualidadLa música en la actualidad
La música en la actualidad
alvaroms2
 
Erlang assembly
Erlang assemblyErlang assembly
Erlang assembly
rstudnicki
 

Viewers also liked (8)

How does your media product represent particular social
How does your media product represent particular socialHow does your media product represent particular social
How does your media product represent particular social
 
SK Gaming
SK GamingSK Gaming
SK Gaming
 
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidariasFortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
Fortacele tu imagen y reputación positiva, y viraliza tus acciones solidarias
 
Funding for small companies in 2016
Funding for small companies in 2016Funding for small companies in 2016
Funding for small companies in 2016
 
Appreciation Certificate -Candian Accreditation
Appreciation Certificate -Candian AccreditationAppreciation Certificate -Candian Accreditation
Appreciation Certificate -Candian Accreditation
 
Kimia unsur
Kimia unsur  Kimia unsur
Kimia unsur
 
La música en la actualidad
La música en la actualidadLa música en la actualidad
La música en la actualidad
 
Erlang assembly
Erlang assemblyErlang assembly
Erlang assembly
 

Similar to cuttingEdgepresentation0318

Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web Frameworks
Sarika Jadhav
 
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkCloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Red Hat Developers
 
Building Microservices in Java with Spring Boot and Spring Cloud
Building Microservices in Java with Spring Boot and Spring CloudBuilding Microservices in Java with Spring Boot and Spring Cloud
Building Microservices in Java with Spring Boot and Spring Cloud
Clarion Technologies
 
Java, BA,UI resumes
Java, BA,UI resumesJava, BA,UI resumes
Java, BA,UI resumes
Neel A
 
@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001
Fred Jabbari
 
Elevating Business_ Java Technologies In Web App.pdf
Elevating Business_ Java Technologies In Web App.pdfElevating Business_ Java Technologies In Web App.pdf
Elevating Business_ Java Technologies In Web App.pdf
Lucas Lagone
 
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDIMigrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
Mario-Leander Reimer
 
Naresh_Kumar_Devata_JavaDeveloper
Naresh_Kumar_Devata_JavaDeveloperNaresh_Kumar_Devata_JavaDeveloper
Naresh_Kumar_Devata_JavaDeveloper
NARESH DEVATA
 
Dynamic APIs: SOA Done Right
Dynamic APIs: SOA Done RightDynamic APIs: SOA Done Right
Dynamic APIs: SOA Done Right
Inside Analysis
 
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
CA Technologies
 
GOUSE_BAIG_DOTNET_5Yrs
GOUSE_BAIG_DOTNET_5YrsGOUSE_BAIG_DOTNET_5Yrs
GOUSE_BAIG_DOTNET_5Yrs
Gouse Baig
 
Twelve factor-app
Twelve factor-appTwelve factor-app
Twelve factor-app
José Javier Vélez Colón
 
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud EnvironmentsTools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
VMware Tanzu
 
Mazhar Ali- Resume
Mazhar Ali- ResumeMazhar Ali- Resume
Mazhar Ali- Resume
Mazhar Ali Khan
 
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
CA Technologies
 
VenkateshVG
VenkateshVGVenkateshVG
JeffWalkerResume2016
JeffWalkerResume2016JeffWalkerResume2016
JeffWalkerResume2016
Jeff Walker
 
Vijayakumar_Subramaniapillai_Sr.Java_Developer
Vijayakumar_Subramaniapillai_Sr.Java_DeveloperVijayakumar_Subramaniapillai_Sr.Java_Developer
Vijayakumar_Subramaniapillai_Sr.Java_Developer
VIJAYAKUMAR SUBRAMANIAPILLAI
 
Sanjay updated
Sanjay updatedSanjay updated
Sanjay updated
sanjay k
 
Go Mobile to Mainframe With CA Gen and CA App Services Orchestrator
Go Mobile to Mainframe With CA Genand CA App Services OrchestratorGo Mobile to Mainframe With CA Genand CA App Services Orchestrator
Go Mobile to Mainframe With CA Gen and CA App Services Orchestrator
CA Technologies
 

Similar to cuttingEdgepresentation0318 (20)

Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web Frameworks
 
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkCloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
 
Building Microservices in Java with Spring Boot and Spring Cloud
Building Microservices in Java with Spring Boot and Spring CloudBuilding Microservices in Java with Spring Boot and Spring Cloud
Building Microservices in Java with Spring Boot and Spring Cloud
 
Java, BA,UI resumes
Java, BA,UI resumesJava, BA,UI resumes
Java, BA,UI resumes
 
@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001
 
Elevating Business_ Java Technologies In Web App.pdf
Elevating Business_ Java Technologies In Web App.pdfElevating Business_ Java Technologies In Web App.pdf
Elevating Business_ Java Technologies In Web App.pdf
 
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDIMigrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
Migrating a JSF-Based Web Application from Spring 3 to Java EE 7 and CDI
 
Naresh_Kumar_Devata_JavaDeveloper
Naresh_Kumar_Devata_JavaDeveloperNaresh_Kumar_Devata_JavaDeveloper
Naresh_Kumar_Devata_JavaDeveloper
 
Dynamic APIs: SOA Done Right
Dynamic APIs: SOA Done RightDynamic APIs: SOA Done Right
Dynamic APIs: SOA Done Right
 
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
Mobile to Mainframe: Leveraging Application Services for Rapid Application De...
 
GOUSE_BAIG_DOTNET_5Yrs
GOUSE_BAIG_DOTNET_5YrsGOUSE_BAIG_DOTNET_5Yrs
GOUSE_BAIG_DOTNET_5Yrs
 
Twelve factor-app
Twelve factor-appTwelve factor-app
Twelve factor-app
 
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud EnvironmentsTools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
 
Mazhar Ali- Resume
Mazhar Ali- ResumeMazhar Ali- Resume
Mazhar Ali- Resume
 
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
Leveraging CA Technologies Application Development Solutions to Rapidly Deliv...
 
VenkateshVG
VenkateshVGVenkateshVG
VenkateshVG
 
JeffWalkerResume2016
JeffWalkerResume2016JeffWalkerResume2016
JeffWalkerResume2016
 
Vijayakumar_Subramaniapillai_Sr.Java_Developer
Vijayakumar_Subramaniapillai_Sr.Java_DeveloperVijayakumar_Subramaniapillai_Sr.Java_Developer
Vijayakumar_Subramaniapillai_Sr.Java_Developer
 
Sanjay updated
Sanjay updatedSanjay updated
Sanjay updated
 
Go Mobile to Mainframe With CA Gen and CA App Services Orchestrator
Go Mobile to Mainframe With CA Genand CA App Services OrchestratorGo Mobile to Mainframe With CA Genand CA App Services Orchestrator
Go Mobile to Mainframe With CA Gen and CA App Services Orchestrator
 

cuttingEdgepresentation0318

  • 1. 1 From Legacy Java to Dynamic Web and Mobile Applications Hongbiao Chen, Sr. Pr. Web Developer Ishita Verma, Software Engineer From Legacy Java to Dynamic Web and Mobile Applications
  • 2. 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
  • 3. 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
  • 4. 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
  • 5. CUTTING EDGE 2014 The Symantec SSL Trust Center Application From Legacy Java to Dynamic Web and Mobile Applications 5 Give every “thing” a URI Link things together Use standard methods Resources with multiple representations Communicate statelessly
  • 6. 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
  • 7. CUTTING EDGE 2014 Technology Roundup: Play! From Legacy Java to Dynamic Web and Mobile Applications 7
  • 8. CUTTING EDGE 2014 PhoneGap & Sencha Architect From Legacy Java to Dynamic Web and Mobile Applications 8
  • 9. CUTTING EDGE 2014 Front End From Legacy Java to Dynamic Web and Mobile Applications 9 Mobile App1 Web App2 AngularJS3 Jasmine4 Grunt5
  • 10. CUTTING EDGE 2014 Mobile App From Legacy Java to Dynamic Web and Mobile Applications 10 Sign In
  • 11. CUTTING EDGE 2014 Mobile App From Legacy Java to Dynamic Web and Mobile Applications 11 Home
  • 12. CUTTING EDGE 2014 Mobile App Presentation Identifier Goes Here 12 Home
  • 13. CUTTING EDGE 2014 Mobile App From Legacy Java to Dynamic Web and Mobile Applications 13 Certificates
  • 14. CUTTING EDGE 2014 Mobile App Presentation Identifier Goes Here 14 Certificates
  • 15. CUTTING EDGE 2014 Mobile App From Legacy Java to Dynamic Web and Mobile Applications 15 Certificate Details
  • 16. CUTTING EDGE 2014 Mobile App Presentation Identifier Goes Here 16 Certificate Details
  • 17. CUTTING EDGE 2014 Web App From Legacy Java to Dynamic Web and Mobile Applications 17 Enrollment - Configure
  • 18. CUTTING EDGE 2014 Web App From Legacy Java to Dynamic Web and Mobile Applications 18 Enrollment - Contact
  • 19. CUTTING EDGE 2014 Top JavaScript MVC Frameworks Source: InfoQ
  • 20. 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
  • 21. 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
  • 22. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 22
  • 23. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 23
  • 24. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 24
  • 25. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 25
  • 26. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 26
  • 27. CUTTING EDGE 2014From Legacy Java to Dynamic Web and Mobile Applications 27
  • 28. CUTTING EDGE 2014 Questions? Ishita_Verma@symantec.com HongBiao_Chen@symantec.com From Legacy Java to Dynamic Web and Mobile Applications 28

Editor's Notes

  1. This is a sample Agenda/Preview slide. This slide is ideal for setting the scene at the beginning of your presentation by providing a big picture overview of what you plan to cover. To Change Titles in Shapes (i.e.: “Text here”): Select text. (Optional: Press Delete.) Begin typing desired text. To Change Font Color/Size: Select text, right-click and adjust the font setting on the Mini toolbar. Select desired attributes to change: font, size, boldness, color, etc. Note: many of the same commands can also be accessed from the Font group of the Home tab. To Change a Shape’s Fill Color: Select the desired object by clicking once on its edge. On the Home tab, click the Shape Fill button within the Drawing group to select a theme color from the Symantec color palette. To Delete a Shape: Select the desired object by clicking once on its edge. Press the Delete key on your keyboard. To Copy a Text Box or Shape: Select the text box or shape. Note: Make sure to select the entire object, not just the text, by clicking the edge of the text box or shape. Type Ctrl C (copy), click outside object, then type Ctrl V (paste) to place the object. Click and drag the pasted object to desired location.
  2. Give every “thing” a URI Link things together Use standard methods Resources with multiple representations Communicate statelessly
  3. 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. Thus, you can use it alongside Spring MVC to manually build those services. 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. So it covers the 80% use case for the basic stuff and allows you to selective add more complex processes using manually implemented controllers later on 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. This module deals with enhanced support for JPA based data access layers. 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.
  4. Let’s take a look at some of the major features of Play. Developers often make small changes in coding during the development and testing phase to identify the best possible solution. Generally, they need to restart the system to see the changes they have made. However, if you use Play, all you need to do is refresh the browser to see the recent changes immediately. It has only one XML file for configuration and thankfully, most of the configurations are either default or automatically set. It does not use Servlets API. Therefore, developers can use hot swapping. What are the advantages? It allows you to develop faster so that you can work on multiple projects at the same time and deliver all of them within deadline. Testing the application is very easy and testing provides authentic results. The user interface is intuitive.
  5. You can code in standard HTML, CSS and JavaScript instead of Objective-C or Java and build apps quickly. Because you develop the app once, but can deploy in multiple platforms, the client saves time and money. You are still able to tap into many of the device’s built-in features (location services, push notification, etc.). The apps can have their own icons, rather than just being bookmarked, which offers a marketing & branding advantage. The apps have a cleaner interface, operating similarly to native apps without a browser frame around them. You can distribute the apps via app stores. PhoneGap supports seven different mobile platforms, including iOS, Android, BlackBerry, webOS, Symbian, Samsung Bada and Windows Phone. Because it’s open source, new modules are continually being developed.
  6. This is a sample Agenda/Preview slide. This slide is ideal for setting the scene at the beginning of your presentation by providing a big picture overview of what you plan to cover. To Change Titles in Shapes (i.e.: “Text here”): Select text. (Optional: Press Delete.) Begin typing desired text. To Change Font Color/Size: Select text, right-click and adjust the font setting on the Mini toolbar. Select desired attributes to change: font, size, boldness, color, etc. Note: many of the same commands can also be accessed from the Font group of the Home tab. To Change a Shape’s Fill Color: Select the desired object by clicking once on its edge. On the Home tab, click the Shape Fill button within the Drawing group to select a theme color from the Symantec color palette. To Delete a Shape: Select the desired object by clicking once on its edge. Press the Delete key on your keyboard. To Copy a Text Box or Shape: Select the text box or shape. Note: Make sure to select the entire object, not just the text, by clicking the edge of the text box or shape. Type Ctrl C (copy), click outside object, then type Ctrl V (paste) to place the object. Click and drag the pasted object to desired location.