When you are satis?¬?ed that your generator works on the sample model,
even when that is lightly modi?¬?ed, you are ready for the next step.
Building one application was never the plan, so go on and build a second, but keep
the ?¬?rst application intact. Make the model for the second application similar to the
?¬?rst, varying by about the same amount as your boldest modi?¬?cations did. Make sure
that you can generate both applications and that both work. This may also be a good
time to think about the modeling language and how you are going to enable reuse
between models??”a subject we cover in Chapter 15.
Working like this, you will soon have a fully functional generator. As you hit
problems, use your ingenuity to ?¬?nd a way to solve them, remembering that there are
several areas you can change: the models, the modeling language, the generator, the
generated code, or the domain framework. One of these will almost always offer a
good solution??”if you are spoiled for choice, the later areas such as the domain
framework are often the better places.
Later, when developers are using your modeling language and you want to enhance
it or the generators, the same tactics still apply. You ?¬?rst need to know what
information you want to capture and what is a sensible format for the modeler to input
that and use it in models.
Pages:
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572