Suche senden
Hochladen
h-ubu - CDI in JavaScript
•
Als PPTX, PDF herunterladen
•
2 gefällt mir
•
955 views
Clément Escoffier
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 30
Jetzt herunterladen
Empfohlen
h-ubu : CDI in JavaScript
h-ubu : CDI in JavaScript
Clément Escoffier
Yapc::Asia 2008 Tokyo - Easy system administration programming with a framewo...
Yapc::Asia 2008 Tokyo - Easy system administration programming with a framewo...
Gosuke Miyashita
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...
andreaslubbe
Distributed work with Gearman
Distributed work with Gearman
Dominik Jungowski
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Brian Sam-Bodden
ECMAScript 6 and the Node Driver
ECMAScript 6 and the Node Driver
MongoDB
Function
Function
mussawir20
Partial Application in Javascript (and why I like it)
Partial Application in Javascript (and why I like it)
blessYahu
Empfohlen
h-ubu : CDI in JavaScript
h-ubu : CDI in JavaScript
Clément Escoffier
Yapc::Asia 2008 Tokyo - Easy system administration programming with a framewo...
Yapc::Asia 2008 Tokyo - Easy system administration programming with a framewo...
Gosuke Miyashita
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...
andreaslubbe
Distributed work with Gearman
Distributed work with Gearman
Dominik Jungowski
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Brian Sam-Bodden
ECMAScript 6 and the Node Driver
ECMAScript 6 and the Node Driver
MongoDB
Function
Function
mussawir20
Partial Application in Javascript (and why I like it)
Partial Application in Javascript (and why I like it)
blessYahu
Porting legacy apps to Griffon
Porting legacy apps to Griffon
James Williams
Otimizando Aplicações em Rails
Otimizando Aplicações em Rails
Juan Maiz
SignalR
SignalR
LearningTech
Introduction to asynchronous DB access using Node.js and MongoDB
Introduction to asynchronous DB access using Node.js and MongoDB
Adrien Joly
Map kit light
Map kit light
CocoaHeads France
Javascript this keyword
Javascript this keyword
Pham Huy Tung
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
rtCamp
Mage Titans - Workshop - UI Components
Mage Titans - Workshop - UI Components
vkorotun
Promises & limbo
Promises & limbo
Sylvain Faucherand
Var Marketing Programs1 Rev 060909
Var Marketing Programs1 Rev 060909
cbrockway
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Circles of San Antonio Community Coalition
Undangan (Kak Melly n Kak Dicky)
Undangan (Kak Melly n Kak Dicky)
@rtNya
Nice weekend with music
Nice weekend with music
Daniel Chua
How to do windows movie maker?
How to do windows movie maker?
jessecadelina
Extra Credit: Eye Tracking Finance Websites
Extra Credit: Eye Tracking Finance Websites
Jennifer Hsieh
Evaluaciones de jheickson noguera ingenieria economica
Evaluaciones de jheickson noguera ingenieria economica
Lili Cardenas
Tecno1r Eso
Tecno1r Eso
immagalvez
Oracle 11i OID AD Integration
Oracle 11i OID AD Integration
Mahesh Vallampati
Menuju Koperasi Rspp Yang Mandiri &Modern
Menuju Koperasi Rspp Yang Mandiri &Modern
suadarto
Information Skills - Targeting untapped user groups - text
Information Skills - Targeting untapped user groups - text
Tina Hohmann
Nilai un dan_us_2010_ips
Nilai un dan_us_2010_ips
@rtNya
Your Guide to Business + Legal Success in Latin America
Your Guide to Business + Legal Success in Latin America
Kegler Brown Hill + Ritter
Weitere ähnliche Inhalte
Was ist angesagt?
Porting legacy apps to Griffon
Porting legacy apps to Griffon
James Williams
Otimizando Aplicações em Rails
Otimizando Aplicações em Rails
Juan Maiz
SignalR
SignalR
LearningTech
Introduction to asynchronous DB access using Node.js and MongoDB
Introduction to asynchronous DB access using Node.js and MongoDB
Adrien Joly
Map kit light
Map kit light
CocoaHeads France
Javascript this keyword
Javascript this keyword
Pham Huy Tung
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
rtCamp
Mage Titans - Workshop - UI Components
Mage Titans - Workshop - UI Components
vkorotun
Promises & limbo
Promises & limbo
Sylvain Faucherand
Was ist angesagt?
(9)
Porting legacy apps to Griffon
Porting legacy apps to Griffon
Otimizando Aplicações em Rails
Otimizando Aplicações em Rails
SignalR
SignalR
Introduction to asynchronous DB access using Node.js and MongoDB
Introduction to asynchronous DB access using Node.js and MongoDB
Map kit light
Map kit light
Javascript this keyword
Javascript this keyword
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
Hooking with WordPress by Rahul Prajapati - COEP FOSSMeet March 2019
Mage Titans - Workshop - UI Components
Mage Titans - Workshop - UI Components
Promises & limbo
Promises & limbo
Andere mochten auch
Var Marketing Programs1 Rev 060909
Var Marketing Programs1 Rev 060909
cbrockway
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Circles of San Antonio Community Coalition
Undangan (Kak Melly n Kak Dicky)
Undangan (Kak Melly n Kak Dicky)
@rtNya
Nice weekend with music
Nice weekend with music
Daniel Chua
How to do windows movie maker?
How to do windows movie maker?
jessecadelina
Extra Credit: Eye Tracking Finance Websites
Extra Credit: Eye Tracking Finance Websites
Jennifer Hsieh
Evaluaciones de jheickson noguera ingenieria economica
Evaluaciones de jheickson noguera ingenieria economica
Lili Cardenas
Tecno1r Eso
Tecno1r Eso
immagalvez
Oracle 11i OID AD Integration
Oracle 11i OID AD Integration
Mahesh Vallampati
Menuju Koperasi Rspp Yang Mandiri &Modern
Menuju Koperasi Rspp Yang Mandiri &Modern
suadarto
Information Skills - Targeting untapped user groups - text
Information Skills - Targeting untapped user groups - text
Tina Hohmann
Nilai un dan_us_2010_ips
Nilai un dan_us_2010_ips
@rtNya
Your Guide to Business + Legal Success in Latin America
Your Guide to Business + Legal Success in Latin America
Kegler Brown Hill + Ritter
Br10 ombygning
Br10 ombygning
Bertel Bolt-Jørgensen
PPP Project Development Fund Initiative-PbyR
PPP Project Development Fund Initiative-PbyR
Akwu OKOLO
2013 talk at TGAC, November 4
2013 talk at TGAC, November 4
c.titus.brown
Bethany Home What's New (June 2013)
Bethany Home What's New (June 2013)
Sarah Halstead
There is always_a_better_way
There is always_a_better_way
Daniel Chua
Mn1 sec 1 - les 3 - (shirk)
Mn1 sec 1 - les 3 - (shirk)
Fawad Kiyani
2012 XLDB talk
2012 XLDB talk
c.titus.brown
Andere mochten auch
(20)
Var Marketing Programs1 Rev 060909
Var Marketing Programs1 Rev 060909
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Circles of San Antonio Community Coalition and Bexar County DWI Task Force Ho...
Undangan (Kak Melly n Kak Dicky)
Undangan (Kak Melly n Kak Dicky)
Nice weekend with music
Nice weekend with music
How to do windows movie maker?
How to do windows movie maker?
Extra Credit: Eye Tracking Finance Websites
Extra Credit: Eye Tracking Finance Websites
Evaluaciones de jheickson noguera ingenieria economica
Evaluaciones de jheickson noguera ingenieria economica
Tecno1r Eso
Tecno1r Eso
Oracle 11i OID AD Integration
Oracle 11i OID AD Integration
Menuju Koperasi Rspp Yang Mandiri &Modern
Menuju Koperasi Rspp Yang Mandiri &Modern
Information Skills - Targeting untapped user groups - text
Information Skills - Targeting untapped user groups - text
Nilai un dan_us_2010_ips
Nilai un dan_us_2010_ips
Your Guide to Business + Legal Success in Latin America
Your Guide to Business + Legal Success in Latin America
Br10 ombygning
Br10 ombygning
PPP Project Development Fund Initiative-PbyR
PPP Project Development Fund Initiative-PbyR
2013 talk at TGAC, November 4
2013 talk at TGAC, November 4
Bethany Home What's New (June 2013)
Bethany Home What's New (June 2013)
There is always_a_better_way
There is always_a_better_way
Mn1 sec 1 - les 3 - (shirk)
Mn1 sec 1 - les 3 - (shirk)
2012 XLDB talk
2012 XLDB talk
Ähnlich wie h-ubu - CDI in JavaScript
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
camunda services GmbH
OW2 Nanoko
OW2 Nanoko
Clément Escoffier
Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)
Paco de la Cruz
Writing Redis in Python with asyncio
Writing Redis in Python with asyncio
James Saryerwinnie
How to perform debounce in react
How to perform debounce in react
BOSC Tech Labs
GDG Devfest 2019 - Build go kit microservices at kubernetes with ease
GDG Devfest 2019 - Build go kit microservices at kubernetes with ease
KAI CHU CHUNG
Job Queue in Golang
Job Queue in Golang
Bo-Yi Wu
ngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency Injection
Dzmitry Ivashutsin
Jasigsakai12 columbia-customizes-cas
Jasigsakai12 columbia-customizes-cas
ellentuck
Grails transactions
Grails transactions
Husain Dalal
From object oriented to functional domain modeling
From object oriented to functional domain modeling
Codemotion
From object oriented to functional domain modeling
From object oriented to functional domain modeling
Mario Fusco
Advanced #2 networking
Advanced #2 networking
Vitali Pekelis
Google Web Toolkits
Google Web Toolkits
Yiguang Hu
L2 Web App Development Guest Lecture At University of Surrey 20/11/09
L2 Web App Development Guest Lecture At University of Surrey 20/11/09
Daniel Bryant
Finagle - an intro to rpc & a sync programming in jvm
Finagle - an intro to rpc & a sync programming in jvm
PrasannaKumar Sathyanarayanan
Building Progressive Web Apps for Windows devices
Building Progressive Web Apps for Windows devices
Windows Developer
AngularJs-training
AngularJs-training
Pratchaya Suputsopon
Writing robust Node.js applications
Writing robust Node.js applications
Tom Croucher
Unit Testing Express Middleware
Unit Testing Express Middleware
Morris Singer
Ähnlich wie h-ubu - CDI in JavaScript
(20)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
OW2 Nanoko
OW2 Nanoko
Azure Durable Functions (2019-04-27)
Azure Durable Functions (2019-04-27)
Writing Redis in Python with asyncio
Writing Redis in Python with asyncio
How to perform debounce in react
How to perform debounce in react
GDG Devfest 2019 - Build go kit microservices at kubernetes with ease
GDG Devfest 2019 - Build go kit microservices at kubernetes with ease
Job Queue in Golang
Job Queue in Golang
ngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency Injection
Jasigsakai12 columbia-customizes-cas
Jasigsakai12 columbia-customizes-cas
Grails transactions
Grails transactions
From object oriented to functional domain modeling
From object oriented to functional domain modeling
From object oriented to functional domain modeling
From object oriented to functional domain modeling
Advanced #2 networking
Advanced #2 networking
Google Web Toolkits
Google Web Toolkits
L2 Web App Development Guest Lecture At University of Surrey 20/11/09
L2 Web App Development Guest Lecture At University of Surrey 20/11/09
Finagle - an intro to rpc & a sync programming in jvm
Finagle - an intro to rpc & a sync programming in jvm
Building Progressive Web Apps for Windows devices
Building Progressive Web Apps for Windows devices
AngularJs-training
AngularJs-training
Writing robust Node.js applications
Writing robust Node.js applications
Unit Testing Express Middleware
Unit Testing Express Middleware
Mehr von Clément Escoffier
Devoxx France 2023 - 1,2,3 Quarkus.pdf
Devoxx France 2023 - 1,2,3 Quarkus.pdf
Clément Escoffier
vert.x 3.1 - be reactive on the JVM but not only in Java
vert.x 3.1 - be reactive on the JVM but not only in Java
Clément Escoffier
Modularity and Dynamism - The tale of two sisters
Modularity and Dynamism - The tale of two sisters
Clément Escoffier
h-ubu - An industrial-strength service-oriented component model for JavaScrip...
h-ubu - An industrial-strength service-oriented component model for JavaScrip...
Clément Escoffier
iPOJO 2.x - a tale about dynamism
iPOJO 2.x - a tale about dynamism
Clément Escoffier
Everest - Everything is a resource
Everest - Everything is a resource
Clément Escoffier
Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to reality
Clément Escoffier
OSGi - beyond the myth
OSGi - beyond the myth
Clément Escoffier
One year-with-chameleon
One year-with-chameleon
Clément Escoffier
The OSGi Framework Multiplication
The OSGi Framework Multiplication
Clément Escoffier
Android : a linux-based mobile operating system
Android : a linux-based mobile operating system
Clément Escoffier
Experimenting with the OSGi platform in the Aspire RFID middleware
Experimenting with the OSGi platform in the Aspire RFID middleware
Clément Escoffier
Transactional OSGi Applications Done Right
Transactional OSGi Applications Done Right
Clément Escoffier
Mehr von Clément Escoffier
(13)
Devoxx France 2023 - 1,2,3 Quarkus.pdf
Devoxx France 2023 - 1,2,3 Quarkus.pdf
vert.x 3.1 - be reactive on the JVM but not only in Java
vert.x 3.1 - be reactive on the JVM but not only in Java
Modularity and Dynamism - The tale of two sisters
Modularity and Dynamism - The tale of two sisters
h-ubu - An industrial-strength service-oriented component model for JavaScrip...
h-ubu - An industrial-strength service-oriented component model for JavaScrip...
iPOJO 2.x - a tale about dynamism
iPOJO 2.x - a tale about dynamism
Everest - Everything is a resource
Everest - Everything is a resource
Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to reality
OSGi - beyond the myth
OSGi - beyond the myth
One year-with-chameleon
One year-with-chameleon
The OSGi Framework Multiplication
The OSGi Framework Multiplication
Android : a linux-based mobile operating system
Android : a linux-based mobile operating system
Experimenting with the OSGi platform in the Aspire RFID middleware
Experimenting with the OSGi platform in the Aspire RFID middleware
Transactional OSGi Applications Done Right
Transactional OSGi Applications Done Right
Kürzlich hochgeladen
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
jfdjdjcjdnsjd
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
The Digital Insurer
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Edi Saputra
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
Zilliz
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Orbitshub
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
Nanddeep Nachan
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Andrey Devyatkin
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Jago de Vreede
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
UiPathCommunity
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Juan lago vázquez
Architecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
Sandro Moreira
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
The Digital Insurer
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
apidays
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
danishmna97
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Jeffrey Haguewood
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
apidays
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
apidays
Kürzlich hochgeladen
(20)
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Architecting Cloud Native Applications
Architecting Cloud Native Applications
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
h-ubu - CDI in JavaScript
1.
Dynamis Technologies
h-ubu CDI in JavaScript Clement Escoffier
2.
3.
4.
How do we
do that in Java ?
5.
6.
Components
7.
Interfaces
8.
Dependency Injection
9.
What do we
have in JavaScript ?
10.
Module Patterns
+ - Fix visibility A bit complex No interfaces
11.
Module loaders
+ - Avoid <script> Hard-coded Transitive dependencies Reuse
12.
MVC / MVVM
+ - Code Pushing organization the limits UI Bindings
13.
Well, so what’s
h-ubu ?
14.
Service-based Injection
Framework
15.
hub
16.
components
17.
var component =
{ configure : function(hub, conf) { }, getComponentName : function() { }, start : function() { }, stop : function() {} }; hub .registerComponent(component) .start()
18.
contracts
19.
var myService= {
doSomething : function() {} }
20.
services
21.
services
Service Registry 2 – Lookup, 1 - Publication Service Listener 3 - Binding
22.
Substitutability
Loose-coupling Why services ? Testable Dynamic
23.
var provider =
{ configure : function(hub, conf) { hub.provideService({ component: this, contract: myService }); }, getComponentName : function() { }, start : function() { }, stop : function() {}, doSomething : function() { … } }
24.
var consumer =
{ configure : function(hub, conf) { hub.requireService({ component: this, contract: myService, field: "svc" }); }, getComponentName : function() { }, start : function() {}, stop : function() {}, work : function() { this.svc.doSomething(); } }
25.
var consumer =
{ configure : function(hub, conf) { hub.requireService({ component: this, contract: myService, field: "svc" }); }, getComponentName : function() { }, start : function() {}, stop : function() {}, work : function() { } this.svc.doSomething(); Proxy }
26.
events
27.
var publisher =
{ configure : function(hub, conf) {} getComponentName : function() { }, start : function() {}, stop : function() {}, work : function() { this.hub.publish(this, "my/topic", event); } }
28.
var receiver =
{ configure : function(hub, conf) { hub.subscribe(this, "my/(.)*?", this.receive); }, getComponentName : function() { }, start : function() {}, stop : function() {}, receive: function(event) { } }
29.
require.js/node.js
Composition Modularize your JavaScript Standalone Configurability
30.
h bu
Stop hacking, Start composing http://nanoko-project.github.com/h-ubu/snapshot/
Jetzt herunterladen