MENU

  /   Overhead

Geeft MetaFactory veel overhead?

Dat lijkt misschien zo bij een HelloWorld voorbeeld. Een helloworld voorbeeld kan je natuurlijk beter direct in java typen dan via een pattern. Het wordt echter anders als je de patronen in software gaat beschrijven in het pattern.

Stel je kijkt eens naar de pojo’s van je applicatie die een afspiegeling zijn van de database structuur. Waarschijnlijk is er voor elke entiteit in de applicatie of table in de database een pojo in java waarin 1 record kan worden opgeslagen. Als je van al die pojo’s nu 1 pattern maakt, dan kan je met dit pattern en een model beschrijving in 1 x al je pojo’s laten maken door MetaFactory.

Dit zelfde principe geldt voor de dao’s in je applicatie, de controllers, de zoek schermen, de edit schermen en meer aspecten van je applicatie. Je gaat van direct programmeren in java naar meta programmeren in xml. Dat doe je pas nadat je iets 1x in java hebt gedaan. Je schrijft eerst dus iets in java met alle vertrouwde hulpmiddelen (IDE, java editor, code completion, syntax highlighting enz.) en maakt daarna op basis van 1 java class een pattern om dit type class generiek te beschrijven in xml op metaniveau.

Overigens wordt niet alleen xml gebruikt, maar wordt ook veel gebruik gemaakt van de  template engine Freemarker. De structuur van een class wordt dan in xml vastgelegd, maar de echte java code die bij een methode hoort wordt in een Freemarker template gemaakt. Zo voorkom je dus dat je in xml java moet gaan programmeren. Binnen de Freemarker template gebruik je de beschijving van de datastructuur, zodat de juiste java code gecreëerd kan worden. Dit is het best te begrijpen aan de hand van een voorbeeld of een demo.