Download Fractality analysis tool | Next | Contents | Case study | Home
[No more frustration]

[Contents]
[Introduction]
[Page 1 - OO dear]
[Page 2 - Variance encapsulation]
[Page 3 - Embarrassingly encapsulated]
[Page 4 - Mine your hierarchies for all they're worth]
[Page 5 - Case in point]
[Page 6 - Brief formalism]
[Page 7 - The point]
[Page 8 - An accessible example]
[Page 9 - United in principle]
[Page 10 - Finally for starters ...]
[Page 11 - Conclusion]
[Page 12 - Implementing the Fractal Class Composition]
[Page 13 - EdmundKirwan Fractality]

[Printer friendly version]

[The line of destiny]

[www.EdmundKirwan.com]

The Fractal Class Composition


Introduction.

Firstly, let's be clear from the outset: the Fractal Class Composition is not a cure for all software ills.

It is not a revolution in design.

It is not The Next Big Thing.

It is a simple software design technique for arranging the classes of an object-oriented system so that the system's flexibility may be increased.

This technique is nothing but the application two, uncomplicated principles:

  1. Program to an interface repository, not an implementation repository.
  2. Eliminate descendant dependencies.

By applying these principles first to the smallest code modules, and then to larger and larger groupings, you will project the flexibility of the smaller modules onto larger and larger scales, until your entire system eventually reflects this flexibility.

No one, however, wants to manually check code for adherence to design principles, no matter what benefits they might bring, so the Fractal Class Composition was designed to be machine-verifiable.

To this end a free, static code analyser called EdmundKirwan Factality can be downloaded which will graphically display the degree to which your Java software accords with these principles. See figure A, below, for a sample output.

[Figure A Fractality's view of itself.]

Figure A - Fractality's view of itself.

Please click, "Next," below to move to the next page.

Download Fractality analysis tool | Next | Contents | Case study | Home

Copyright (C) Edmund Kirwan 2004 - 2006. All rights reserved.