Un’altro tassello da Microsoft – "ADO.NET Entity Framework"

Tra le novità attese con il rilascio del SP 1 di .net framework 3.5 e il SP 1 di Visual Studio 2008, particolare attenzione stà riscuotendo, nella comunità di sviluppatori, ADO.NET Entity Framework.

Riportare l’ennesima definizione di cosa sia e cosa faccia il framework mi sembra poco interessante, ritengo invece utile menzionare l’introduzione che trovate sul sito di MSN all’ indirizzo http://msdn.microsoft.com/en-us/library/bb399567.aspx.

The Entity Framework is a set of technologies in ADO.NET that support development of data-oriented software applications. Architects and developers of data-oriented applications have struggled with the need to achieve two very different objectives. They must model the entities, relationships, and logic of the business problems they are solving, and they must also work with the data engines used to store and retrieve the data. The data may span multiple storage systems, each with its own protocols; even applications that work with a single storage system must balance the requirements of the storage system against the requirements of writing efficient and maintainable application code.

The Entity Framework enables developers to work with data in the form of domain-specific objects and properties, such as customers and customer addresses, without having to concern themselves with the underlying database tables and columns where this data is stored. This is enabled by elevating the level of abstraction at which developers can work when they deal with data and reducing the code that is required to create and maintain data-oriented applications. Because the Entity Framework is a component of the .NET Framework, Entity Framework applications can run on any computer on which the .NET Framework 3.5 Service Pack 1 (SP1) is installed.

Sicuramente penserete che si tratti dell’ ennesimo ORM (Object-relational mapping) e che come al solito Microsoft arriva in ritardo e cerca di copiare cose che già altri framework fanno, ed invece non è così, o  meglio, ci sono tutti i presupposti perchè non sia così!

Marco Russo all’ indirizzo scrive:

Personalmente, pur non essendo un forte sostenitore di questa tecnologia, credo di comprendere quale sia il problema di fondo. Alcuni (ma forse molti) considerano ADO.NET Entity Framework come un tool di ORM da comparare con tool simili, come NHibernate. Per Microsoft, non è solo questo. Uno dei punti chiave nella visione di Microsoft è che Entity Framework sia un layer di astrazione sul modello dei dati utilizzabile non solo da programmi scritti in C#/VB/ecc., ma anche da tool di reportistica che rappresentano il modello di entità direttamente all’utente finale che vuole realizzare i suoi report. Io non sono così convinto che sia possibile avere un approccio simile nel 100% dei casi, ma devo ammettere che in molte situazioni questa possibilità è adeguata alle esigenze. Nutro forti dubbi sul fatto che possano amalgamare anche i modelli multidimensionali all’interno di Entity Framework (è una cosa che hanno annunciato di voler fare, anche se a oggi non c’è alcuna traccia di feature che vadano in questa direzione) e il rischio latente è che questa visione “universale” porti a fare scelte nell’adozione di questa tecnologia basate sull’attesa di funzionalità future, che chissà se e quando arriveranno.

Tralasciando tutto il contorno relativo alle personali considerazione dell’autore, nel post si legge che per Microsoft il fututro utilizzo di ADO.NET Entity Framework, non sarà solo da programmi scritti in C#, VB, etc., ma anche da strumenti di reportistica. Se questa ipotesi troverà reale applicazione, si tratta dell’ulteriore tassello che si và ad aggiungere agli altri che la casa di Redmond ha già rilasciato e che ci dovrebbero dare l’idea dello scenario che si prospetta per il futuro dello sviluppo di applicazioni.

E’ mia personale valutazione ritenere che il rilascio di ADO.NET Entity framework rientri in una nuova e più ampia politica che Microsoft stà attuando relativamente allo sviluppo di nuove applicazioni. Se consideriamo, infatti, la spiccata propensione all’ integrazione con dati XML del formato “Office Open XML File Formats” di Office 2007, possiamo immaginare che in un futuro prossimo l’ inserimento e la gestione dei dati sarà demandata ad applicativi come Word, Excel, Infopath e Access, attraverso i web service, l’ elaborazione sarà di competenze dell’ Entity Framewrok e all’ utilizzo di LINQ ed infine la memorizzazione dal DBMS. Se consideriamo inoltre, che è già consuetudine utilizzare Excel come “On-Line Analytical Processing” (OLAP) e Infopath per l’inserimento dei dati, il salto verso questa nuova concezione di sviluppo è da considerarsi già partito.

non ci sono commenti

Rispondi

Occorre aver fatto il login per inviare un commento