BlueJ 4
BlueJ 4 has recently been released, and I am testing PatternCoder to check compatibility with the new version. The extensions interface appears to be unchanged in the new BlueJ so I expect it to work OK, although PatternCoder won't have the nice new JavaFX look and feel that BlueJ now has (unless someone wants to update it, I'm afraid I don't have the time to do this at the moment). Please get in touch to let me know if you have any problems.




patternCoder is a software tool which has been developed to support learning of design patterns and class relationships, and their implementation in Java programs. It supports the transition from the UML class diagram to a working code implementation. It works as an extension to the BlueJ IDE, on Windows, Mac OS X and Linux.

How does it work?

The tool guides students through a step-by-step process in which they select a suitable pattern or class relationship (as shown in the screenshot below) and replace generic class names with names which are relevant to their project domain. patternCoder then generates Java classes in the project - these classes will compile 'out-of-the-box' and will correctly implement the relationships. The student can then explore the generated classes to understand their behaviour, and then add the necessary code to meet the specific requirements of their project.

patternCoder pattern selection step