SlideShare a Scribd company logo
Modular JavaScript

@sander_mak
@pbakker
Modularity
 intro
JavaScript
 pitfalls
JS
 Module
 Systems
Java
 +
 JavaScript
 modularity
y
 M
Wh

ity?
ular
od
Modularity is

key
 
to maintainable code
Modularity 101
Remember
 Java?

Low
 Coupling
High
 Cohesion
Modularity in Java
Bundle B

Bundle A
Imports

+ package org.myapi

+ package org.other.api

- package org.myapi.impl
- package org.util

Imports

Bundle C

+ package org.other.impl
Modularity in Java

OSGi
The
 only
 modularity
 
solution
 for
 Java
 today
Why modularity in JavaScript?
then

now

20%
50%

50%

80%

Java

JavaScript

So...
We
 run
 into
 the
 same
 maintainability
 
problems
 as
 on
 the
 server
 side...
Text

en
 
t
 ev
igh
 it
 m
And
....
orse
e
 w
b
JavaScript Modularity 101

Globals
Anonymous functions
Anonymous
 functions
 prevent
 
putting
 something
 in
 global
 scope

This
 method
 executes,
 but
 is
 not
 
visible
 in

More Related Content

PDF
Java SE 9 modules (JPMS) - an introduction
PDF
Java 7 Modularity: a View from the Gallery
PDF
Java Threads Tutorial | Multithreading In Java Tutorial | Java Tutorial For B...
PDF
Introduction to Loops in Java | For, While, Do While, Infinite Loops | Edureka
PDF
Java Modularity: the Year After
PPTX
Java introduction
KEY
CommonJS Everywhere (Wakanday 2011)
PDF
Core java interview questions
Java SE 9 modules (JPMS) - an introduction
Java 7 Modularity: a View from the Gallery
Java Threads Tutorial | Multithreading In Java Tutorial | Java Tutorial For B...
Introduction to Loops in Java | For, While, Do While, Infinite Loops | Edureka
Java Modularity: the Year After
Java introduction
CommonJS Everywhere (Wakanday 2011)
Core java interview questions

What's hot (10)

PPTX
Modular Java
PPTX
Java modularization
PPT
Developing modular Java applications
PDF
Java SE 9 modules - an introduction (July 2018)
PDF
Java Programming | Java Tutorial For Beginners | Java Training | Edureka
PDF
What Is Java | Java Tutorial | Java Programming | Learn Java | Edureka
PDF
Top 100 Java Interview Questions with Detailed Answers
PPTX
Java EE 7 for Real Enterprise Systems
PDF
J2EE vs JavaEE
PPTX
java tutorial for beginner - Free Download
Modular Java
Java modularization
Developing modular Java applications
Java SE 9 modules - an introduction (July 2018)
Java Programming | Java Tutorial For Beginners | Java Training | Edureka
What Is Java | Java Tutorial | Java Programming | Learn Java | Edureka
Top 100 Java Interview Questions with Detailed Answers
Java EE 7 for Real Enterprise Systems
J2EE vs JavaEE
java tutorial for beginner - Free Download
Ad

Viewers also liked (8)

PDF
CSS 讀書會 - 1 (Grid system)
PDF
建立 Sass 環境,透過 Node sass
PDF
git, repo, Gerrit 基礎教學
PDF
Sass 基礎教學 - 高雄前端社群(CSS 讀書會)
PPTX
Trello介紹&操作說明
PDF
專業前端 都如何管理 CSS
PDF
Slack 簡介
PDF
Slack 基本功能介紹
CSS 讀書會 - 1 (Grid system)
建立 Sass 環境,透過 Node sass
git, repo, Gerrit 基礎教學
Sass 基礎教學 - 高雄前端社群(CSS 讀書會)
Trello介紹&操作說明
專業前端 都如何管理 CSS
Slack 簡介
Slack 基本功能介紹
Ad

Similar to Modular JavaScript (20)

PDF
Modular JavaScript
PDF
Modular JavaScript in an OSGi World - S Mak
KEY
Modules and EmbedJS
PDF
Advanced Node.JS Meetup
PDF
Webpack: your final module bundler
PDF
Workshop 2: JavaScript Design Patterns
PDF
JavaScript Miller Columns
PPTX
RMLL - Eclipse Acceleo Day - MDSD Scaffolding and Acceleo - Cédric Vidal - 1.1
PDF
Java 9, JShell, and Modularity
PDF
Modular Java EE in the Cloud
PPT
Basic java part_ii
PPT
Introduction to Java Programming, Basic Structure, variables Data type, input...
PDF
Java 9 / Jigsaw - AJUG/VJUG session
PDF
JavaScript Modules Done Right
PDF
Desiging for Modularity with Java 9
PDF
SOLID Design principles
PDF
Practical WebAssembly with Apex, wasmRS, and nanobus
PDF
JavaOne 2016: Life after Modularity
PPTX
Organized web app development using backbone.js
PPTX
Managing modular software for your nu get, c++ and java development
Modular JavaScript
Modular JavaScript in an OSGi World - S Mak
Modules and EmbedJS
Advanced Node.JS Meetup
Webpack: your final module bundler
Workshop 2: JavaScript Design Patterns
JavaScript Miller Columns
RMLL - Eclipse Acceleo Day - MDSD Scaffolding and Acceleo - Cédric Vidal - 1.1
Java 9, JShell, and Modularity
Modular Java EE in the Cloud
Basic java part_ii
Introduction to Java Programming, Basic Structure, variables Data type, input...
Java 9 / Jigsaw - AJUG/VJUG session
JavaScript Modules Done Right
Desiging for Modularity with Java 9
SOLID Design principles
Practical WebAssembly with Apex, wasmRS, and nanobus
JavaOne 2016: Life after Modularity
Organized web app development using backbone.js
Managing modular software for your nu get, c++ and java development

More from NLJUG (20)

PPTX
The future of Web-Scale - Johan Tillema, Rene Boere & Chris Quach
PPTX
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
PDF
Decoding the airspace above you with Java and $7 hardware - Bert Jan Schrijver
PPTX
Using Docker to Develop, Test and Run Maven Projects - Wouter Danes
PPTX
Kill the mutants and test your tests - Roy van Rijn
PDF
Real-time user interfaces - sosm gewoon makkelijker - Allard Buijze
PPTX
The end of traditional enterprise IT - ING's journey to the next generation I...
PDF
Performance van Java 8 en verder - Jeroen Borgers
PDF
Introduction to Reactive with Play and Akka - Markus Jura
PPTX
Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...
PDF
Workshop angular dart presentatie - Atos
PDF
Workshop spring boot presentatie - Atos
PDF
Cultivating the jenkins job jungle with groovy - Patrick van Dissel
PDF
Rethink your architecture - Marten Deinum
PPTX
Evolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopper
PDF
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
PDF
Apache Wicket: 10 jaar en verder - Martijn Dashorst
PDF
Opening - Bert Ertman
PDF
Returning the right results - Jettro Coenradie
PDF
Reactive programming met Java 8 en Java EE 7 - Martijn Blankestijn
The future of Web-Scale - Johan Tillema, Rene Boere & Chris Quach
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
Decoding the airspace above you with Java and $7 hardware - Bert Jan Schrijver
Using Docker to Develop, Test and Run Maven Projects - Wouter Danes
Kill the mutants and test your tests - Roy van Rijn
Real-time user interfaces - sosm gewoon makkelijker - Allard Buijze
The end of traditional enterprise IT - ING's journey to the next generation I...
Performance van Java 8 en verder - Jeroen Borgers
Introduction to Reactive with Play and Akka - Markus Jura
Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...
Workshop angular dart presentatie - Atos
Workshop spring boot presentatie - Atos
Cultivating the jenkins job jungle with groovy - Patrick van Dissel
Rethink your architecture - Marten Deinum
Evolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopper
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
Apache Wicket: 10 jaar en verder - Martijn Dashorst
Opening - Bert Ertman
Returning the right results - Jettro Coenradie
Reactive programming met Java 8 en Java EE 7 - Martijn Blankestijn

Recently uploaded (20)

PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
August Patch Tuesday
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
Hybrid model detection and classification of lung cancer
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPT
What is a Computer? Input Devices /output devices
PDF
Architecture types and enterprise applications.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Tartificialntelligence_presentation.pptx
August Patch Tuesday
O2C Customer Invoices to Receipt V15A.pptx
OMC Textile Division Presentation 2021.pptx
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
NewMind AI Weekly Chronicles - August'25-Week II
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
observCloud-Native Containerability and monitoring.pptx
Hybrid model detection and classification of lung cancer
DP Operators-handbook-extract for the Mautical Institute
Assigned Numbers - 2025 - Bluetooth® Document
A novel scalable deep ensemble learning framework for big data classification...
Hindi spoken digit analysis for native and non-native speakers
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
What is a Computer? Input Devices /output devices
Architecture types and enterprise applications.pdf

Modular JavaScript