Web Log di Adrian Florea

"You know you've achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away." Antoine de Saint-Exupery
posts - 440, comments - 2715, trackbacks - 3944

My Links

Archives

Post Categories

Image Galleries

.RO Blogs

.RO People

.RO Sites

Blogs

Furls

Links

vinCitori

martedì 4 marzo 2008

Un DSL per i mapping O/R?

Guardando in questi giorni Hibernate Tools, mi e' piaciuta molto l'idea che sta alla base della la sua architettura: il mapping viene rappresentato da un'istanza del metamodello di Hibernate (classe org.hibernate.cfg.Configuration o derivate, equivalente di NHibernate.Cfg.Configuration) e da questo modello vengono generati i vari artefatti tramite cosiddetti exporter (per esempio hbm2java, hbm2ddl, hbm2hbmxml, etc), che non sono altro che classi che derivano da org.hibernate.tool.hbm2x.GenericExporter e che, insieme a dei template FreeMarker, definiscono in modo straordinariamente flessibile la parte di generazione codice/artefatti. Quindi, al posto della POJOExporter potremmo avere, perche' no, anche una POCOExporter per il domain model C#. Sarebbe interessante replicare in NHibernate un'infrastruttura simile, soprattutto adesso quando la parte di generazione codice via template T4 si trova gia' inclusa in VS2008. E poi, se tutto questo viene generato da un'istanza di Configuration, ci vuole solo un passo per creare un DSL grafico (con l'immenso aiuto di DSL Tools) che rappresenti il mapping (N)Hibernate. E un po' quello che hanno fatto in Java con, per esempio, Exadel Studio Pro, diventato adesso parte di Jboss Developer Studio. Ma poi, i concetti di mapping sono quasi independenti dagli engine e quindi, perche' non pensare a un tool visuale capace di risolvere la parte mapping per piu' ORM?

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (111) | Filed Under [ VSX ]

Powered by:
Powered By Subtext Powered By ASP.NET