10 messaggi dal 31 luglio 2004
Fra le altra cose, nonostante stia lavorando da più di due mesi su un progetto reale con Entity Framework, questa mancanza, ovvero quella che non permette il confronto fra oggetti complessi, è una di quelle che mi ha lasciato allibito e che mi sta facendo pensare che Entity Framework sia stato pensato male, molto male.
Senza ovviamente tralasciare l'inesistenza della Persistence Ingorance, la totale mancanza di Lazy Load (e no, quello che il team di EF chiama lazy Load _non_ è Lazy Load, sarebbe bastato che leggessero la definizione di tale pattern) e l'impossibilità di mappare alcuni scenari di ereditarietà).
Ovviamente non sto dicendo che non sia produttivo lavorare con EF, tanto che lo sto facendo con profitto, sto semplicemente dicendo che chi ha lavorato sul progetto della versione 1 (l'attuale), non aveva la benchè minima idea di cosa sia un ORM.

saluti
Roberto
Modificato da robymes il 31 agosto 2008 08.57 -
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
robymes ha scritto:
Fra le altra cose, nonostante stia lavorando da più di due mesi su un progetto reale con Entity Framework, questa mancanza, ovvero quella che non permette il confronto fra oggetti complessi, è una di quelle che mi ha lasciato allibito e che mi sta facendo pensare che Entity Framework sia stato pensato male, molto male.
Senza ovviamente tralasciare l'inesistenza della Persistence Ingorance, la totale mancanza di Lazy Load (e no, quello che il team di EF chiama lazy Load _non_ è Lazy Load, sarebbe bastato che leggessero la definizione di tale pattern) e l'impossibilità di mappare alcuni scenari di ereditarietà).
Ovviamente non sto dicendo che non sia produttivo lavorare con EF, tanto che lo sto facendo con profitto, sto semplicemente dicendo che chi ha lavorato sul progetto della versione 1 (l'attuale), non aveva la benchè minima idea di cosa sia un ORM.

Ti do pienamente ragione a riguardo del confronto di oggetti complessi e su alcune implementazioni architetturali. Il "Lazy Loading", di cui ho scritto in modo errato in un mio blog precedente, ha una tutta sua implementazione con un giro di codice che poteva essere implementato in modo molto più semplice (il modo attuale di prendere una entity con il controllo sull'IsLoaded comunque per me funziona a dovere anche se ti obbliga a giri strani).

Ma per me, è il punto di vista da cui si guarda l'EF che è sbagliato. Lo si definisce come un vero e proprio ORM quando in definitiva non lo è (il confronto con Nhibernate è improponibile). Invece dovrebbe essere visto come un Linq to Sql evoluto, con i primi approcci verso il mondo degli ORM.

A me piace l'EF perché, come fai notare anche tu, rende veramente produttivi e, secondo ancora il mio punto di vista, è un buon inizio ed ho molta fiducia nella prossima versione.

saluti
Roberto

Ciao e grazie per il commento!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.