Have any of you come across a frame work that you impose on programmers that mandates the use of patterns in a sensible scheme.
- Posted by: Paul Brennan
- Posted on: November 10 2003 10:55 EST
We have many different programming teams working on different projects; some of the teams much more experienced in object oriented programming than others. I would like to provide a set of classes and interfaces that makes using the patterns mandatory rather then something nice. A frame work to make sure that we set out a layer of patterns and then get people to follow the rules rather than have to police the code by hand.
Has anyone else seen the need for this or implemented this sort of frame work?
in my opinion, implementation standards can only be achieved when enforced by a code generation/MDA tool. If you're talking about J2EE applications, you can try AndroMDA:
AndroMDA has a pragmatic but flexible approach to application code generation. It will generate all the boilerplate code so your team will have to write the business logic only. You can always modify AndroMDA code generation templates to suit your particular needs.
Hope this helps,
Have you or others had any experiance with this tool?
no, I haven't used AndroMDA, but I've been studying the documentation available at the site. I've also exchanged some ideas with Matthias Bohlen, the engineer who started up the AndroMDA project.
What I like most about AndroMDA is its simplicity and pragmatism. It works on top of XDoclet. It goes beyond XDoclet, though, because it lets you generate code from a stereotyped UML class diagram. Please notice that it won't attempt to generate custom code from activity or state transition diagrams: it will generate the code structure only and your developers will "fill in the blanks".
So everybody's life gets easier: the team leader can now better control design and coding standards, and the development team won't need to write boilerplate code anymore. Does this comes for a price? Yes, sure: developers will have to learn how to build class diagrams with a well-defined meaning :-).