HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
In The Brain of Neil Bartlett: OSGi: The Dynamic Module System for Java
OSGi: The Dynamic Module System for Java
Neill Bartlett gives a brief introduction to OSGi, the dynamic module system for Java. OSGi has basically become the industry standard for modular Java although it has yet to be fully integrated within Java. OSGi provides a modular delegation system enabling loading of dependencies in an efficient manner instead of scanning through all of the class loads. OSGi dependencies also maintain versioning to ensure a compatible version of a dependency is loaded, it also enables different versions of the same library to be loaded at the same time.

After introducing OSGi, Neill Bartlett moves on to discuss component oriented programming (COP) using OSGi and how this is an improvement on OOP. Neill explains that OOP which aimed to enable code re-use didn't really work out how it was planned, very few classes can be removed from an application and then used within another application because of their dependencies on other classes. One solution to re-use is to not try but instead leave the class where it is and call it from there, basically SOA.

Neill Bartlett explains that OOP isn't really broken but it's just not the complete answer, COP extends this to make it easier to write re-usable code. COP is basically building on top of OOP but more capable of running on their own and using the services of other components. This is a great example of how OSGi can be used.

Neill Bartlett provides a demonstration of how this theory can be put into practice using a mailboxes demo. How the component can be dynamically updates as more components are services become available. He also demonstrates how easy it is to get things running with OSGi and add and remove packages.

Download the slides here

ABOUT NEIL BARTLETT
Neil is a developer, consultant and trainer specialising in OSGi and Eclipse, and he is currently working for Sun Microsystems on enhancing the tooling for JavaFX in Eclipse.
More about Neil Bartlett
PODCAST OSGI: THE DYNAMIC MODULE SYSTEM FOR JAVA
SOFTWARE ARCHITECTURE PODCASTS
John T. Davies:Enterprise Integration - The seriously nasty stuff, Enterprise Integration
John T. Davies : 12th Dec 2011
View Podcast: Enterprise Integration - The seriously nasty stuff,
Uncle Bob (Robert C. Martin):Why can't anyone get Web architecture right?, Web architecture
Uncle Bob (Robert C. Martin) : 28th Nov 2011
View Podcast: Why can't anyone get Web architecture right?,
Simon Brown:The Frustrated Architect, Frustrated Architect
Simon Brown : 15th Nov 2011
View Podcast: The Frustrated Architect,
Emil Eifrem:The State of NOSQL Today, State of NOSQL
Emil Eifrem : 2nd Nov 2011
View Podcast: The State of NOSQL Today,
Dave Gardner:Real Life Cassandra, Cassandra
Dave Gardner : 2nd Nov 2011
View Podcast: Real Life Cassandra,
Ian Robinson:Doctor Who and Neo4j, Dr Who & Neo4j
Ian Robinson : 2nd Nov 2011
View Podcast: Doctor Who and Neo4j,
Brendan McAdams:MongoDB + Scala: Case Classes, Documents and Shards for a New Data Model, MongoDB + Scala: Case Classes, Documents
Brendan McAdams : 2nd Nov 2011
View Podcast: MongoDB + Scala: Case Classes, Documents and Shards for a New Data Model,
Simon Waterer:Introduction to Platform MapReduce, Introduction to Platform MapReduce
Simon Waterer : 12th Oct 2011
View Podcast: Introduction to Platform MapReduce,
Scott Cranton:Getting Started with FuseIDE, Get started - FuseIDE
Scott Cranton : 27th Sep 2011
View Podcast: Getting Started with FuseIDE,
Martin Sustrik:The Future of Messaging, Messaging's Future
Martin Sustrik : 23rd Sep 2011
View Podcast: The Future of Messaging,
Andy Piper:Introducing MQTT, Introducing MQTT
Andy Piper : 23rd Sep 2011
View Podcast: Introducing MQTT,
Marek Majkowski:Realtime web: Not there yet!, Realtime web: Not there yet!
Marek Majkowski : 23rd Sep 2011
View Podcast: Realtime web: Not there yet!,
Julien Genestoux:PubSub for the web : PubSubHubbub, XMPP and Superfeedr, PubSub for the web : PubSubHubbub, XMPP
Julien Genestoux : 23rd Sep 2011
View Podcast: PubSub for the web : PubSubHubbub, XMPP and Superfeedr,
Udi Dahan:Q&A with Udi Dahan, Q&A with Udi Dahan
Udi Dahan : 13th Sep 2011
View Podcast: Q&A with Udi Dahan,
Simon Brown:Load Testing for Developers, Load Testing for Developers
Simon Brown : 5th Sep 2011
View Podcast: Load Testing for Developers,
OTHER SOFTWARE ARCHITECTURE EVENTS
Alberto Brandolini:Eric Evans Domain Driven Design Hands-On Immersion Workshop,  Eric Evans' DDD Immersion Workshop
4 DAY COURSE. Featuring Alberto Brandolini
London, Monday, February 13th
Alberto Brandolini Drive your DBA Crazy in 3 easy steps,  Drive your DBA Crazy in 3 easy steps
FREE EVENT: In The Brain of Alberto Brandolini
London, Tuesday, February 14th
Andreas Ohlund:Udi Dahan's Enterprise Development with NServiceBus,  Udi Dahan's NServiceBus Workshop
4 DAY COURSE. Featuring Andreas Ohlund
London, Monday, February 20th
Andreas Ohlund Putting your events on a diet,  Putting your events on a diet
FREE EVENT: In The Brain of Andreas Ohlund
London, Monday, February 20th
Itamar  Syn-Hershko:Ayende Rahien's RavenDB Workshop,  Ayende Rahien's RavenDB Workshop
2 DAY COURSE. Featuring Itamar Syn-Hershko
London, Tuesday, February 28th
QCon London 2012, QCon London 2012
CONFERENCE (3 DAYS)
London, Wednesday, March 7th BOOK NOW!
Elevate Events:Elevate Launch Event - The SAAS Platform Connecting Contractors and Hiring Clients, Elevate Events
FREE EVENT: Elevate Launch Event
London, Wednesday, March 7th
Francis Sanger:Craig Larman's Applying Advanced Object Design with Patterns,  Craig Larman's Object Design w Patterns
4 DAY COURSE. Featuring Francis Sanger
London, Monday, March 12th
© Copyright 2003-2011, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Speed Coding 2011  Open Source Journal  Ticket Raffle  Agile Expert Series  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship