2009-04-09 15 views
6

Sé que en la mayoría de los casos es más útil aprender tecnología/lenguaje más complicado y luego uno más fácil que viceversa.
Pero, en realidad, el tiempo para realizar tareas universitarias es limitado. Si primero aprendo LINQ, entonces vaya por SQL, ¿me sería difícil usar y aprender SQL?
EDIT
La tarea que tengo que hacer es trabajar con la base de datos y obtener algunos datos de ella, por lo que la pregunta es casi de LINQ a SQL.¿Es una buena idea aprender primero LINQ, luego SQL?

+0

Re la edición - entonces diga ;-p –

+0

el punto es que no me quiero quedar con solo C# y plataforma .NET por el resto de mi vida, es muy probable que esto sea lo que haré para vivir, pero eso no es todo lo que quiero saber – chester89

+1

Bueno, SQL (en variantes como TSQL , etc.) es verdaderamente omnipresente. LINQ es específico de .NET. Pero debe decidir qué es importante a corto plazo (para aprobar el curso) y a largo plazo (carrera). Pueden ser diferentes, pero ¿cuál es más inmediato? –

Respuesta

20

Es una mala idea.

Y si las universidades de hoy te enseñan LINQ en lugar de darte las bases para desarrollar tu conocimiento, solo puedo sentir pena y lástima por sus alumnos.

El tiempo es siempre limitado. No lo desperdicie en cosas que están sujetas a cambios constantes.

SQL estará allí mañana, LINQ .... bueno, quién sabe.

SQL es aplicable en cualquier parte, LINQ solo en .NET world.

Ya sea LINQ o algo más, será fácil "aprender" después. Cuando tenga el conocimiento de SQL, solo será cuestión de horas/días/semanas, apenas más.

+0

¿Cómo es esto ofensivo? ¡Esto es verdad! Soy fanático de LINQ y ya ha habido mucha discusión sobre las entidades y el futuro de LINQ. El conocimiento general de SQL irá más allá. – mmcdole

+0

ofensivo? ¡¡¡¡¡venga!!!!! – inspite

+0

las universidades no nos enseñan LINQ, quieren que hagamos el trabajo y eso es todo. entonces, la tecnología que seleccionamos para hacer esto tiene que ver con nuestro conocimiento, elección y preferencia. LINQ es solo mi alternativa para no profundizar en SQL – chester89

9

Bueno, las 2 cosas son muy diferentes. LINQ (en el sentido puro) no está realmente relacionado con bases de datos en absoluto - se puede usar muy felizmente en objetos de memoria o en servicios web, etc.

Si está interesado principalmente en escribir mejor .NET code, luego aprende LINQ - pero apúntalo correctamente - por ejemplo, toma C# in Depth, que lo cubre muy bien en los últimos capítulos.

Si quiere saber sobre bases de datos, entonces seguro: aprenda SQL (como TSQL) - pero entienda las diferencias. Las bases de datos son buenas si necesita escribir software empresarial, pero no necesariamente si solo desea realizar tareas simples.

edición re edición en la pregunta

Si se acaba de entrar datos simples dentro y fuera de la base de datos, entonces es probable que no necesita saber mucho acerca de SQL. Simplemente use LINQ-to-SQL (o cualquier herramienta) y deje que las herramientas ORM se preocupen por ello.

4

SQL es un estándar, conoce el estándar.

Más precisamente:

  • aprenden la teoría de base de datos

  • aprender álgebra CODD

  • luego recoger una "base de datos común", hacer algunos tutoriales sobre el mismo, ...

Me gusta mucho PostgreSQL tutorial

+0

no conozco las diferencias entre SQL92, SQL99, SQL2003, SQL20008 ... pero para un principiante no creo que realmente importe – chburd

4

Primero aprenda SQL, luego LINQ.

De esta manera entenderá cómo LINQ-to-SQL está trabajando detrás de escena, pero también sabrá lo suficiente como para poder hacer frente cuando LINQ no puede hacer lo que necesita.

1

Presento que no se puede usar efectivamente LINQ a menos que tenga conocimiento de SQL. Si usted no comprende, como mínimo, la siguiente, no se puede consultar de manera efectiva una base de datos en cualquier forma:

select 
insert 
delete 
update 
joins 
group by 
boolean algebra 
relational theory 
set theory 

aprendizaje SQL le dará los conceptos que necesita, incluso si utiliza LINQ más tarde.

1

sql. Sin embargo, podría jugar con linq pad por un tiempo - es un software gratuito y darse cuenta de que LINQ es un buen híbrido entre SQL y C#

Cuestiones relacionadas