Thursday, October 25, 2007

The problem with LINQ

In principle it sounds like a great idea. Rather than having to learn SQL, XPath and whatever other query language you care to mention, just learn LINQ and use it to access any data source you like. That's great and all, if I'm using .NET 3.5 for every single project I work on. And until I am (which I'm guessing will be, er, never), LINQ is actually yet another thing to learn. So now I need to know SQL, XPath and LINQ. Or perhaps not, perhaps best to just forget LINQ and stick to the old stuff, since it works and is available on most platforms. When LINQ is available everywhere, then I'll start to think about learning it. 

2 comments:

Anonymous said...

Learned it yet? I had the same opinion about lambdas. Then after I learned them I realized what a dumbfuck I was.

Doogal said...

Of course I haven't learnt it yet, this was my usual uninformed ranting. Most .NET development I'm involved with is on .NET 2(with some still using .NET 1.1) so I haven't really had the opportunity (although I'm not sure if LINQ can be used from .NET 2, I know some things like extension methods can be). The prime uses case seems to be filtering and sorting collections, which I just don't do that foten. Having said that I have seen some uses for it. I saw an example where it was used for filtering a source file, but again that's not something I need to do very often. I still don't like the idea of LINQ to SQL, I'm more comfortable writing my own SQL. And MS seem to have dumped it as well.

But the thing that still puts me off is the fact that it seems to be a non-transferable skill. No other development environments/languages support similar ideas, as far as I'm aware. And I jump between languages quite a lot.