SlideShare a Scribd company logo
1 of 35
Download to read offline
Opening the Window
Lee Chuk Munn
isslcm@nus.edu.sg

1
About Me

Teach HTML5 and Enterprise Java
Prior working experience
Sun Microsystems – 16 years
Help ISVs to port, tune and size their application
Java Platform Evangelist

Oracle – 2.5 years
Product manager for WebLogic and Coherence

Have been coding since 1981
Still coding today
Keeps busy with a few open source projects
2
3
Source: http://www.businessinsider.com/15-billion-smartphones-in-the-world-22013-2

4
5
6
Why HTML5?

Improving performance
More cores coming...
JavaScript's maturity – VM, tools, know how
asm.js – http://mzl.la/1hqEfkD

Platform fidelity and integration
Can be provided through wrappers or cross
compilation

Easier to hire web developers
Tonnes of tutorial, classes

Rich set of free libraries
7
HTML5 for Websites?

8
http://slides.html5rocks.com

9
HTML5 Options

Browser

Cross platform

Wrappers

Cross
Compilation
Tighter integration
10
11
12
Characteristics of Enterprise Web Application

Fairly static, mostly form based
Eg. Master-detail, graphs, data input, queries

Dynamic web pages are rendered on the
server
“Fat server” model

Assumes that you are using a desktop
browser for access
Viewport size and the content type

13
14
Mobile phones
Tables
Desktop monitors

< 480px
< 768px
> 768px
15
Adapting to Viewport Sizes

16
Responsive Enterprise Application – Intrinsic
Use mobile toolkit/renderkit if available

<h:form>
<h:panelGrid columns="2">
<p:outputLabel value="Name:"/>
<p:inputText label="Name" type="text" size="30"/>
<p:outputLabel value="Email:"/>
<p:inputText label="Email" type="email" size="30"/>
<p:outputLabel value="Topics:"/>
<p:selectManyCheckbox label="Topics">
<f:selectItem itemLabel="Sports" itemValue="sports"/>
<f:selectItem itemLabel="Movies" itemValue="movies"/>
<f:selectItem itemLabel="Food" itemValue="food"/>
<f:selectItem itemLabel="News" itemValue="news"/>
</p:selectManyCheckbox>
<p:commandButton value="Submit" type="button"/>
</h:panelGrid>
</h:form>
17
Responsive Enterprise Application – Intrinsic
Use mobile toolkit/renderkit if available
<pm:page id="mobile_index"
title="Mobile Form">
<pm:view id="main">
<pm:header title="Form" swatch="b"/>
<pm:content>
<h:form>
<p:inputText label="Name" .../>
<p:inputText label="Email" .../>
<pm:field>
<p:selectManyCheckbox ...>
...
</p:selectManyCheckbox>
</pm:field>
<p:commandButton value="Submit" .../>
</h:form>
</pm:content>
</pm:view>
</pm:page>
18
Responsive Enterprise Application – External

Leverage responsive CSS toolkit
Eg Bootstrap 3 – “mobile first”

Advantage
More work but better control over the layout,
break points, etc
One set of views instead of 2 or 3 separate view
catering to different dimensions

Disadvantage
Potentially more complex view to cater for
different sizes
Understand CSS and CSS toolkits

19
20
1

2
3

5
4

6
7

Fully rendered page or fragments

Enterprise – Fat server application architecture
HTML5 – Thin server application architecture
4

1

2
3

5
8

6
7

Data in JSON or XML format
21
Preferred Interactions

Desktop

Smartphones
22
RESTful Web Services

Generalization of the web application
paradigm
Default assumption is that the client is always a
browser so application will always return HTML

Separation of the view from the data
Shifting from MVC to MVVC

Allow your web application to be a web
platform
Eg. Facebook, Tumblr, Google, etc.
23
Implementing REST on Java EE

JAX-RS introduced in Java EE 6
Part of the platform, no mess no fuss

Supports POJO based programming
Plus dependency injection

Integrates with the rest of the EE APIs
Can be added to existing Java Web
application without modifying existing
codebase
24
http://example.com/hr/api/customer/1
Lifecycle management
@RequestScoped
@Path(“/customer/{custId}”)
public class CustomerResource {

Path template

@PersistenceContext EntityManager em;

Resource injection
Content negotiation

HTTP method

@GET
@Produces({“application/json”, “application/xml”})
public Response get(@PathParam(“custId”) int id) {
Customer customer = em.find(Customer.class, id);
if (null == customer)
return (Response.status(
Response.Status.NOT_FOUND).build());
return (Response.ok(customer));
}
}

25
26
100
100

27
HTTP – Don't Call Us We'll Call You

28
AJAX Polling

29
AJAX Long Poll

30
HTML5 Server Sent Events

31
HTML5 Websockets

32
33
Mobile HTML5 Course
April 14 – 17 2014

Launching a new
mobile course
Design and Develop
Mobile Enterprise
Application with HTML5

Client side focus
For developers who are
familiar with HTML5
Learn to write
maintainable HTML5
application

Tentative outline
Revision – HTML, CSS,
DOM and JavaScript
jQuery
Platform API
Geolocation, push state,
local storage, application
cache

Communications
jQuery Mobile
Backbone.js
Cordova
34
Download source from
http://bit.ly/demosrc2014

35

More Related Content

What's hot

Hosting for wordpress sites
Hosting for wordpress sitesHosting for wordpress sites
Hosting for wordpress sitesChris Danks
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development PresentationTurnToTech
 
Go Deep with AJAX
Go Deep with AJAXGo Deep with AJAX
Go Deep with AJAXgoodfriday
 
Exercise: Building Node-webkit apps
Exercise: Building Node-webkit appsExercise: Building Node-webkit apps
Exercise: Building Node-webkit appsEvgenios Skitsanos
 
Mvc presentation
Mvc presentationMvc presentation
Mvc presentationMaslowB
 
Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSsoftweb009
 
MikeTaulty_Ux_Update
MikeTaulty_Ux_UpdateMikeTaulty_Ux_Update
MikeTaulty_Ux_Updateukdpe
 
Migrating from flex or silverlight to HTML
Migrating from flex or silverlight to HTMLMigrating from flex or silverlight to HTML
Migrating from flex or silverlight to HTMLAkash Kava
 
Web application framework
Web application frameworkWeb application framework
Web application frameworkPankaj Chand
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developersFilip Rakowski
 
Berlin.JAR: Web future without web frameworks
Berlin.JAR: Web future without web frameworksBerlin.JAR: Web future without web frameworks
Berlin.JAR: Web future without web frameworksStephan Schmidt
 
Aeternity Blockchain - Ecosystem & Devtools [2019]
Aeternity Blockchain - Ecosystem & Devtools [2019]Aeternity Blockchain - Ecosystem & Devtools [2019]
Aeternity Blockchain - Ecosystem & Devtools [2019]Przemysław Thomann
 
Silver Light
Silver LightSilver Light
Silver Lightgourav
 

What's hot (20)

No brainer
No brainerNo brainer
No brainer
 
Hosting for wordpress sites
Hosting for wordpress sitesHosting for wordpress sites
Hosting for wordpress sites
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
Webforms or MVC
Webforms or MVCWebforms or MVC
Webforms or MVC
 
Go Deep with AJAX
Go Deep with AJAXGo Deep with AJAX
Go Deep with AJAX
 
Exercise: Building Node-webkit apps
Exercise: Building Node-webkit appsExercise: Building Node-webkit apps
Exercise: Building Node-webkit apps
 
Mvc presentation
Mvc presentationMvc presentation
Mvc presentation
 
Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMS
 
MikeTaulty_Ux_Update
MikeTaulty_Ux_UpdateMikeTaulty_Ux_Update
MikeTaulty_Ux_Update
 
Migrating from flex or silverlight to HTML
Migrating from flex or silverlight to HTMLMigrating from flex or silverlight to HTML
Migrating from flex or silverlight to HTML
 
Web application framework
Web application frameworkWeb application framework
Web application framework
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developers
 
PHP Frameworks
PHP FrameworksPHP Frameworks
PHP Frameworks
 
Learn .net and develop the web applications
Learn .net and develop the web applicationsLearn .net and develop the web applications
Learn .net and develop the web applications
 
Php website developers sydney
Php website developers sydneyPhp website developers sydney
Php website developers sydney
 
Berlin.JAR: Web future without web frameworks
Berlin.JAR: Web future without web frameworksBerlin.JAR: Web future without web frameworks
Berlin.JAR: Web future without web frameworks
 
ASP.NET Web Forms vs. MVC
ASP.NET Web Forms vs. MVCASP.NET Web Forms vs. MVC
ASP.NET Web Forms vs. MVC
 
Aeternity Blockchain - Ecosystem & Devtools [2019]
Aeternity Blockchain - Ecosystem & Devtools [2019]Aeternity Blockchain - Ecosystem & Devtools [2019]
Aeternity Blockchain - Ecosystem & Devtools [2019]
 
Silver Light
Silver LightSilver Light
Silver Light
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 

Viewers also liked

Online Collaboration - What’s Up in Singapore?
Online Collaboration - What’s Up in Singapore?Online Collaboration - What’s Up in Singapore?
Online Collaboration - What’s Up in Singapore?NUS-ISS
 
NUS-ISS Learning Day 2015 - Making Dollars and Cents of IT
NUS-ISS Learning Day 2015 - Making Dollars and Cents of ITNUS-ISS Learning Day 2015 - Making Dollars and Cents of IT
NUS-ISS Learning Day 2015 - Making Dollars and Cents of ITNUS-ISS
 
ISS Service Innovation Leadership Seminar, 28 March - Jochen Wirtz
ISS Service Innovation Leadership Seminar, 28 March - Jochen WirtzISS Service Innovation Leadership Seminar, 28 March - Jochen Wirtz
ISS Service Innovation Leadership Seminar, 28 March - Jochen WirtzNUS-ISS
 
Digital Innovation in Transport
Digital Innovation in TransportDigital Innovation in Transport
Digital Innovation in TransportNUS-ISS
 
Beyond Carrots and Sticks
Beyond Carrots and SticksBeyond Carrots and Sticks
Beyond Carrots and SticksNUS-ISS
 
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee Tiang
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee TiangISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee Tiang
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee TiangNUS-ISS
 
Creating unforgettable customer experiences by Philip Whittaker
Creating unforgettable customer experiences by Philip WhittakerCreating unforgettable customer experiences by Philip Whittaker
Creating unforgettable customer experiences by Philip WhittakerNUS-ISS
 
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group ITNUS-ISS
 
NUS-ISS Learning Day 2015 - IoT with Pi
NUS-ISS Learning Day 2015 - IoT with PiNUS-ISS Learning Day 2015 - IoT with Pi
NUS-ISS Learning Day 2015 - IoT with PiNUS-ISS
 
ISS Service Innovation Leadership Seminar, 28 March - Stuart Smith
ISS Service Innovation Leadership Seminar, 28 March - Stuart SmithISS Service Innovation Leadership Seminar, 28 March - Stuart Smith
ISS Service Innovation Leadership Seminar, 28 March - Stuart SmithNUS-ISS
 
Smart health healthcare cost projection
Smart health healthcare cost projectionSmart health healthcare cost projection
Smart health healthcare cost projectionNUS-ISS
 
NUS-ISS PCP for Data Analysts
NUS-ISS PCP for Data Analysts NUS-ISS PCP for Data Analysts
NUS-ISS PCP for Data Analysts NUS-ISS
 
Integrated Care in Singapore: if not now, then when?
Integrated Care in Singapore: if not now, then when?Integrated Care in Singapore: if not now, then when?
Integrated Care in Singapore: if not now, then when?NUS-ISS
 
Security in Smart City Implementation: Infrastructure and People
Security in Smart City Implementation: Infrastructure and PeopleSecurity in Smart City Implementation: Infrastructure and People
Security in Smart City Implementation: Infrastructure and PeopleNUS-ISS
 
Why ITSM Needs Lean IT
Why ITSM Needs Lean ITWhy ITSM Needs Lean IT
Why ITSM Needs Lean ITNUS-ISS
 
Enterprise Approach towards Cost Savings and Enterprise Agility
Enterprise Approach towards Cost Savings and Enterprise AgilityEnterprise Approach towards Cost Savings and Enterprise Agility
Enterprise Approach towards Cost Savings and Enterprise AgilityNUS-ISS
 
Demystifying ISO 20000-1 Standard
Demystifying ISO 20000-1 StandardDemystifying ISO 20000-1 Standard
Demystifying ISO 20000-1 StandardNUS-ISS
 
5th Agile CoP Forum Agile Transformation Journey in IBM
5th Agile CoP Forum   Agile Transformation Journey in IBM5th Agile CoP Forum   Agile Transformation Journey in IBM
5th Agile CoP Forum Agile Transformation Journey in IBMNUS-ISS
 
IT Process Transformation Roadmap
IT Process Transformation RoadmapIT Process Transformation Roadmap
IT Process Transformation RoadmapNUS-ISS
 
NUS-ISS PCP for FullStack Software Developers
NUS-ISS PCP for FullStack Software DevelopersNUS-ISS PCP for FullStack Software Developers
NUS-ISS PCP for FullStack Software DevelopersNUS-ISS
 

Viewers also liked (20)

Online Collaboration - What’s Up in Singapore?
Online Collaboration - What’s Up in Singapore?Online Collaboration - What’s Up in Singapore?
Online Collaboration - What’s Up in Singapore?
 
NUS-ISS Learning Day 2015 - Making Dollars and Cents of IT
NUS-ISS Learning Day 2015 - Making Dollars and Cents of ITNUS-ISS Learning Day 2015 - Making Dollars and Cents of IT
NUS-ISS Learning Day 2015 - Making Dollars and Cents of IT
 
ISS Service Innovation Leadership Seminar, 28 March - Jochen Wirtz
ISS Service Innovation Leadership Seminar, 28 March - Jochen WirtzISS Service Innovation Leadership Seminar, 28 March - Jochen Wirtz
ISS Service Innovation Leadership Seminar, 28 March - Jochen Wirtz
 
Digital Innovation in Transport
Digital Innovation in TransportDigital Innovation in Transport
Digital Innovation in Transport
 
Beyond Carrots and Sticks
Beyond Carrots and SticksBeyond Carrots and Sticks
Beyond Carrots and Sticks
 
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee Tiang
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee TiangISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee Tiang
ISS Service Innovation Leadership Seminar, 28 March - Mrs Chew Kwee Tiang
 
Creating unforgettable customer experiences by Philip Whittaker
Creating unforgettable customer experiences by Philip WhittakerCreating unforgettable customer experiences by Philip Whittaker
Creating unforgettable customer experiences by Philip Whittaker
 
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT
3 Cs of Employee Engagement: How NICF Helped Changi Airport Group IT
 
NUS-ISS Learning Day 2015 - IoT with Pi
NUS-ISS Learning Day 2015 - IoT with PiNUS-ISS Learning Day 2015 - IoT with Pi
NUS-ISS Learning Day 2015 - IoT with Pi
 
ISS Service Innovation Leadership Seminar, 28 March - Stuart Smith
ISS Service Innovation Leadership Seminar, 28 March - Stuart SmithISS Service Innovation Leadership Seminar, 28 March - Stuart Smith
ISS Service Innovation Leadership Seminar, 28 March - Stuart Smith
 
Smart health healthcare cost projection
Smart health healthcare cost projectionSmart health healthcare cost projection
Smart health healthcare cost projection
 
NUS-ISS PCP for Data Analysts
NUS-ISS PCP for Data Analysts NUS-ISS PCP for Data Analysts
NUS-ISS PCP for Data Analysts
 
Integrated Care in Singapore: if not now, then when?
Integrated Care in Singapore: if not now, then when?Integrated Care in Singapore: if not now, then when?
Integrated Care in Singapore: if not now, then when?
 
Security in Smart City Implementation: Infrastructure and People
Security in Smart City Implementation: Infrastructure and PeopleSecurity in Smart City Implementation: Infrastructure and People
Security in Smart City Implementation: Infrastructure and People
 
Why ITSM Needs Lean IT
Why ITSM Needs Lean ITWhy ITSM Needs Lean IT
Why ITSM Needs Lean IT
 
Enterprise Approach towards Cost Savings and Enterprise Agility
Enterprise Approach towards Cost Savings and Enterprise AgilityEnterprise Approach towards Cost Savings and Enterprise Agility
Enterprise Approach towards Cost Savings and Enterprise Agility
 
Demystifying ISO 20000-1 Standard
Demystifying ISO 20000-1 StandardDemystifying ISO 20000-1 Standard
Demystifying ISO 20000-1 Standard
 
5th Agile CoP Forum Agile Transformation Journey in IBM
5th Agile CoP Forum   Agile Transformation Journey in IBM5th Agile CoP Forum   Agile Transformation Journey in IBM
5th Agile CoP Forum Agile Transformation Journey in IBM
 
IT Process Transformation Roadmap
IT Process Transformation RoadmapIT Process Transformation Roadmap
IT Process Transformation Roadmap
 
NUS-ISS PCP for FullStack Software Developers
NUS-ISS PCP for FullStack Software DevelopersNUS-ISS PCP for FullStack Software Developers
NUS-ISS PCP for FullStack Software Developers
 

Similar to Mobile for Enterprise

Javascript Client & Server Architectures
Javascript Client & Server ArchitecturesJavascript Client & Server Architectures
Javascript Client & Server ArchitecturesPedro Melo Pereira
 
Powering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogicPowering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogicLucas Jellema
 
Full stack Java Developer
Full stack Java DeveloperFull stack Java Developer
Full stack Java DeveloperMdHasan872214
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologiesHosam Kamel
 
Angular JS Basics
Angular JS BasicsAngular JS Basics
Angular JS BasicsMounish Sai
 
Spring tutorials
Spring tutorialsSpring tutorials
Spring tutorialsTIB Academy
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesUdita Plaha
 
Getting Started with Spring Framework
Getting Started with Spring FrameworkGetting Started with Spring Framework
Getting Started with Spring FrameworkEdureka!
 
Scalable Web Architectures and Infrastructure
Scalable Web Architectures and InfrastructureScalable Web Architectures and Infrastructure
Scalable Web Architectures and Infrastructuregeorge.james
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development Shean McManus
 
9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To ChooseAlbiorix Technology
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Ido Flatow
 
Sofea and SOUI - Web future without web frameworks
Sofea and SOUI - Web future without web frameworksSofea and SOUI - Web future without web frameworks
Sofea and SOUI - Web future without web frameworksAndré Neubauer
 
Symfony - A Bird's Eye View
Symfony - A Bird's Eye ViewSymfony - A Bird's Eye View
Symfony - A Bird's Eye Viewcsushil
 

Similar to Mobile for Enterprise (20)

Javascript Client & Server Architectures
Javascript Client & Server ArchitecturesJavascript Client & Server Architectures
Javascript Client & Server Architectures
 
Powering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogicPowering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogic
 
Full stack Java Developer
Full stack Java DeveloperFull stack Java Developer
Full stack Java Developer
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Angular JS Basics
Angular JS BasicsAngular JS Basics
Angular JS Basics
 
Spring tutorials
Spring tutorialsSpring tutorials
Spring tutorials
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 
Tech Lead-Sachidanand Sharma
Tech Lead-Sachidanand SharmaTech Lead-Sachidanand Sharma
Tech Lead-Sachidanand Sharma
 
JulianSerna2016
JulianSerna2016JulianSerna2016
JulianSerna2016
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails Slides
 
Getting Started with Spring Framework
Getting Started with Spring FrameworkGetting Started with Spring Framework
Getting Started with Spring Framework
 
Scalable Web Architectures and Infrastructure
Scalable Web Architectures and InfrastructureScalable Web Architectures and Infrastructure
Scalable Web Architectures and Infrastructure
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development
 
9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
 
Sofea and SOUI - Web future without web frameworks
Sofea and SOUI - Web future without web frameworksSofea and SOUI - Web future without web frameworks
Sofea and SOUI - Web future without web frameworks
 
SeniorNET Bhanu Resume
SeniorNET Bhanu ResumeSeniorNET Bhanu Resume
SeniorNET Bhanu Resume
 
Symfony - A Bird's Eye View
Symfony - A Bird's Eye ViewSymfony - A Bird's Eye View
Symfony - A Bird's Eye View
 

More from NUS-ISS

Designing Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeDesigning Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeNUS-ISS
 
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...NUS-ISS
 
How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...NUS-ISS
 
The Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationNUS-ISS
 
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...NUS-ISS
 
Understanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohNUS-ISS
 
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeNUS-ISS
 
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...NUS-ISS
 
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...NUS-ISS
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnNUS-ISS
 
Future of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfFuture of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfNUS-ISS
 
Future of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengNUS-ISS
 
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7NUS-ISS
 
Product Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceProduct Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceNUS-ISS
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsNUS-ISS
 
Predictive Analytics
Predictive AnalyticsPredictive Analytics
Predictive AnalyticsNUS-ISS
 
Feature Engineering for IoT
Feature Engineering for IoTFeature Engineering for IoT
Feature Engineering for IoTNUS-ISS
 
Master of Technology in Software Engineering
Master of Technology in Software EngineeringMaster of Technology in Software Engineering
Master of Technology in Software EngineeringNUS-ISS
 
Master of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsMaster of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsNUS-ISS
 
Diagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesDiagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesNUS-ISS
 

More from NUS-ISS (20)

Designing Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeDesigning Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee Khee
 
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
 
How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...
 
The Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
 
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
 
Understanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
 
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
 
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
 
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
 
Future of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfFuture of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdf
 
Future of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan Meng
 
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
 
Product Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceProduct Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud Service
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and Foundations
 
Predictive Analytics
Predictive AnalyticsPredictive Analytics
Predictive Analytics
 
Feature Engineering for IoT
Feature Engineering for IoTFeature Engineering for IoT
Feature Engineering for IoT
 
Master of Technology in Software Engineering
Master of Technology in Software EngineeringMaster of Technology in Software Engineering
Master of Technology in Software Engineering
 
Master of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsMaster of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business Analytics
 
Diagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesDiagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System Archetypes
 

Recently uploaded

Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 

Recently uploaded (20)

Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 

Mobile for Enterprise

  • 1. Opening the Window Lee Chuk Munn isslcm@nus.edu.sg 1
  • 2. About Me Teach HTML5 and Enterprise Java Prior working experience Sun Microsystems – 16 years Help ISVs to port, tune and size their application Java Platform Evangelist Oracle – 2.5 years Product manager for WebLogic and Coherence Have been coding since 1981 Still coding today Keeps busy with a few open source projects 2
  • 3. 3
  • 5. 5
  • 6. 6
  • 7. Why HTML5? Improving performance More cores coming... JavaScript's maturity – VM, tools, know how asm.js – http://mzl.la/1hqEfkD Platform fidelity and integration Can be provided through wrappers or cross compilation Easier to hire web developers Tonnes of tutorial, classes Rich set of free libraries 7
  • 11. 11
  • 12. 12
  • 13. Characteristics of Enterprise Web Application Fairly static, mostly form based Eg. Master-detail, graphs, data input, queries Dynamic web pages are rendered on the server “Fat server” model Assumes that you are using a desktop browser for access Viewport size and the content type 13
  • 14. 14
  • 15. Mobile phones Tables Desktop monitors < 480px < 768px > 768px 15
  • 17. Responsive Enterprise Application – Intrinsic Use mobile toolkit/renderkit if available <h:form> <h:panelGrid columns="2"> <p:outputLabel value="Name:"/> <p:inputText label="Name" type="text" size="30"/> <p:outputLabel value="Email:"/> <p:inputText label="Email" type="email" size="30"/> <p:outputLabel value="Topics:"/> <p:selectManyCheckbox label="Topics"> <f:selectItem itemLabel="Sports" itemValue="sports"/> <f:selectItem itemLabel="Movies" itemValue="movies"/> <f:selectItem itemLabel="Food" itemValue="food"/> <f:selectItem itemLabel="News" itemValue="news"/> </p:selectManyCheckbox> <p:commandButton value="Submit" type="button"/> </h:panelGrid> </h:form> 17
  • 18. Responsive Enterprise Application – Intrinsic Use mobile toolkit/renderkit if available <pm:page id="mobile_index" title="Mobile Form"> <pm:view id="main"> <pm:header title="Form" swatch="b"/> <pm:content> <h:form> <p:inputText label="Name" .../> <p:inputText label="Email" .../> <pm:field> <p:selectManyCheckbox ...> ... </p:selectManyCheckbox> </pm:field> <p:commandButton value="Submit" .../> </h:form> </pm:content> </pm:view> </pm:page> 18
  • 19. Responsive Enterprise Application – External Leverage responsive CSS toolkit Eg Bootstrap 3 – “mobile first” Advantage More work but better control over the layout, break points, etc One set of views instead of 2 or 3 separate view catering to different dimensions Disadvantage Potentially more complex view to cater for different sizes Understand CSS and CSS toolkits 19
  • 20. 20
  • 21. 1 2 3 5 4 6 7 Fully rendered page or fragments Enterprise – Fat server application architecture HTML5 – Thin server application architecture 4 1 2 3 5 8 6 7 Data in JSON or XML format 21
  • 23. RESTful Web Services Generalization of the web application paradigm Default assumption is that the client is always a browser so application will always return HTML Separation of the view from the data Shifting from MVC to MVVC Allow your web application to be a web platform Eg. Facebook, Tumblr, Google, etc. 23
  • 24. Implementing REST on Java EE JAX-RS introduced in Java EE 6 Part of the platform, no mess no fuss Supports POJO based programming Plus dependency injection Integrates with the rest of the EE APIs Can be added to existing Java Web application without modifying existing codebase 24
  • 25. http://example.com/hr/api/customer/1 Lifecycle management @RequestScoped @Path(“/customer/{custId}”) public class CustomerResource { Path template @PersistenceContext EntityManager em; Resource injection Content negotiation HTTP method @GET @Produces({“application/json”, “application/xml”}) public Response get(@PathParam(“custId”) int id) { Customer customer = em.find(Customer.class, id); if (null == customer) return (Response.status( Response.Status.NOT_FOUND).build()); return (Response.ok(customer)); } } 25
  • 26. 26
  • 28. HTTP – Don't Call Us We'll Call You 28
  • 31. HTML5 Server Sent Events 31
  • 33. 33
  • 34. Mobile HTML5 Course April 14 – 17 2014 Launching a new mobile course Design and Develop Mobile Enterprise Application with HTML5 Client side focus For developers who are familiar with HTML5 Learn to write maintainable HTML5 application Tentative outline Revision – HTML, CSS, DOM and JavaScript jQuery Platform API Geolocation, push state, local storage, application cache Communications jQuery Mobile Backbone.js Cordova 34