Submit Search
Upload
JavaScript Modularity Explained: A Guide to Modular JavaScript
•
6 likes
•
4,081 views
AI-enhanced title
S
Sander Mak (@Sander_Mak)
Follow
As presented at JavaOne 2013
Read less
Read more
Technology
Report
Share
Report
Share
1 of 38
Download now
Download to read offline
Recommended
Java 9 Modularity in Action
Java 9 Modularity in Action
Sander Mak (@Sander_Mak)
Desiging for Modularity with Java 9
Desiging for Modularity with Java 9
Sander Mak (@Sander_Mak)
Scala & Lift (JEEConf 2012)
Scala & Lift (JEEConf 2012)
Sander Mak (@Sander_Mak)
Java 9 modularity
Java 9 modularity
Knoldus Inc.
Modular Java
Modular Java
Martin Toshev
Modules or microservices?
Modules or microservices?
Sander Mak (@Sander_Mak)
Java 9 and Project Jigsaw
Java 9 and Project Jigsaw
DPC Consulting Ltd
Developing modular Java applications
Developing modular Java applications
Julien Dubois
Recommended
Java 9 Modularity in Action
Java 9 Modularity in Action
Sander Mak (@Sander_Mak)
Desiging for Modularity with Java 9
Desiging for Modularity with Java 9
Sander Mak (@Sander_Mak)
Scala & Lift (JEEConf 2012)
Scala & Lift (JEEConf 2012)
Sander Mak (@Sander_Mak)
Java 9 modularity
Java 9 modularity
Knoldus Inc.
Modular Java
Modular Java
Martin Toshev
Modules or microservices?
Modules or microservices?
Sander Mak (@Sander_Mak)
Java 9 and Project Jigsaw
Java 9 and Project Jigsaw
DPC Consulting Ltd
Developing modular Java applications
Developing modular Java applications
Julien Dubois
Modular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache Karaf
Ioan Eugen Stan
Karaf ee-apachecon eu-2012
Karaf ee-apachecon eu-2012
Charles Moulliard
Java modules using project jigsaw@jdk 9
Java modules using project jigsaw@jdk 9
Mauricio "Maltron" Leal
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
Robert Scholte
OSGi & Java EE in GlassFish
OSGi & Java EE in GlassFish
Sanjeeb Sahoo
Java Modularity with OSGi
Java Modularity with OSGi
Ilya Rybak
Polygot Java EE on the GraalVM
Polygot Java EE on the GraalVM
Ryan Cuprak
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
Sanjeeb Sahoo
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
VMware Tanzu
Apache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume Nodet
Normandy JUG
Real World Java 9
Real World Java 9
J On The Beach
GlassFish v3 Prelude Aquarium Paris
GlassFish v3 Prelude Aquarium Paris
Alexis Moussine-Pouchkine
Spring Boot on Amazon Web Services with Spring Cloud AWS
Spring Boot on Amazon Web Services with Spring Cloud AWS
VMware Tanzu
JVMs in Containers
JVMs in Containers
David Delabassee
Nuxeo WebEngine and GlassFish v3
Nuxeo WebEngine and GlassFish v3
Nuxeo
Next.js with drupal, the good parts
Next.js with drupal, the good parts
Taller Negócio Digitais
GlassFish v3, OSGi Equinox Felix
GlassFish v3, OSGi Equinox Felix
Ludovic Champenois
Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019
graemerocher
Project Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium Paris
Alexis Moussine-Pouchkine
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Arun Gupta
Modularity in the Cloud
Modularity in the Cloud
Sander Mak (@Sander_Mak)
Cross-Build Injection attacks: how safe is your Java build?
Cross-Build Injection attacks: how safe is your Java build?
Sander Mak (@Sander_Mak)
More Related Content
What's hot
Modular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache Karaf
Ioan Eugen Stan
Karaf ee-apachecon eu-2012
Karaf ee-apachecon eu-2012
Charles Moulliard
Java modules using project jigsaw@jdk 9
Java modules using project jigsaw@jdk 9
Mauricio "Maltron" Leal
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
Robert Scholte
OSGi & Java EE in GlassFish
OSGi & Java EE in GlassFish
Sanjeeb Sahoo
Java Modularity with OSGi
Java Modularity with OSGi
Ilya Rybak
Polygot Java EE on the GraalVM
Polygot Java EE on the GraalVM
Ryan Cuprak
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
Sanjeeb Sahoo
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
VMware Tanzu
Apache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume Nodet
Normandy JUG
Real World Java 9
Real World Java 9
J On The Beach
GlassFish v3 Prelude Aquarium Paris
GlassFish v3 Prelude Aquarium Paris
Alexis Moussine-Pouchkine
Spring Boot on Amazon Web Services with Spring Cloud AWS
Spring Boot on Amazon Web Services with Spring Cloud AWS
VMware Tanzu
JVMs in Containers
JVMs in Containers
David Delabassee
Nuxeo WebEngine and GlassFish v3
Nuxeo WebEngine and GlassFish v3
Nuxeo
Next.js with drupal, the good parts
Next.js with drupal, the good parts
Taller Negócio Digitais
GlassFish v3, OSGi Equinox Felix
GlassFish v3, OSGi Equinox Felix
Ludovic Champenois
Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019
graemerocher
Project Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium Paris
Alexis Moussine-Pouchkine
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Arun Gupta
What's hot
(20)
Modular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache Karaf
Karaf ee-apachecon eu-2012
Karaf ee-apachecon eu-2012
Java modules using project jigsaw@jdk 9
Java modules using project jigsaw@jdk 9
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
Java 9 and the impact on Maven Projects (ApacheCon Europe 2016)
OSGi & Java EE in GlassFish
OSGi & Java EE in GlassFish
Java Modularity with OSGi
Java Modularity with OSGi
Polygot Java EE on the GraalVM
Polygot Java EE on the GraalVM
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
Apache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume Nodet
Real World Java 9
Real World Java 9
GlassFish v3 Prelude Aquarium Paris
GlassFish v3 Prelude Aquarium Paris
Spring Boot on Amazon Web Services with Spring Cloud AWS
Spring Boot on Amazon Web Services with Spring Cloud AWS
JVMs in Containers
JVMs in Containers
Nuxeo WebEngine and GlassFish v3
Nuxeo WebEngine and GlassFish v3
Next.js with drupal, the good parts
Next.js with drupal, the good parts
GlassFish v3, OSGi Equinox Felix
GlassFish v3, OSGi Equinox Felix
Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019
Project Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium Paris
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Viewers also liked
Modularity in the Cloud
Modularity in the Cloud
Sander Mak (@Sander_Mak)
Cross-Build Injection attacks: how safe is your Java build?
Cross-Build Injection attacks: how safe is your Java build?
Sander Mak (@Sander_Mak)
Hibernate Performance Tuning (JEEConf 2012)
Hibernate Performance Tuning (JEEConf 2012)
Sander Mak (@Sander_Mak)
Ferguson - Legislator's Report Card
Ferguson - Legislator's Report Card
biferguson
Google Doc Ch4
Google Doc Ch4
Warren Yip
張望 佛門攝影
張望 佛門攝影
Huanyin Cheng
Mlc For Cities Introduction To The Concept
Mlc For Cities Introduction To The Concept
MultiLingualCity
Presentatie W Wsop Design Plein
Presentatie W Wsop Design Plein
francienvaneersel
AUX Cities
AUX Cities
Los Angeles Accessibility and Inclusive Design Group
Teenager
Teenager
ericboy20032003
Presentation2[1]
Presentation2[1]
o.m.garcia
Dialogbaseret Aftalestyring Powerpoint øKonomiudvalget 4. December 07
Dialogbaseret Aftalestyring Powerpoint øKonomiudvalget 4. December 07
ibsis
La Narracion
La Narracion
mgartal
Presentation Skills - Session One
Presentation Skills - Session One
Kevin Smith
Presentacion I Cities 2009
Presentacion I Cities 2009
Fernando Martin
智慧生活科技的察覺與反思-營造舒適減壓的睡眠空間
智慧生活科技的察覺與反思-營造舒適減壓的睡眠空間
開放式概念發表平臺
Communication 1
Communication 1
waikirikiri bilingual school
Don't Get Stung
Don't Get Stung
Barry Dorrans
Unenclosable
Unenclosable
AlanRosenblith
Vip Program by Proforma Amplified
Vip Program by Proforma Amplified
Jim Hanika
Viewers also liked
(20)
Modularity in the Cloud
Modularity in the Cloud
Cross-Build Injection attacks: how safe is your Java build?
Cross-Build Injection attacks: how safe is your Java build?
Hibernate Performance Tuning (JEEConf 2012)
Hibernate Performance Tuning (JEEConf 2012)
Ferguson - Legislator's Report Card
Ferguson - Legislator's Report Card
Google Doc Ch4
Google Doc Ch4
張望 佛門攝影
張望 佛門攝影
Mlc For Cities Introduction To The Concept
Mlc For Cities Introduction To The Concept
Presentatie W Wsop Design Plein
Presentatie W Wsop Design Plein
AUX Cities
AUX Cities
Teenager
Teenager
Presentation2[1]
Presentation2[1]
Dialogbaseret Aftalestyring Powerpoint øKonomiudvalget 4. December 07
Dialogbaseret Aftalestyring Powerpoint øKonomiudvalget 4. December 07
La Narracion
La Narracion
Presentation Skills - Session One
Presentation Skills - Session One
Presentacion I Cities 2009
Presentacion I Cities 2009
智慧生活科技的察覺與反思-營造舒適減壓的睡眠空間
智慧生活科技的察覺與反思-營造舒適減壓的睡眠空間
Communication 1
Communication 1
Don't Get Stung
Don't Get Stung
Unenclosable
Unenclosable
Vip Program by Proforma Amplified
Vip Program by Proforma Amplified
Similar to JavaScript Modularity Explained: A Guide to Modular JavaScript
Modular JavaScript
Modular JavaScript
NLJUG
Modular JavaScript in an OSGi World - S Mak
Modular JavaScript in an OSGi World - S Mak
mfrancis
Java 7 Modularity: a View from the Gallery
Java 7 Modularity: a View from the Gallery
njbartlett
Java 9, JShell, and Modularity
Java 9, JShell, and Modularity
Mohammad Hossein Rimaz
Javantura v4 - What’s NOT new in modular Java - Milen Dyankov
Javantura v4 - What’s NOT new in modular Java - Milen Dyankov
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
Moved to https://slidr.io/azzazzel/what-s-not-new-in-modular-java
Moved to https://slidr.io/azzazzel/what-s-not-new-in-modular-java
Milen Dyankov
Java modularity: life after Java 9
Java modularity: life after Java 9
Sander Mak (@Sander_Mak)
50+ java interview questions
50+ java interview questions
SynergisticMedia
Why gradle
Why gradle
Sercan Karaoglu
Modular Java EE in the Cloud
Modular Java EE in the Cloud
Bert Ertman
Get the Top 6 new features in Java 2019
Get the Top 6 new features in Java 2019
Aegis Softtech
Java 9 New Features
Java 9 New Features
Ali BAKAN
Java interview question
Java interview question
varatharajanrajeswar
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java development
Baruch Sadogursky
Zero Downtime with OSGi - Chicago Coder Conference 05-15-2015
Zero Downtime with OSGi - Chicago Coder Conference 05-15-2015
Mariano Gonzalez
SOLID Design principles
SOLID Design principles
Mohamed Sanaulla
How to not suck at JavaScript
How to not suck at JavaScript
tmont
Advanced Node.JS Meetup
Advanced Node.JS Meetup
LINAGORA
1
1
ksuthesan
Android interview questions
Android interview questions
satish reddy
Similar to JavaScript Modularity Explained: A Guide to Modular JavaScript
(20)
Modular JavaScript
Modular JavaScript
Modular JavaScript in an OSGi World - S Mak
Modular JavaScript in an OSGi World - S Mak
Java 7 Modularity: a View from the Gallery
Java 7 Modularity: a View from the Gallery
Java 9, JShell, and Modularity
Java 9, JShell, and Modularity
Javantura v4 - What’s NOT new in modular Java - Milen Dyankov
Javantura v4 - What’s NOT new in modular Java - Milen Dyankov
Moved to https://slidr.io/azzazzel/what-s-not-new-in-modular-java
Moved to https://slidr.io/azzazzel/what-s-not-new-in-modular-java
Java modularity: life after Java 9
Java modularity: life after Java 9
50+ java interview questions
50+ java interview questions
Why gradle
Why gradle
Modular Java EE in the Cloud
Modular Java EE in the Cloud
Get the Top 6 new features in Java 2019
Get the Top 6 new features in Java 2019
Java 9 New Features
Java 9 New Features
Java interview question
Java interview question
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java development
Zero Downtime with OSGi - Chicago Coder Conference 05-15-2015
Zero Downtime with OSGi - Chicago Coder Conference 05-15-2015
SOLID Design principles
SOLID Design principles
How to not suck at JavaScript
How to not suck at JavaScript
Advanced Node.JS Meetup
Advanced Node.JS Meetup
1
1
Android interview questions
Android interview questions
More from Sander Mak (@Sander_Mak)
Scalable Application Development @ Picnic
Scalable Application Development @ Picnic
Sander Mak (@Sander_Mak)
Coding Your Way to Java 13
Coding Your Way to Java 13
Sander Mak (@Sander_Mak)
Coding Your Way to Java 12
Coding Your Way to Java 12
Sander Mak (@Sander_Mak)
Java Modularity: the Year After
Java Modularity: the Year After
Sander Mak (@Sander_Mak)
Migrating to Java 9 Modules
Migrating to Java 9 Modules
Sander Mak (@Sander_Mak)
Provisioning the IoT
Provisioning the IoT
Sander Mak (@Sander_Mak)
Event-sourced architectures with Akka
Event-sourced architectures with Akka
Sander Mak (@Sander_Mak)
TypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the pain
Sander Mak (@Sander_Mak)
The Ultimate Dependency Manager Shootout (QCon NY 2014)
The Ultimate Dependency Manager Shootout (QCon NY 2014)
Sander Mak (@Sander_Mak)
Akka (BeJUG)
Akka (BeJUG)
Sander Mak (@Sander_Mak)
Fork Join (BeJUG 2012)
Fork Join (BeJUG 2012)
Sander Mak (@Sander_Mak)
Fork/Join for Fun and Profit!
Fork/Join for Fun and Profit!
Sander Mak (@Sander_Mak)
Kscope11 recap
Kscope11 recap
Sander Mak (@Sander_Mak)
Java 7: Fork/Join, Invokedynamic and the future
Java 7: Fork/Join, Invokedynamic and the future
Sander Mak (@Sander_Mak)
Scala and Lift
Scala and Lift
Sander Mak (@Sander_Mak)
Elevate your webapps with Scala and Lift
Elevate your webapps with Scala and Lift
Sander Mak (@Sander_Mak)
Hibernate performance tuning
Hibernate performance tuning
Sander Mak (@Sander_Mak)
JDK7: Improved support for dynamic languages
JDK7: Improved support for dynamic languages
Sander Mak (@Sander_Mak)
Scala: functional programming for the imperative mind
Scala: functional programming for the imperative mind
Sander Mak (@Sander_Mak)
Recursion Pattern Analysis and Feedback
Recursion Pattern Analysis and Feedback
Sander Mak (@Sander_Mak)
More from Sander Mak (@Sander_Mak)
(20)
Scalable Application Development @ Picnic
Scalable Application Development @ Picnic
Coding Your Way to Java 13
Coding Your Way to Java 13
Coding Your Way to Java 12
Coding Your Way to Java 12
Java Modularity: the Year After
Java Modularity: the Year After
Migrating to Java 9 Modules
Migrating to Java 9 Modules
Provisioning the IoT
Provisioning the IoT
Event-sourced architectures with Akka
Event-sourced architectures with Akka
TypeScript: coding JavaScript without the pain
TypeScript: coding JavaScript without the pain
The Ultimate Dependency Manager Shootout (QCon NY 2014)
The Ultimate Dependency Manager Shootout (QCon NY 2014)
Akka (BeJUG)
Akka (BeJUG)
Fork Join (BeJUG 2012)
Fork Join (BeJUG 2012)
Fork/Join for Fun and Profit!
Fork/Join for Fun and Profit!
Kscope11 recap
Kscope11 recap
Java 7: Fork/Join, Invokedynamic and the future
Java 7: Fork/Join, Invokedynamic and the future
Scala and Lift
Scala and Lift
Elevate your webapps with Scala and Lift
Elevate your webapps with Scala and Lift
Hibernate performance tuning
Hibernate performance tuning
JDK7: Improved support for dynamic languages
JDK7: Improved support for dynamic languages
Scala: functional programming for the imperative mind
Scala: functional programming for the imperative mind
Recursion Pattern Analysis and Feedback
Recursion Pattern Analysis and Feedback
Recently uploaded
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
Maria Levchenko
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
Pooja Nehwal
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
apidays
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Results
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Igalia
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Enterprise Knowledge
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
V3cube
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Delhi Call girls
Recently uploaded
(20)
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
JavaScript Modularity Explained: A Guide to Modular JavaScript
1.
Modular JavaScript @sander_mak @pbakker
2.
Modularity
3.
intro JavaScript
4.
pitfalls JS
5.
Module
6.
Systems Java
7.
+
8.
JavaScript
9.
modularity
10.
Why
11.
Modularity?
12.
Modularity is key
13.
to maintainable code
14.
Modularity 101 Encapsulation Maintainability Flexible composition Sanity
15.
Modularity 101 Remember
16.
Java? Low
17.
Coupling High
18.
Cohesion
19.
Modularity in Java Bundle
A + package org.myapi - package org.myapi.impl - package org.util Bundle B + package org.other.api Bundle C + package org.other.impl Imports Imports
20.
Modularity in Java The
21.
only
22.
modularity
23.
solution
24.
for
25.
Java
26.
today OSGi
27.
Why modularity in
JavaScript? We
28.
run
29.
into
30.
the
31.
same
32.
maintainability
33.
problems
34.
as
35.
on
36.
the
37.
server
38.
side... So... 20% 80% Java JavaScript 50% 50% then
now
39.
Text And
40.
it
41.
might
42.
even
43.
be
44.
worse....
45.
JavaScript Modularity 101 Globals
46.
Anonymous functions Anonymous
47.
functions
48.
prevent
49.
putting
50.
something
51.
in
52.
global
53.
scope This
54.
method
55.
executes,
56.
but
57.
is
58.
not
59.
visible
60.
in
61.
global
62.
scope
63.
Namespacing: a common
approach This only makes things slightly better... We still force myLibrary into global scope! static names
64.
Leaking visibility Do
65.
not
66.
make
67.
private
68.
methods
69.
public! myhelper
70.
is
71.
now
72.
public public
73.
Leaking visibility Instead: myhelper
74.
is
75.
now
76.
private
77.
Comparing
78.
JavaScript
79.
Module
80.
Systems
81.
Module Wish list Browser
82.
support Stable Available
83.
now Specified Manage dependencies
84.
Module options Asynchronous
85.
Module
86.
Definition CommonJS ES6
87.
Harmony
88.
Modules
89.
Module comparison AMD C.JS ES6 Spec-by- GitHub Spec-by- Wiki Ecma standard (in
90.
progress) Spec? Impls? RequireJS Curl.js ... Browserify Node.js ... Browser first Server first Both Environment - Where can
you play with ES6 modules? Traceur?
91.
Module comparison AMD C.JS ES6 Yes No No Async? Format? Objects Functions ... Objects Available? Yes Yes No Objects Functions ...
92.
Module comparison AMD CommonJS ES6
93.
HarmonyRevise with latest syntax
94.
Universal
95.
Module
96.
Definition Can’t we have
it all?
97.
NO!Pick
98.
one. And
99.
stick
100.
with
101.
it. (unless
102.
you
103.
are
104.
a
105.
library
106.
author)
107.
Why RequireJS? Robust
108.
AMD
109.
implementation Browser-based,
110.
no
111.
build
112.
step Lazy-loading Optimizer:
113.
r.js Backwards
114.
compat.
115.
with
116.
globals jQuery
117.
supports
118.
AMD
119.
RequireJS: end-to-end index.html main.js That.
120.
Is.
121.
All. mymodule-1.2.js
122.
RequireJS: ‘advanced’ Require Require Named Modules Conditional Dependencies
123.
From legacy to
modules Globals RequireJS
124.
Shims
125.
Another example AngularJS
126.
Services
127.
model Dependency
128.
Injection What
129.
about
130.
well
131.
defined
132.
interfaces? What
133.
about
134.
dynamic
135.
services? Why
136.
a
137.
second
138.
module
139.
definition?
140.
Service definition
141.
Dependency Injection Injecting the
service
142.
Modularity
143.
across
144.
the
145.
wire
146.
RESTful
147.
Web
148.
Service JS
149.
Module JS
150.
Module JS
151.
Module RESTful
152.
Web
153.
Service A typical web
application
154.
admin.general.ui admin.login.rest admin.orders.ui admin.products.ui admin.security customers.rest frontend.filters frontend.ui orders.rest products.rest orders.mongo
customers.mongo products.mongo search.rest search.indexer
155.
Demo bit.ly/modularjs
156.
What about... ‘The
157.
Future’
158.
Future-proof modules Modularizing
159.
was
160.
the
161.
hard
162.
part.
163.
Tech
164.
is
165.
secondary ‘Transpile’
166.
ES
167.
6
168.
modules Google
169.
Traceur
170.
or
171.
Square’s
172.
ES
173.
transpiler But:
174.
spec
175.
far
176.
from
177.
final Library
178.
author:
179.
UMD Otherwise,
180.
just
181.
pick
182.
one
183.
Future:
184.
JavaScript services https://github.com/osgi/design/raw/master/rfps/ rfp-0159-JavaScript-Microservices.pdf OSGi RFP
159 JavaScript
185.
Micro
186.
Services
187.
Questions? @sander_mak @pbakker bit.ly/modularjs
Download now