LINQ Good or Bad?

22. May 2009
Now that I have had a chance to work with LINQ a little more I just wanted to express my opinion on how I think it can a bit of a downfall for a developer. Don't get me wrong I think LINQ is such an awesome development concept.  For me personally, I will try to never work with XML again without LINQ in a .NET application. Now saying that, I think LINQ takes away some important concepts a developer must know.  

For those just starting out and are a bit new to development, those people may not know how to use an XML file or query a SQL database without LINQ.  I see this as a disadvantage, as I feel knowing what is happening on the underlying layer is very beneficial for ones knowledge.  Knowing this allows developers to troubleshoot their app more efficiently and effectively.  I couldn't imagine not knowing T-SQL, but if I was new to .NET why would I care to know it as well as I do now with LINQ available to me?  

I think all developers should know T-SQL (or any sQL language for that matter) well enough to make decent stored procedures,  triggers, views, and scalar/table functions.  I personally feel the more I can get done on the database side the easier my .NET code is to write and easier for others to read.  Why put logic into a .NET app if it doesn't need to be there? This allows for less maintance on the app itself and more on the database side (which has seemed to work well in most cases I've been involved with).

Also with XML, I think all developers should know how to traverse and query an XML document without LINQ.  Because maybe a solution to a problem one day will not involve .NET, but it does involve XML from one source or another.  If you don't know how to work with XML without LINQ, you just put yourself in that much more difficult of a situation.

As a developer your attitude should be to gather more skills and concepts and add them to your pool of knowledge instead of relying on certain ideas/methods to get you by at all times.  I just want to get this out there for those just starting and don't forget about the basics and underlying concepts of what makes an application work.  Yes LINQ is there to make your job easier, but please know how to get something done without it as well. If anything, know the concept of how to get something done without LINQ.  

Even having said this...I love LINQ! (especially with collections)

Thanks for putting up with my rambling!
Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

General

Add comment




  Country flag

biuquote
  • Comment
  • Preview
Loading