Missing LINQ?
-
Is anybody else more than just a little uneasy about LINQ? The few examples I've seen make no sense to me. And I can't see what drove them to this solution either. I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..." Ok, I can see some advantages to having it built it to the languages, not least of all avoiding the need for string storage and manipulation. But could it not have been more... SQL-like? Am I alone here or does anybody else have reservations about LINQ? And I know there are some people out there that are really excited about it, I'd like to hear what they have to say too.
Try code model generation tools at BoneSoft.com.
i try to ignore MS programming tech until it's been out in a commercially-available product for at least two years. i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
-
Is anybody else more than just a little uneasy about LINQ? The few examples I've seen make no sense to me. And I can't see what drove them to this solution either. I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..." Ok, I can see some advantages to having it built it to the languages, not least of all avoiding the need for string storage and manipulation. But could it not have been more... SQL-like? Am I alone here or does anybody else have reservations about LINQ? And I know there are some people out there that are really excited about it, I'd like to hear what they have to say too.
Try code model generation tools at BoneSoft.com.
Because some brainiac at microsoft thought it was a "sweet" idea?
-- Kein Mitleid Für Die Mehrheit
-
i try to ignore MS programming tech until it's been out in a commercially-available product for at least two years. i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
Chris Losinger wrote:
i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable... :doh:
For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:
-
Is anybody else more than just a little uneasy about LINQ? The few examples I've seen make no sense to me. And I can't see what drove them to this solution either. I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..." Ok, I can see some advantages to having it built it to the languages, not least of all avoiding the need for string storage and manipulation. But could it not have been more... SQL-like? Am I alone here or does anybody else have reservations about LINQ? And I know there are some people out there that are really excited about it, I'd like to hear what they have to say too.
Try code model generation tools at BoneSoft.com.
It doesn't worry me in the slightest. I won't be using it, so I don't really care about it one way or another. I'm a bit of a grumpy old git about "cutting edge" technologies. The problem with cutting edge is that they end up making you bleed.
Deja View - the feeling that you've seen this post before.
-
Chris Losinger wrote:
i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable... :doh:
For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:
Clickok wrote:
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable...
Booo. I'd have to disagree here. It's reached a point (in the 2005 implementation) where I'm happy and comfortable with it. Now they just want to go and spoil it.
Deja View - the feeling that you've seen this post before.
-
Is anybody else more than just a little uneasy about LINQ? The few examples I've seen make no sense to me. And I can't see what drove them to this solution either. I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..." Ok, I can see some advantages to having it built it to the languages, not least of all avoiding the need for string storage and manipulation. But could it not have been more... SQL-like? Am I alone here or does anybody else have reservations about LINQ? And I know there are some people out there that are really excited about it, I'd like to hear what they have to say too.
Try code model generation tools at BoneSoft.com.
BoneSoft wrote:
I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..."
I would very much doubt that. LINQ is just syntactic sugar for a number of new classes that were added to the .NET Framework. You can perform the same thing but without using LINQ by just calling the appropriate methods. In fact that should be taught because it will show people how it is actually put together.
BoneSoft wrote:
But could it not have been more... SQL-like?
No. The basis of C# and SQL are different. SQL is mostly a declarative set based language, while C# is procedural. (i.e. In SQL you say what you want and the query optimiser figures out how to get it. In C# you specify HOW you want it to function.) You can view LINQ as a hybrid of the two.
BoneSoft wrote:
Am I alone here or does anybody else have reservations about LINQ?
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
-
Chris Losinger wrote:
i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable... :doh:
For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:
duck!
Cheers, Mircea "Pay people peanuts and you get monkeys" - David Ogilvy
-
duck!
Cheers, Mircea "Pay people peanuts and you get monkeys" - David Ogilvy
-
Chris Losinger wrote:
i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable... :doh:
For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:
Clickok wrote:
.Net Framework is here since 2002 and it isn't neither nice or usable...
I'd have to disagree with that. I'm very happy with it. And I'm looking forward to the enhancements in 2008.
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
-
BoneSoft wrote:
I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..."
I would very much doubt that. LINQ is just syntactic sugar for a number of new classes that were added to the .NET Framework. You can perform the same thing but without using LINQ by just calling the appropriate methods. In fact that should be taught because it will show people how it is actually put together.
BoneSoft wrote:
But could it not have been more... SQL-like?
No. The basis of C# and SQL are different. SQL is mostly a declarative set based language, while C# is procedural. (i.e. In SQL you say what you want and the query optimiser figures out how to get it. In C# you specify HOW you want it to function.) You can view LINQ as a hybrid of the two.
BoneSoft wrote:
Am I alone here or does anybody else have reservations about LINQ?
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
Colin Angus Mackay wrote:
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
So no change there then. God forbid that the unwashed masses should actually get off their a*ses and take the time to actually learn how to do something.
Deja View - the feeling that you've seen this post before.
-
It doesn't worry me in the slightest. I won't be using it, so I don't really care about it one way or another. I'm a bit of a grumpy old git about "cutting edge" technologies. The problem with cutting edge is that they end up making you bleed.
Deja View - the feeling that you've seen this post before.
Pete O`Hanlon wrote:
The problem with cutting edge is that they end up making you bleed.
That's why they are also called "bleeding edge" ;)
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
-
Pete O`Hanlon wrote:
The problem with cutting edge is that they end up making you bleed.
That's why they are also called "bleeding edge" ;)
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
Colin Angus Mackay wrote:
That's why they are also called "bleeding edge"
Ouch.
Deja View - the feeling that you've seen this post before.
-
Colin Angus Mackay wrote:
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
So no change there then. God forbid that the unwashed masses should actually get off their a*ses and take the time to actually learn how to do something.
Deja View - the feeling that you've seen this post before.
Pete O`Hanlon wrote:
So no change there then.
None whatsoever. :-D
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
-
Chris Losinger wrote:
i'll take a look at LINQ when LINQ-2010 comes out . it'll be nice and usable, then.
How optimist! .Net Framework is here since 2002 and it isn't neither nice or usable... :doh:
For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.(John 3:16) :badger:
I'm not sure I'd agree with that. Even 1.0 was far more complete and polished than Java 1.2 at the time.
Try code model generation tools at BoneSoft.com.
-
Is anybody else more than just a little uneasy about LINQ? The few examples I've seen make no sense to me. And I can't see what drove them to this solution either. I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..." Ok, I can see some advantages to having it built it to the languages, not least of all avoiding the need for string storage and manipulation. But could it not have been more... SQL-like? Am I alone here or does anybody else have reservations about LINQ? And I know there are some people out there that are really excited about it, I'd like to hear what they have to say too.
Try code model generation tools at BoneSoft.com.
BoneSoft wrote:
Is anybody else more than just a little uneasy about LINQ?
Not in the slightest. The only thing I'm worried about is that the concepts will be misunderstood and abused.
BoneSoft wrote:
I can't see what drove them to this solution either.
There is a good overview of LINQ on MSDN[^] that provides some of the historical reasons that drove the implementation. In looking at the current and next generation of technologies, it has become apparent that the next big challenge in programming technology is to reduce the complexity of accessing and integrating information that is not natively defined using OO technology. The two most common sources of non-OO information are relational databases and XML. Rather than add relational or XML-specific features to our programming languages and runtime, with the LINQ project we have taken a more general approach and are adding general-purpose query facilities to the .NET Framework that apply to all sources of information, not just relational or XML data. This facility is called .NET Language-Integrated Query (LINQ).
BoneSoft wrote:
it not have been more... SQL-like?
That's exactly what they were trying to avoid in the first place. Going beyond that, the SQL syntax is inheritantly different than C# and one of the goals was to allow programmers who do not know SQL to more easily work with data access. The thought behind this is that as a programmer, I should not be required to understand the nuances of the SQL language but I should still be able to interact with the data in a way that is natural to me (hence the C# syntax). LINQ is really just a structured mechanism of interacting with new functions and classes that have been added to the .NET Framework. Everything in a LINQ query is really nothing more than a function call. The way you interact and program a LINQ query is due to more basic additions to the language, such as extension methods, lambda expressions, and implicit typing. These concepts are not LINQ specific in that they can be used outside of LINQ, but without them LINQ wouldn't exist.
Scott.
-
BoneSoft wrote:
I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..."
I would very much doubt that. LINQ is just syntactic sugar for a number of new classes that were added to the .NET Framework. You can perform the same thing but without using LINQ by just calling the appropriate methods. In fact that should be taught because it will show people how it is actually put together.
BoneSoft wrote:
But could it not have been more... SQL-like?
No. The basis of C# and SQL are different. SQL is mostly a declarative set based language, while C# is procedural. (i.e. In SQL you say what you want and the query optimiser figures out how to get it. In C# you specify HOW you want it to function.) You can view LINQ as a hybrid of the two.
BoneSoft wrote:
Am I alone here or does anybody else have reservations about LINQ?
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
Colin Angus Mackay wrote:
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
Absolutely, but we have that problem now so it will just be more of the same.
Scott.
—In just two days, tomorrow will be yesterday. [Forum Guidelines] [Articles] [Blog]
-
BoneSoft wrote:
I picture somebody at MS saying "ya know, let's take this well known standardized perfectly good query language that everybody is used to, chuck it out the window, and make a cryptic bizzare syntax built into the language itsef..."
I would very much doubt that. LINQ is just syntactic sugar for a number of new classes that were added to the .NET Framework. You can perform the same thing but without using LINQ by just calling the appropriate methods. In fact that should be taught because it will show people how it is actually put together.
BoneSoft wrote:
But could it not have been more... SQL-like?
No. The basis of C# and SQL are different. SQL is mostly a declarative set based language, while C# is procedural. (i.e. In SQL you say what you want and the query optimiser figures out how to get it. In C# you specify HOW you want it to function.) You can view LINQ as a hybrid of the two.
BoneSoft wrote:
Am I alone here or does anybody else have reservations about LINQ?
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
Upcoming FREE developer events: * Glasgow: db4o: An Embeddable Database Engine for Object-Oriented Environments, Mock Objects, SQL Server CLR Integration, Reporting Services ... My website
Maybe that's where most of my apprehension comes from, I don't like jumping into something I don't know how to use properly. And as a programmer, I don't like working with something I don't fully understand. But thanks for the info, now that I know there is an underlying model, I have something to go on, the examples I've seen seem to be complete giberish.
Try code model generation tools at BoneSoft.com.
-
Colin Angus Mackay wrote:
My only reservation about LINQ is that I can see how newbies will be able to abuse it without fully understanding what is going on under the hood.
So no change there then. God forbid that the unwashed masses should actually get off their a*ses and take the time to actually learn how to do something.
Deja View - the feeling that you've seen this post before.
Pete O`Hanlon wrote:
the unwashed masses should actually get off their a*ses and take the time to actually learn how to do something.
But then we'd all have to find real work to do instead of answering questions about how to create an array, telling people to do their own homework and what forums to post in. It would be a travesty! :)
Scott.
—In just two days, tomorrow will be yesterday. [Forum Guidelines] [Articles] [Blog]
-
Maybe that's where most of my apprehension comes from, I don't like jumping into something I don't know how to use properly. And as a programmer, I don't like working with something I don't fully understand. But thanks for the info, now that I know there is an underlying model, I have something to go on, the examples I've seen seem to be complete giberish.
Try code model generation tools at BoneSoft.com.
BoneSoft wrote:
the examples I've seen seem to be complete giberish
Right now there isn't anyone at Microsoft focused specifically on LINQ and getting the word out about it. A lot of the examples try to show the "power" of LINQ, but don't do a good job at it because they are either hard to read/understand, incomplete, or don't show it in the context of a real-world scenario.
Scott.
—In just two days, tomorrow will be yesterday. [Forum Guidelines] [Articles] [Blog]
-
BoneSoft wrote:
Is anybody else more than just a little uneasy about LINQ?
Not in the slightest. The only thing I'm worried about is that the concepts will be misunderstood and abused.
BoneSoft wrote:
I can't see what drove them to this solution either.
There is a good overview of LINQ on MSDN[^] that provides some of the historical reasons that drove the implementation. In looking at the current and next generation of technologies, it has become apparent that the next big challenge in programming technology is to reduce the complexity of accessing and integrating information that is not natively defined using OO technology. The two most common sources of non-OO information are relational databases and XML. Rather than add relational or XML-specific features to our programming languages and runtime, with the LINQ project we have taken a more general approach and are adding general-purpose query facilities to the .NET Framework that apply to all sources of information, not just relational or XML data. This facility is called .NET Language-Integrated Query (LINQ).
BoneSoft wrote:
it not have been more... SQL-like?
That's exactly what they were trying to avoid in the first place. Going beyond that, the SQL syntax is inheritantly different than C# and one of the goals was to allow programmers who do not know SQL to more easily work with data access. The thought behind this is that as a programmer, I should not be required to understand the nuances of the SQL language but I should still be able to interact with the data in a way that is natural to me (hence the C# syntax). LINQ is really just a structured mechanism of interacting with new functions and classes that have been added to the .NET Framework. Everything in a LINQ query is really nothing more than a function call. The way you interact and program a LINQ query is due to more basic additions to the language, such as extension methods, lambda expressions, and implicit typing. These concepts are not LINQ specific in that they can be used outside of LINQ, but without them LINQ wouldn't exist.
Scott.
Scott Dorman wrote:
to reduce the complexity of accessing and integrating information that is not natively defined using OO technology
Yeah, that's always been one of the biggest problems. Xml serialization has bridged the XML gap somewhat, but database has always been a problem. And I'm not sure I like most current and past approaches to addressing that. I wasn't a huge EJB fan, but then again, I didn't do a lot of work with them. I suppose LINQ may be a step forward, but the syntax just looks so bizzare to me.
Try code model generation tools at BoneSoft.com.