Chaplin ACT is a Java class transformer which modifies classes in such a way that their instances can form composites at runtime. With the help of this dynamic composition several modern language concepts can be introduced to Java. Among them for example traits (mixins), duck-typing, runtime type conversion, AOP-like features etc. A class written with the help of Chaplin ACT can be absolutely decoupled from other classes. Interactions between objects are mediated by the composite's context by means of an internal messaging. As a consequence we get a code which is well testable because no mocks are necessary. Furthermore, the components inside the composite can arbitrarily be added, removed or replaced. It faciliates, for instance, developing application which are able to be modified without restarts.... read more
Chaplin is a Java class transformer which brings several modern language concepts into Java(TM): contexts, composites, roles, traits (mixins), runtime type conversion, dynamic method signatures, method and field aggregators etc. Using these concepts makes designing loosly coupled applications and writing cohesive code easier. Chaplin can work either as a JVM agent or as a post-compilation class transformer. The latter is useful in the development time whereas the latter is suitable for the production time. Chaplin does not introduce any new syntax. All functionality is implemented by means of the standard Java language elements.Visit http://www.iquality.org/chaplin/ for getting more information about the project. You will also find there several tutorials, examples and additional documentation. The current release info is here: http://www.iquality.org/chaplin/RELEASE_INFO.txt
Chaplin is a Java class transformer which brings several modern language concepts into Java(TM): contexts, composites, roles, traits (mixins), runtime type conversion, dynamic method signatures, method and field aggregators etc. Using these concepts makes designing loosly coupled applications and writing cohesive code easier. Chaplin can work either as a JVM agent or as a post-compilation class transformer. The latter is useful in the development time whereas the latter is suitable for the production time. Chaplin does not introduce any new syntax. All functionality is implemented by means of the standard Java language elements.Visit http://www.iquality.org/chaplin/ for getting more information about the project. You will also find there several tutorials, examples and additional documentation. The current release info is here: http://www.iquality.org/chaplin/RELEASE_INFO.txt
Chaplin is a Java class transformer which brings several modern language concepts into Java(TM): contexts, composites, roles, traits (mixins), runtime type conversion, dynamic method signatures, method and field aggregators etc. Using these concepts makes designing loosly coupled applications and writing cohesive code easier. Chaplin can work either as a JVM agent or as a post-compilation class transformer. The latter is useful in the development time whereas the latter is suitable for the production time. Chaplin does not introduce any new syntax. All functionality is implemented by means of the standard Java language elements.Visit http://www.iquality.org/chaplin/ for getting more information about the project. You will also find there several tutorials, examples and additional documentation. The current release info is here: http://www.iquality.org/chaplin/RELEASE_INFO.txt
Chaplin is a Java class transformer which brings several modern language concepts into Java(TM): contexts, composites, roles, traits (mixins), runtime type conversion, dynamic method signatures, method and field aggregators etc. Using these concepts makes designing loosly coupled applications and writing cohesive code easier.
Chaplin can work either as a JVM agent or as a post-compilation class transformer. The latter is useful in the development time whereas the latter is suitable for the production time. Chaplin does not introduce any new syntax. All functionality is implemented by means of the standard Java language elements.... read more