1. Don’t let me
be misunderstood
Mikaël Barbero
6 June 2013
OSGi
NOT SURE IF ACCIDENTALLY
COMPLEX
OR JUST ESSENTIALLY COMPLICATED
2. Geek and Poke cartoon, 27 July 2011: Graph Theory for Geeks (CC-BY-ND)
Original site: http://geekandpoke.typepad.com/geekandpoke/2011/07/graph-theory-for-geeks.html
11. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identify and
module artifact
PermGen is
permanent
Factory/Listener
patterns are key
to modularity
16. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identity and
module artifact
PermGen is
permanent
Factory/Listener
patterns are key
to modularity
20. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identify and
module artifact
PermGen is
permanent
Factory/Listener
patterns are key
to modularity
31. SemanticVersions
major.minor.micro.qualifier
• major: different major versions are completely incompatible
• minor: same major and different minor versions are compatible for
consumer only (callers of the API)
• micro: used to signal bufixes with no backward incompatibility issues
• qualifier: build identity
33. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identify and
module artifact
PermGen is
permanent
Factory/Listener
patterns are key
to modularity
50. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identify and
module artifact
PermGen is
permanent
Factory/Listener
patterns are key
to modularity
54. Execution
Environment
Classes are
identified by a
unique name
Java visibility
creates
sufficient
boundaries
Mix up module
identify and
module artifact
PermGen is
permanent
Factory/Listener
patterns are
keys to
modularity