SlideShare a Scribd company logo
1 of 26
Download to read offline
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

Similar to Javascript for Enterprise Application

Similar to Javascript for Enterprise Application (20)

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

More from Soham Dasgupta

More from Soham Dasgupta (8)

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

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

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