Redefining Modularity with Object Teams

Session Type: 
Extended Talk [55 minutes]

Modularity is our key concept for mastering complexity, but what kind of modularity do we need to address the challenges of tomorrow? Can a programming language provide the necessary means? Can Java?

The Object Teams approach demonstrates how far a truly object-oriented programming language can go, how classes and objects can indeed be the building blocks for uncompromisingly modular software designs. Rather than introducing new kinds of modules the approach adds new ways how classes and objects can be connected into a system:
Existing relationships like nesting and inheritance are enhanced and only one new relationship is introduced: role playing.

With these conceptual tools every requirement, every reusable asset can be cast into a module. Every variation of an existing system can be described by an additional module. Object Teams supports modularity in all circumstances: extreme modularity.

For more than 5 years OT/J has been successfully used in plug-in development, including, e.g., a prototype for JDT's new annotation-based null analysis as a separately deployable module.

Extracted from such applications this presentation will show the most useful patterns, patterns that don't trade one solution for a bag of new problems but holistically improve software quality.

In this presentation the audience will see little syntax of OT/J, that's not where big things happen, but the goal is to change the way developers think about modularity.

Schedule info



Eclipse Technology
Experience level: 

Copyright © 2012 The Eclipse Foundation. All Rights Reserved.