New book
PatternCoder is featured in an excellent new German langauge book, Einführung in Java mit BlueJ by Florian Siebler. See the book website for details.

ACM TOCE paper
A paper on patternCoder has been published in ACM Transactions on Computing Education. This is an extended version of the paper presented at Koli Calling in 2008. See resources for details.

Koli Calling Education Tool Award
The patternCoder team received the Educational Tool award at the Koli Calling International Conference on Computing Education Research, which took place in Koli National Park, Finland, 13-16 November 2008.



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