SlideShare a Scribd company logo
1Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
No Java Enterprise Application
Soham Dasgupta
3Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Who am I?
Soham Dasgupta
12 years in IT. UI and Mobile Apps designer and architect. Working with Oracle Techonlogies since 2006.
Blogger and Technology enthusiastic.
Blog : http://adfjava.blogspot.in/
Twitter : @iamsoham
LinkedIn : https://www.linkedin.com/in/soham-dasgupta-91b75410/
Senior Consultant | ADF/Java/JavaScript
soham.dasgupta@capgemini.com
Capgemini Netherlands
www.sogeti.com
www.capgemini.com
The information contained in this presentation is proprietary. It is for intermediary use only.
Copyright © 2015 Capgemini and Sogeti. All rights reserved.
Rightshore® is a trademark belonging to Capgemini.
No part of this presentation may be modified, deleted or expanded by any process or means without prior written permission from Capgemini.
About Capgemini and Sogeti
Now with 180,000 people in over 40 countries, Capgemini is one of the world's
foremost providers of consulting, technology and outsourcing services. The Group
reported 2014 global revenues of EUR 10.573 billion. Together with its clients,
Capgemini creates and delivers business, technology and digital solutions that fit
their needs, enabling them to achieve innovation and competitiveness. A deeply
multicultural organization, Capgemini has developed its own way of working, the
Collaborative Business ExperienceTM, and draws on Rightshore®, its worldwide
delivery model. Learn more about us at www.capgemini.com.
Sogeti is a leading provider of technology and software testing, specializing in
Application, Infrastructure and Engineering Services. Sogeti offers cutting-edge
solutions around Testing, Business Intelligence & Analytics, Mobile, Cloud and
Cyber Security. Sogeti brings together more than 20,000 professionals in 15
countries and has a strong local presence in over 100 locations in Europe, USA
and India. Sogeti is a wholly-owned subsidiary of Cap Gemini S.A., listed on the
Paris Stock Exchange.
5Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Agenda
 Javascript Ecosystem
 Simplification
 NodeJS
 MVVM
 CSS
 Unit Testing
 Database – oracledb
 Security Management
 Linters
 Build
6Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Javascript Eco-system
• Introduced in 1993
• Standardized by ECMA on 1997
• Introduction of NodeJS 2009
• Huge open-source community
• Since then till 2017 – It grew exponentially
7Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Lets try to simplify things a bit!
8Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Usecase – Lease Car
Public API for Cars
Backend(PCS/DBCS/JCS)
• Edmunds API – Car data and deals
• Oracle JET – UI for users
• Backend Cloud/On-Premise – Process Integration
9Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
First thing First
Benefits
• Event Driven
• Non-blocking I/O API
• Community driven
Why Node
• Streamline your code
• Base it on Standards
• Take advantage to millons of Node
Modules
10Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
M-V-VM
 The model is the domain object
 The view the only thing the end user really interacts with.
 The viewmodel separates view from the model.
11Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Service to Object Model
Brand
Models
Years
Styles
Jaguar
XE
2017
160pk Performance
• Define POJOs
• Gather UI data in a managable way
• Validation
• Data orchestration
• Business Logic
• DML operations
• Data binding
12Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Oracle JET Common Object Model
 oj.Model
• Utility methods for data orchestration
• Object level operations
 oj.Collection
• Collection level data orchestration
• Methods to map REST to object
13Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
MVVM in LeaseCar
 Lease Car project
• MVVM code structure
14Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Theming and CSS
 jQuery Mobile Theming
• Create using ThemeRoller
 Font Awesome
 Oracle JET – Alta Theme
15Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Unit Testing - Jasmine
 Open source testing framework for JavaScript.
 Low overhead, no external dependencies.
 It does not require a DOM.
16Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Database - oracledb
 Simple NodeJS module  Github project maintained by Oracle
17Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Database - oracledb
18Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Database - oracledb
19Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Security Management
 Passport JS
 Passport is authentication middleware for Node.js.
 Extremely flexible and modular.
 Passport can be unobtrusively dropped in to any Express-based web application
20Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Security - PassportJS
21Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Linters
 Came from C
 Code linting is a way to increase code quality.
 Linters like JSLint or JSHint can detect potential bugs
22Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Linting - advantages
 Detect common programming errors
 Flag suspicious and non-portable constructs (likely to be bugs)
 Formatting discrepancy
 Non-adherence to coding standards and conventions
 Pinpointing possible logical errors in your program
 Detecting these simple errors before a manual code review also makes reviewing
the code more effective
23Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Build
 Concatenate, Minify and Bundle them before sending them to the browser
 Reducing the size of the file
 Run automated unit tests
 Managing file order/dependencies
 Transpiling
 Linting, static analysis, and style checking
 Live reload
24Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Build Tools
 Task Runners
• Gulp
• Grunt
• npm
 Dependency manager
• Browserify
25Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017
Gulp
26Copyright © 2017 Capgemini and Sogeti. All Rights Reserved
Oracle User Group Netherlands | 16th June, 2017

More Related Content

PPTX
CWIN17 Toulouse / Virtual reality to improve the training path of soldiers m....
PPTX
CWIN17 Toulouse / How robotics as a service improves your industrial perform...
PPTX
CWIN17 Toulouse / Additive manufacturing and cognitive augmented design 3 ds-...
PPTX
CWIN17 Toulouse / Opc ua, the de facto interoperability standard for industry...
PPT
PPTX
No-Java Enterprise Applications: It’s All About JavaScript [DEV5107]
PPTX
CWIN17 telford application integration and ap is - lisa eckersley
PDF
Oracle Code Capgemini: API management & microservices a match made in heaven
CWIN17 Toulouse / Virtual reality to improve the training path of soldiers m....
CWIN17 Toulouse / How robotics as a service improves your industrial perform...
CWIN17 Toulouse / Additive manufacturing and cognitive augmented design 3 ds-...
CWIN17 Toulouse / Opc ua, the de facto interoperability standard for industry...
No-Java Enterprise Applications: It’s All About JavaScript [DEV5107]
CWIN17 telford application integration and ap is - lisa eckersley
Oracle Code Capgemini: API management & microservices a match made in heaven

Similar to Javascript for Enterprise Application (20)

PDF
IoTivity: Smart Home to Automotive and Beyond
PPTX
How the Dutch Police became “Chatbot” interactive
PDF
Producing Systems That Enable The Innovation That Autonomous Vehicles Will Re...
PDF
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
PDF
Uxhel17 hackathon presentation
PDF
19. Graham Smith & Sarah Hurley - Implementing the Oracle Vision For PeopleSo...
PDF
Why and-how-to-choose-an-iot-platforms-201701
PDF
Strategies for efficient delivery with APIs containers micro services and DevOps
PPTX
Proposte ORACLE per la modernizzazione dello sviluppo applicativo
PPTX
The Future of Infrastructure: Key Trends to consider
PDF
Why Cloud Matters
PDF
GENIVI Boitier Open Source project
DOC
Resume-RDn-Detailed
PPTX
To be or not to be serverless
PPTX
Proposte ORACLE per la gestione dei contenuti digitali e per la ricerca scien...
PPTX
Broader, Better, Faster: Capgemini’s Blueprint for Oracle Supply Chain Cloud
PPTX
Broader, Better, Faster: Capgemini’s Blueprint for Oracle Supply Chain Cloud
PPTX
Understanding conversations within chatbots
PDF
Prodyna company presentation-2018
PDF
Next of Java 2022
IoTivity: Smart Home to Automotive and Beyond
How the Dutch Police became “Chatbot” interactive
Producing Systems That Enable The Innovation That Autonomous Vehicles Will Re...
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
Uxhel17 hackathon presentation
19. Graham Smith & Sarah Hurley - Implementing the Oracle Vision For PeopleSo...
Why and-how-to-choose-an-iot-platforms-201701
Strategies for efficient delivery with APIs containers micro services and DevOps
Proposte ORACLE per la modernizzazione dello sviluppo applicativo
The Future of Infrastructure: Key Trends to consider
Why Cloud Matters
GENIVI Boitier Open Source project
Resume-RDn-Detailed
To be or not to be serverless
Proposte ORACLE per la gestione dei contenuti digitali e per la ricerca scien...
Broader, Better, Faster: Capgemini’s Blueprint for Oracle Supply Chain Cloud
Broader, Better, Faster: Capgemini’s Blueprint for Oracle Supply Chain Cloud
Understanding conversations within chatbots
Prodyna company presentation-2018
Next of Java 2022
Ad

More from Soham Dasgupta (8)

PPTX
GraphQL_devoxx_2023.pptx
PDF
GraphQL-ify your API - JFall 2022
PDF
GraphQL-ify your APIs
PPTX
Are you testing your unit tests?
PPTX
Spring Native : Why not YET!
PPTX
GraphQL-ify your APIs - Devoxx UK 2021
PPTX
GraphQL-ify your APIs
PPTX
OneBot: A Comprehensive Case Study on Enterprise Digital Assistants
GraphQL_devoxx_2023.pptx
GraphQL-ify your API - JFall 2022
GraphQL-ify your APIs
Are you testing your unit tests?
Spring Native : Why not YET!
GraphQL-ify your APIs - Devoxx UK 2021
GraphQL-ify your APIs
OneBot: A Comprehensive Case Study on Enterprise Digital Assistants
Ad

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Spectroscopy.pptx food analysis technology
PPTX
Cloud computing and distributed systems.
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Network Security Unit 5.pdf for BCA BBA.
Spectroscopy.pptx food analysis technology
Cloud computing and distributed systems.
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
sap open course for s4hana steps from ECC to s4
Per capita expenditure prediction using model stacking based on satellite ima...
MIND Revenue Release Quarter 2 2025 Press Release
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Review of recent advances in non-invasive hemoglobin estimation
Spectral efficient network and resource selection model in 5G networks
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Understanding_Digital_Forensics_Presentation.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
The AUB Centre for AI in Media Proposal.docx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation theory and applications.pdf

Javascript for Enterprise Application

  • 1. 1Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017
  • 2. No Java Enterprise Application Soham Dasgupta
  • 3. 3Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Who am I? Soham Dasgupta 12 years in IT. UI and Mobile Apps designer and architect. Working with Oracle Techonlogies since 2006. Blogger and Technology enthusiastic. Blog : http://adfjava.blogspot.in/ Twitter : @iamsoham LinkedIn : https://www.linkedin.com/in/soham-dasgupta-91b75410/ Senior Consultant | ADF/Java/JavaScript soham.dasgupta@capgemini.com Capgemini Netherlands
  • 4. www.sogeti.com www.capgemini.com The information contained in this presentation is proprietary. It is for intermediary use only. Copyright © 2015 Capgemini and Sogeti. All rights reserved. Rightshore® is a trademark belonging to Capgemini. No part of this presentation may be modified, deleted or expanded by any process or means without prior written permission from Capgemini. About Capgemini and Sogeti Now with 180,000 people in over 40 countries, Capgemini is one of the world's foremost providers of consulting, technology and outsourcing services. The Group reported 2014 global revenues of EUR 10.573 billion. Together with its clients, Capgemini creates and delivers business, technology and digital solutions that fit their needs, enabling them to achieve innovation and competitiveness. A deeply multicultural organization, Capgemini has developed its own way of working, the Collaborative Business ExperienceTM, and draws on Rightshore®, its worldwide delivery model. Learn more about us at www.capgemini.com. Sogeti is a leading provider of technology and software testing, specializing in Application, Infrastructure and Engineering Services. Sogeti offers cutting-edge solutions around Testing, Business Intelligence & Analytics, Mobile, Cloud and Cyber Security. Sogeti brings together more than 20,000 professionals in 15 countries and has a strong local presence in over 100 locations in Europe, USA and India. Sogeti is a wholly-owned subsidiary of Cap Gemini S.A., listed on the Paris Stock Exchange.
  • 5. 5Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Agenda  Javascript Ecosystem  Simplification  NodeJS  MVVM  CSS  Unit Testing  Database – oracledb  Security Management  Linters  Build
  • 6. 6Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Javascript Eco-system • Introduced in 1993 • Standardized by ECMA on 1997 • Introduction of NodeJS 2009 • Huge open-source community • Since then till 2017 – It grew exponentially
  • 7. 7Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Lets try to simplify things a bit!
  • 8. 8Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Usecase – Lease Car Public API for Cars Backend(PCS/DBCS/JCS) • Edmunds API – Car data and deals • Oracle JET – UI for users • Backend Cloud/On-Premise – Process Integration
  • 9. 9Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 First thing First Benefits • Event Driven • Non-blocking I/O API • Community driven Why Node • Streamline your code • Base it on Standards • Take advantage to millons of Node Modules
  • 10. 10Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 M-V-VM  The model is the domain object  The view the only thing the end user really interacts with.  The viewmodel separates view from the model.
  • 11. 11Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Service to Object Model Brand Models Years Styles Jaguar XE 2017 160pk Performance • Define POJOs • Gather UI data in a managable way • Validation • Data orchestration • Business Logic • DML operations • Data binding
  • 12. 12Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Oracle JET Common Object Model  oj.Model • Utility methods for data orchestration • Object level operations  oj.Collection • Collection level data orchestration • Methods to map REST to object
  • 13. 13Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 MVVM in LeaseCar  Lease Car project • MVVM code structure
  • 14. 14Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Theming and CSS  jQuery Mobile Theming • Create using ThemeRoller  Font Awesome  Oracle JET – Alta Theme
  • 15. 15Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Unit Testing - Jasmine  Open source testing framework for JavaScript.  Low overhead, no external dependencies.  It does not require a DOM.
  • 16. 16Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Database - oracledb  Simple NodeJS module  Github project maintained by Oracle
  • 17. 17Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Database - oracledb
  • 18. 18Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Database - oracledb
  • 19. 19Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Security Management  Passport JS  Passport is authentication middleware for Node.js.  Extremely flexible and modular.  Passport can be unobtrusively dropped in to any Express-based web application
  • 20. 20Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Security - PassportJS
  • 21. 21Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Linters  Came from C  Code linting is a way to increase code quality.  Linters like JSLint or JSHint can detect potential bugs
  • 22. 22Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Linting - advantages  Detect common programming errors  Flag suspicious and non-portable constructs (likely to be bugs)  Formatting discrepancy  Non-adherence to coding standards and conventions  Pinpointing possible logical errors in your program  Detecting these simple errors before a manual code review also makes reviewing the code more effective
  • 23. 23Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Build  Concatenate, Minify and Bundle them before sending them to the browser  Reducing the size of the file  Run automated unit tests  Managing file order/dependencies  Transpiling  Linting, static analysis, and style checking  Live reload
  • 24. 24Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Build Tools  Task Runners • Gulp • Grunt • npm  Dependency manager • Browserify
  • 25. 25Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017 Gulp
  • 26. 26Copyright © 2017 Capgemini and Sogeti. All Rights Reserved Oracle User Group Netherlands | 16th June, 2017