<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>VSX</title>
        <link>http://blogs.ugidotnet.org/Adrian/category/VSX.aspx</link>
        <description>VSX</description>
        <language>it-IT</language>
        <copyright>Adrian Florea</copyright>
        <generator>Subtext Version 2.6.0.0</generator>
        <item>
            <title>3rd Italian MDA Forum</title>
            <link>http://blogs.ugidotnet.org/Adrian/archive/2008/11/21/3rd-italian-mda-forum.aspx</link>
            <description>&lt;p&gt;Salire sul &lt;a href="http://mdaforum.soluta.net/agenda.aspx"&gt;palco&lt;/a&gt; a parlare di DSL Tools subito dopo &lt;a href="http://www.omg.org/~soley/"&gt;Richard Mark Soley&lt;/a&gt;, &lt;a href="http://www.stephenmellor.com/"&gt;Stephen J. Mellor&lt;/a&gt; e &lt;a href="http://www.cutter.com/meet-our-experts/rosenm.html"&gt;Michael Rosen&lt;/a&gt;, giuro che non e' stato facile :) Ottima l'organizzazione dell'evento, nel cinquecentesco &lt;a href="http://www.hotelpalazzostelline.it/"&gt;Palazzo delle Stelline&lt;/a&gt;, tante discussioni interessantissime sull'MDA, modellizzazione e generazione di codice. Giornata davvero speciale!&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/Adrian/aggbug/94728.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Adrian Florea</dc:creator>
            <guid>http://blogs.ugidotnet.org/Adrian/archive/2008/11/21/3rd-italian-mda-forum.aspx</guid>
            <pubDate>Fri, 21 Nov 2008 11:15:24 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/Adrian/archive/2008/11/21/3rd-italian-mda-forum.aspx#feedback</comments>
            <slash:comments>411</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/Adrian/comments/commentRss/94728.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/Adrian/services/trackbacks/94728.aspx</trackback:ping>
        </item>
        <item>
            <title>Axioms for software architects by software architects</title>
            <link>http://blogs.ugidotnet.org/Adrian/archive/2008/09/08/axioms-for-software-architects-by-software-architects.aspx</link>
            <description>&lt;p&gt;Via &lt;a href="http://memeagora.blogspot.com/2008/08/97-things-every-software-architect.html"&gt;questo post&lt;/a&gt; di Neal Ford sono arrivato a questo saggissimo wiki: &lt;a href="http://97-things.near-time.net/"&gt;97 Things Every Software Architect Should Know&lt;/a&gt;. Assolutamente da non perdere! Tre dei principi li ho gia' aggiunti alla mia &lt;a href="http://blogs.ugidotnet.org/adrian/archive/2006/03/03/36066.aspx"&gt;collezione sulla semplicita'&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;[OT]: Venerdi' organizziamo il &lt;a href="http://ronua.ro/CS/forums/thread/206385.aspx"&gt;secondo workshop&lt;/a&gt; dello user group locale, RONUA Galati, con due presentazioni sullo stesso difficile tema: un'introduzione a DSL Tools e un'altra a VSX. &lt;a href="http://ronua.ro/CS/photos/23_mai_2008_--_galati_ronua_roadshow_2008/default.aspx"&gt;Guardate&lt;/a&gt; quanta gente e' venuta al primo workshop, tenuto a maggio! Incredibile... Poi sono stato invitato a partecipare questo weekend insieme a tutti gli MVP e Microsoft Influencer rumeni alla quinta edizione di Microsoft Community Bootcamp, organizzata da Microsoft Romania in montagna, ottima opportunita' di conoscerci tutti insieme! Presto mettero' da qualche parte le slide e il codice del workshop e vi aggiornero' su come e' andata al bootcamp - scusate la parte off-topic del post...&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/Adrian/aggbug/93965.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Adrian Florea</dc:creator>
            <guid>http://blogs.ugidotnet.org/Adrian/archive/2008/09/08/axioms-for-software-architects-by-software-architects.aspx</guid>
            <pubDate>Mon, 08 Sep 2008 05:05:17 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/Adrian/archive/2008/09/08/axioms-for-software-architects-by-software-architects.aspx#feedback</comments>
            <slash:comments>27</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/Adrian/comments/commentRss/93965.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/Adrian/services/trackbacks/93965.aspx</trackback:ping>
        </item>
        <item>
            <title>Un'API generico a provider per i metadata dei vari ORM</title>
            <link>http://blogs.ugidotnet.org/Adrian/archive/2008/05/03/unapi-generico-a-provider-per-i-metadata-dei-vari-orm.aspx</link>
            <description>&lt;p&gt;Via &lt;a href="http://weblogs.asp.net/fbouma/archive/2008/05/01/dynamic-data-and-3rd-party-o-r-mappers-is-a-fact.aspx"&gt;questo post&lt;/a&gt; di &lt;a href="http://weblogs.asp.net/fbouma/"&gt;Frans Bouma&lt;/a&gt; ho scoperto sotto il namespace &lt;strong&gt;System.Web.DynamicData.ModelProviders&lt;/strong&gt; dell'assembly &lt;strong&gt;System.Web.DynamicData.dll&lt;/strong&gt; che arriva con l'ultima release della preview di &lt;a href="http://code.msdn.microsoft.com/dynamicdata"&gt;ASP.NET Dynamic Data&lt;/a&gt;, un'API generico composto da 4 provider per i metadata dei vari ORM (non solo Microsoft): &lt;strong&gt;DataModelProvider&lt;/strong&gt;, &lt;strong&gt;TableProvider&lt;/strong&gt;, &lt;strong&gt;ColumnProvider&lt;/strong&gt; ed &lt;strong&gt;AssociationProvider&lt;/strong&gt;. Questo unifica in buona misura le varie API che espongono i metadata degli ORM, per esempio &lt;strong&gt;MetaTable&lt;/strong&gt;, &lt;strong&gt;MetaDataMember&lt;/strong&gt;, &lt;strong&gt;MetaAssociation&lt;/strong&gt; nel caso di LINQ to SQL, oppure quella piu' complessa dell'Entity Framework: &lt;strong&gt;EntitySet&lt;/strong&gt;, &lt;strong&gt;EdmMember&lt;/strong&gt;, &lt;strong&gt;NavigationProperty&lt;/strong&gt;, etc. Frans ha gia' scritto un &lt;em&gt;model provider&lt;/em&gt; per il suo &lt;a href="http://www.llblgen.com/"&gt;LLBLGen Pro&lt;/a&gt;, sarebbe bellissimo averne uno anche per &lt;a href="http://www.nhibernate.org/"&gt;NHibernate&lt;/a&gt;. E poi mi piacerebbe in futuro vedere questa API staccata dal ASP.NET Dynamics Data con cui non dovrebbe avere tanto in comune.&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/Adrian/aggbug/92497.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Adrian Florea</dc:creator>
            <guid>http://blogs.ugidotnet.org/Adrian/archive/2008/05/03/unapi-generico-a-provider-per-i-metadata-dei-vari-orm.aspx</guid>
            <pubDate>Sat, 03 May 2008 02:53:11 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/Adrian/archive/2008/05/03/unapi-generico-a-provider-per-i-metadata-dei-vari-orm.aspx#feedback</comments>
            <slash:comments>104</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/Adrian/comments/commentRss/92497.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/Adrian/services/trackbacks/92497.aspx</trackback:ping>
        </item>
        <item>
            <title>Un DSL per i mapping O/R?</title>
            <link>http://blogs.ugidotnet.org/Adrian/archive/2008/03/04/91491.aspx</link>
            <description>Guardando in questi giorni &lt;a href="http://tools.hibernate.org/"&gt;Hibernate Tools&lt;/a&gt;, mi e' piaciuta molto l'idea che sta alla base della la sua architettura: il mapping viene rappresentato da un'istanza del &lt;em&gt;metamodello&lt;/em&gt; di Hibernate (classe &lt;strong&gt;org.hibernate.cfg.Configuration&lt;/strong&gt; o derivate, equivalente di &lt;strong&gt;NHibernate.Cfg.Configuration&lt;/strong&gt;) e da questo &lt;em&gt;modello&lt;/em&gt; vengono generati i vari artefatti tramite cosiddetti &lt;em&gt;exporter&lt;/em&gt; (per esempio &lt;strong&gt;hbm2java&lt;/strong&gt;, &lt;strong&gt;hbm2ddl&lt;/strong&gt;, &lt;strong&gt;hbm2hbmxml&lt;/strong&gt;, etc), che non sono altro che classi che derivano da &lt;strong&gt;org.hibernate.tool.hbm2x.GenericExporter&lt;/strong&gt; e che, insieme a dei template FreeMarker, definiscono in modo straordinariamente flessibile la parte di generazione codice/artefatti. Quindi, al posto della &lt;strong&gt;PO&lt;font color="#ff0000"&gt;J&lt;/font&gt;OExporter&lt;/strong&gt; potremmo avere, perche' no, anche una &lt;strong&gt;PO&lt;font color="#ff0000"&gt;C&lt;/font&gt;OExporter&lt;/strong&gt; per il domain model C#. Sarebbe interessante replicare in NHibernate un'infrastruttura simile, soprattutto adesso quando &lt;a href="http://blogs.msdn.com/garethj/archive/2008/01/31/fun-use-of-t4-to-generate-strongly-typed-web-navigation.aspx"&gt;la parte di generazione codice via template T4 si trova gia' inclusa in VS2008&lt;/a&gt;. E poi, se tutto questo viene generato da un'istanza di &lt;strong&gt;Configuration&lt;/strong&gt;, ci vuole solo un passo per creare un DSL grafico (con l'immenso aiuto di &lt;a href="http://msdn2.microsoft.com/en-us/library/bb126235.aspx"&gt;DSL Tools&lt;/a&gt;) che rappresenti il mapping (N)Hibernate. E un po' quello che hanno fatto in Java con, per esempio, &lt;a href="http://www.exadel.com/exadelstudio/help/#orm2"&gt;Exadel Studio Pro&lt;/a&gt;, diventato adesso parte di &lt;a href="http://www.jboss.com/products/devstudio"&gt;Jboss Developer Studio&lt;/a&gt;. 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?&lt;img src="http://blogs.ugidotnet.org/Adrian/aggbug/91491.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Adrian Florea</dc:creator>
            <guid>http://blogs.ugidotnet.org/Adrian/archive/2008/03/04/91491.aspx</guid>
            <pubDate>Tue, 04 Mar 2008 00:50:22 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/Adrian/archive/2008/03/04/91491.aspx#feedback</comments>
            <slash:comments>111</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/Adrian/comments/commentRss/91491.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/Adrian/services/trackbacks/91491.aspx</trackback:ping>
        </item>
        <item>
            <title>L'OR Designer e' stato scritto con DSL Tools</title>
            <link>http://blogs.ugidotnet.org/Adrian/archive/2008/01/21/90790.aspx</link>
            <description>Lo sapevate che l'Object Relational Designer e la parte di generazione di codice per le classi LINQ to SQL in VS2008 sono state scritte utilizzando &lt;a href="http://www.microsoft.com/vstudio/dsltools"&gt;Microsoft DSL Tools&lt;/a&gt; che fa parte di &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=51A5C65B-C020-4E08-8AC0-3EB9C06996F4&amp;amp;displaylang=en"&gt;VS SDK&lt;/a&gt;? - l'ho scoperto tramite il Reflector mentre &lt;a href="http://www.domainspecificdevelopment.com/"&gt;studiavo&lt;/a&gt; l'API di questo potentissimo framework che e' DSL Tools: tra le classi che derivano da &lt;strong&gt;Microsoft.VisualStudio.Modeling.ModelElement&lt;/strong&gt;, classe fondamentale per la rappresentazione degli elementi di un domain model, si trovano anche le classi internal dell'OR Designer. Questo dovrebbe dare piu' fiduccia a chi inizia o valuta di &lt;a href="http://msdn.com/vsx"&gt;estendere Visual Studio&lt;/a&gt; per un certo DSL utilizzando DSL Tools! - parti complesse del VS stesso iniziano ad essere sviluppate con questo framework.&lt;img src="http://blogs.ugidotnet.org/Adrian/aggbug/90790.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Adrian Florea</dc:creator>
            <guid>http://blogs.ugidotnet.org/Adrian/archive/2008/01/21/90790.aspx</guid>
            <pubDate>Mon, 21 Jan 2008 03:29:06 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/Adrian/archive/2008/01/21/90790.aspx#feedback</comments>
            <slash:comments>225</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/Adrian/comments/commentRss/90790.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/Adrian/services/trackbacks/90790.aspx</trackback:ping>
        </item>
    </channel>
</rss>