Sono curioso di sapere perché una persona del database dovrebbe imparare LINQ. Come può essere utile.Perché uno sviluppatore del database utilizza LINQ
risposta
LINQ ha un grande vantaggio rispetto la maggior parte degli altri metodi di accesso ai dati: essa ruota attorno alla 'interrogazione espressione 'metafora, il che significa che le query possono essere passate come oggetti e modificate e modificate, tutte prima di vengono eseguite (iterate). In pratica, ciò significa che il codice può essere modulare e meglio isolato. Il repository di accesso ai dati restituirà la query "orders", quindi un filtro intermedio nella pipeline di elaborazione delle richieste decorerà questa query con un filtro, quindi verrà passato a un modulo di visualizzazione che aggiunge ordinamento e impaginazione, ecc. Alla fine, quando la sua iterazione, l'espressione si è totalmente trasformata in molto specifica SELECT ... WHERE ... ORDER BY ... LIMIT ...
(o l'altra impaginazione specifica del back-end come ROW_NUMBER). Per gli sviluppatori di applicazioni, questo è inestimabile e semplicemente non esiste un'alternativa praticabile. Questo è il motivo per cui credo che LINQ sia qui per rimanere e non scomparirà tra 2 anni. È decisamente più di una moda passeggera. E mi riferisco specificamente a LINQ come metodo di accesso al database.
Il vantaggio di manipolare da solo gli oggetti espressione di query è un fattore sufficiente per rendere LINQ un'offerta vincente. Aggiungete a questo i molteplici tipi di contenitori che può manipolare (XML, array e collezioni, oggetti, SQL) e l'interfaccia uniforme che espone su tutte queste tecnologie disparate, considerate le modifiche di elaborazione parallela in arrivo. Net 4.0 che sono sicuro sarà integrato in modo trasparente nell'elaborazione LINQ di array e raccolte, ed è davvero impossibile che LINQ sparisca. Certo, oggi a volte produce SQL illeggibili, scarsamente performanti e non discutibili, ed è ogni incubo DBA dedicato. Andrà meglio.
Linq fornisce accesso "di prima classe" ai dati. Significa che le tue domande fanno ora parte del linguaggio di programmazione.
Linq fornisce un modo comune per accedere agli oggetti dati di tutti i tipi. Ad esempio, la stessa sintassi utilizzata per accedere alle query del database può anche essere utilizzata per accedere a elenchi, matrici e file XML.
L'apprendimento di Linq fornisce una comprensione più approfondita del linguaggio di programmazione. Linq era il driver per tutti i tipi di innovazioni linguistiche, come i metodi di estensione, i tipi anonimi, le espressioni lambda, gli alberi di espressione, l'inferenza di tipo e gli inizializzatori di oggetti.
Mi piace il secondo motivo migliore. – JohnB
Questa è una domanda reale? Non si può rispondere con uno snippet di codice. La maggior parte di queste domande sul tipo di discussione vengono chiuse rapidamente.
... probabilmente meglio espresso come commento. –
@Robert Harvey, sì probabilmente è meglio essere un commento, ma il contenuto è true –
Penso che una domanda migliore è perché si dovrebbe sostituire SQL con LINQ quando si esegue una query su un database?
intellisense sicuro per il tipo in Visual Studio, invece di passare i tuoi grossi blob di testo (query SQL) senza alcun tipo di controllo e nessuna sicurezza (colpi solo in fase di esecuzione in produzione .....) –
@mark_s: sebbene ci siano altri modi per farlo. Set di dati fortemente tipizzati per esempio. –
Linq è il metodo preferito per accedere ai dati tramite un ORM come Linq a SQL o Entity Framework. –
"Conosci il tuo nemico"?
OTOH, fuori interesse. Sto imparando di più su XMl, XSLT, XSD ecc. Perché posso vederne un uso come sviluppatore di database.
Credo che uno dei tanti motivi per cui si potrebbe prendere in considerazione LINQ perché LINQ è grande spinta della produttività e il tempo enorme risparmio di
Questa domanda richiede anche di chiedere, se LINQ diventa immensamente popolare, gli sviluppatori lato server sapranno SQL e hanno fatto i loro predecessori?
Quanto conosci l'assemblaggio? –
- 1. Essere uno sviluppatore pigro o non essere uno sviluppatore pigro?
- 2. Learning Python per uno sviluppatore .NET
- 3. Database DB2 nello sviluppatore Oracle Oracle
- 4. Numero intero che utilizza Linq
- 5. Perché utilizzare Dart come sviluppatore front-end?
- 6. Perché uno sviluppatore dovrebbe posizionare una barra in avanti all'inizio di ogni percorso relativo?
- 7. Suggerimenti per uno sviluppatore iOS per imparare la programmazione Mac?
- 8. Do unione che utilizza LINQ to SQL
- 9. Perché tutti i database hanno uno schema pubblico in PostgreSQL?
- 10. Qual è il profilo di uno sviluppatore di SharePoint
- 11. Progetto Django che utilizza impostazioni del database errate (vecchie)
- 12. Impostare dinamicamente il nome del database in LINQ su SQL
- 13. Perché lo schema del database di Wordpress non utilizza chiavi esterne?
- 14. Come determinare il contributo totale di uno sviluppatore a SubVersion?
- 15. Come può un amministratore aggiungere uno sviluppatore a un'app
- 16. Come può uno sviluppatore conoscere il web design?
- 17. In che modo Lisp può diventare uno sviluppatore C# migliore?
- 18. Sapere C e/o C++ mi rende uno sviluppatore migliore?
- 19. Limitazioni in Mono per uno sviluppatore di framework .Net
- 20. Rapido passaggio a Java per uno sviluppatore C++ esperto
- 21. Può aiutare uno sviluppatore solitario che codifica come hobby?
- 22. Perché viene utilizzata la vista del database?
- 23. Database Wiki, ce n'è uno?
- 24. come controllare il nome del database che ActiveRecord utilizza
- 25. Esiste uno strumento per verificare l'integrità del database in Django?
- 26. Come creare uno stack del database Monad in Happstack?
- 27. Buon framework per uno sviluppatore C# da utilizzare per uno strato di presentazione visivamente stupefacente
- 28. Come posso risolvere Meno uno da uno sviluppatore di Oracle chiamato sql chiamata?
- 29. Come installare eclipse per sviluppatore java, sviluppatore c/C++, sviluppatore php allo stesso tempo?
- 30. Utilizzando LINQ trovare luoghi vicini dal database
Stai chiedendo se un DBA dovrebbe imparare LINQ? Oppure questa persona del database è anche uno sviluppatore? – Kinze