E' appena uscito SP1 per il Framework 3.5 e per Visual Studio 2008
e con esso possiamo giovare di tutte le novità da esso derivanti.
Mi trovo però a questo punto a dover scegliere quale tecnologia di accesso ai dati adottare nel lungo periodo per le mie nuove applicazioni.
Lo sviluppo di applicazioni sta sempre più spostandosi da un modello data-centrico ad un modello basato sul dominio.
E con questo si parla sempre di più di Persistance Ignorance (PI) e POCO, ovvero la necessità di avere uno strato di Business semplice,
non vincolato a come i dati verranno rappresentati, e che quindi deve preoccuparsi di implementare tutta una serie di meccanismi per tenere "viva" la UI.
e non vincolato a come i dati verranno memorizzati nel Database.
Questi due semplici e chiarissimi concetti architetturali, portano con se una grande quantità di problematiche la cui soluzione non è affatto banale.
dovendo soprattuto rispondere alla mia damanda: Quale tecnologia utilizzare ?
Mi piace lavorare con prodotti Microsoft, e trovo le ultime tecnologie introdotte con il nuovo framework siano veramente eccezionali.
Mi piace anche moltissimo lavorare con SQL Server, ma i miei clienti a volte non vogliono utilizzare SQL Server, dovendo scrivere applicazioni complesse mi trovo a tagliare fuori tutta una fetta di potenziali clienti
se scegliessi di lavorare solo con SQL Server.
quindi Linq To Sql non è la soluzione adatta.
Diciamo che i Dataset non sono la mia passione e quindi come scelte rimangono:
1) Il nuovissimo Entity Framework.
2) NHibernate
3) Il mio collaudato, fatto in casa, estensibile a piacere (l'ho scritto io e ne conosco ogni meandro) ORM
4) Altri ORM
Vi confesso che l'idea di utilizzare Entity Framework mi alletta non poco.
E sicuramente NHibernate è un prodotto niente male,
D'altro canto anche estendere il mio ORM per inserire qualche nuova funzionalità mi alletta parecchio.
Io ho gia fatto la mia scelta.
Voi che fareste ?