Room: BBL room 471
Speaker: Niels vd Weem
Title: Relations as a First-Class citizen in Java
Almost every Java application uses relations between objects to solve a problem, data is structured using different classes and linking them together. For this reason, UML specifications allow relations to be modeled together with classes. However, there is no strict specification on how to translate these relations to code. The UML specifications of the different types of relations are ambiguous at best. Even though relations are so widely used in applications, there are no rules on how to link objects together.
In my thesis I propose a language extension to Java to make the use of relations easier and less error prone. The addition of a first class citizen which links two (or in some cases three) classes together will make a direct mapping from UML to Java code very easy because all elements in a diagram can be represented by code. It also removes the code tangling that relations usually introduce. The source of the two linked classes will not show any traces of the relation code which makes them reusable in situations where the relation won’t apply.