? Tengo curiosidad por saber por qué una persona de la base de datos debe aprender LINQ. ¿Cómo puede ser útil?¿Por qué un desarrollador de bases de datos usaría LINQ
Respuesta
LINQ tiene una gran ventaja sobre la mayoría de los otros métodos de acceso de datos: se centra alrededor de la 'consulta expresión 'metáfora, lo que significa que las consultas se pueden pasar como objetos y modificarse y modificarse, todas antes de se ejecutan (iteran). En la práctica, eso significa que el código puede ser modular y estar mejor aislado. El repositorio de acceso a datos devolverá la consulta de 'pedidos', luego un filtro intermedio en el canal de procesamiento de solicitudes decorará esta consulta con un filtro, luego pasará a un módulo de visualización que agrega clasificación y paginación, etc. Al final, cuando es iterado, la expresión se ha transformado totalmente en SELECT ... WHERE ... ORDER BY ... LIMIT ...
muy específico (o en la otra paginación específica de back-end como ROW_NUMBER). Para los desarrolladores de aplicaciones, esto no tiene precio y simplemente no hay ninguna alternativa viable. Es por eso que creo que LINQ llegó para quedarse y no se desvanecerá en 2 años. Definitivamente es más que solo una moda. Y me refiero específicamente a LINQ como método de acceso a la base de datos.
La ventaja de manipular solo objetos de expresiones de consulta es un factor suficiente para hacer de LINQ una oferta ganadora. Agregue a esto los múltiples tipos de contenedores que puede manipular (XML, matrices y colecciones, objetos, SQL) y la interfaz uniforme que expone sobre todas estas tecnologías dispares, considere los cambios de procesamiento paralelos en .NET 4.0 que estoy seguro será integrado de forma transparente en el procesamiento LINQ de matrices y colecciones, y realmente no es una forma de que LINQ desaparezca. Claro, hoy en día, a veces produce SQL ilegible, mal ejecutable e indebuggable, y cada pesadilla de DBA dedicada. Se pondrá mejor.
Linq proporciona acceso de "primera clase" a sus datos. Lo que significa que sus consultas ahora son parte del lenguaje de programación.
Linq proporciona una forma común de acceder a objetos de datos de todo tipo. Por ejemplo, la misma sintaxis que se usa para acceder a las consultas de su base de datos también se puede usar para acceder a listas, matrices y archivos XML.
Learning Linq le proporcionará una comprensión más profunda del lenguaje de programación. Linq fue el impulsor de todo tipo de innovaciones lingüísticas, como métodos de extensión, tipos anónimos, expresiones lambda, árboles de expresiones, inferencias de tipos e inicializadores de objetos.
Me gusta la segunda razón mejor. – JohnB
¿Es esta una verdadera pregunta? No se puede responder con un fragmento de código. La mayoría de estas preguntas de tipo de debate se cierran rápidamente.
... probablemente mejor expresada como comentario. –
@Robert Harvey, sí, probablemente sea mejor ser un comentario, pero el contenido es verdadero –
Creo que una mejor pregunta es por qué uno reemplazaría SQL con LINQ al consultar una base de datos?
intelliseño tipo seguro en Visual Studio, en lugar de pasar sus grandes blobs de texto (consultas SQL) sin verificación de tipo y sin ningún tipo de seguridad (golpes hasta solo en tiempo de ejecución en producción .....) –
@mark_s: aunque hay otras maneras de hacerlo. Conjuntos de datos fuertemente tipados, por ejemplo. –
Linq es el método preferido para acceder a sus datos a través de un ORM como Linq a SQL o Entity Framework. –
"¿Conoces a tu enemigo"?
OTOH, por interés. Estoy aprendiendo más sobre XMl, XSLT, XSDs, etc. porque puedo ver su uso como desarrollador de bases de datos.
Creo que una de las muchas razones por las cuales se podría considerar LINQ porque LINQ es gran impulso de la productividad y el tiempo enorme ahorro de
Esta pregunta también me hace preguntar, si LINQ se vuelve inmensamente popular, ¿los desarrolladores del lado del servidor sabrán SQL al igual que sus predecesores?
¿Qué tan bien conoce el montaje? –
- 1. ¿Por qué un desarrollador usaría Silverlight?
- 2. ¿Por qué la gente usaría bases de datos XML puros sobre RDBM simples?
- 3. Con la reciente presencia de bases de datos NoSQL, ¿por qué usaría una base de datos SQL?
- 4. ¿Por qué usaría la base de datos Oracle?
- 5. LINQ en varias bases de datos
- 6. Explosión de bases de datos de gráficos ... ¿por qué?
- 7. ¿Por qué alguien usaría Collections.emptyList en java?
- 8. Atributos personalizados HTML5 - ¿Por qué los usaría?
- 9. ¿Qué DB para grandes bases de datos?
- 10. ¿Qué son los datos dinámicos de .net y por qué los usaría?
- 11. ¿Por qué no usaría un comodín en mi classpath?
- 12. ASP.NET MVC TDD con bases de datos LINQ y SQL
- 13. ¿Por qué usaría un archivo ".pfx" en .NET
- 14. ¿Qué bases de datos tengo permisos en
- 15. ¿Por qué Google usaría una etiqueta de fuente?
- 16. Herramientas de desarrollador para acceder directamente a las bases de datos
- 17. ¿Por qué alguien usaría C en lugar de C++?
- 18. ¿Qué estructura de datos usaría para un currículo de un departamento en una universidad?
- 19. Bases de datos translúcidas
- 20. ¿Por qué alguna vez usaría una DoublyLinkedList en PHP?
- 21. ¿Qué es un desarrollador de FE?
- 22. ¿Por qué todas las bases de datos tienen un esquema público en PostgreSQL?
- 23. ¿Qué base de datos usaría para registrar (es decir, als archivo de registro de reemplazo)
- 24. ¿Qué sistemas de bases de datos admiten un tipo de datos ENUM, que no?
- 25. Disparadores de bases de datos
- 26. ¿Para qué usaría Stackless Python?
- 27. ¿Qué tipos de bases de datos están disponibles en Android?
- 28. ¿Por qué usaría Apache ServiceMix solo en ActiveMQ?
- 29. Un usuario por base de datos contra usuario único para todas las bases de datos
- 30. Dividir un archivo mysqldump con varias bases de datos, por base de datos
¿Está preguntando si un DBA debe aprender LINQ? ¿O esta persona de la base de datos también es un desarrollador? – Kinze