LINQ in Action preface
Here is the preface I wrote for LINQ in Action:
I chose software development as the way to make a living
mainly because it’s a technology that is constantly
evolving. There’s always something new to learn. No chance
of getting bored in this line of work! In addition to
learning, I also enjoy teaching software development.
Writing LINQ in Action was a good opportunity to both
learn and teach at the same time.
When we
started writing this book, LINQ was still an early
prototype. We followed its evolution as it was taking
shape. There was a lot to discover and a lot to
understand. This is part of a software developer’s
everyday job. We have to stay up-to-date with the
technologies we use and learn new ones as they come out.
The software development environment is evolving at an
increasingly fast pace, and I don’t see any signs that
that’s going to change.
.NET is a fast-moving
environment. Over the last couple of years, we’ve seen two
major releases of the .NET Framework, and several
companion technologies have appeared: Windows Presentation
Foundation, Windows Communication Foundation, Windows
Workflow Foundation, ASP.NET AJAX, Silverlight, and LINQ
have joined our developer toolbox. Another trend in .NET
is the multiplication of programming languages. F#, which
will receive the same support as C# or VB.NET in Visual
Studio, introduces functional programming in .NET. Dynamic
languages, such as Python and Ruby, are going to be
supported by the .NET Dynamic Language Runtime.
In
coming years, we’ll have to deal with more programming
languages than the ones we currently master. An advantage
of C#, Visual Basic, and the other .NET languages is that
they are constantly adapting. C# and VB.NET have been
improved in their latest versions to offer support for
language-integrated querying through LINQ.
In
addition to offering novel approaches to deal with data,
LINQ represents a shift toward declarative and functional
programming. When people ask me for reasons to learn LINQ,
I tell them that they should learn it in order to be able
to use it with XML, relational data, or in-memory
collections, but above all to be able to start using
declarative programming, deferred execution, and lambda
expressions.
Start learning LINQ now! When you
do, you’ll not only learn how to use this new technology,
but you’ll also discover where programming is heading. One
of our main goals with LINQ in Action was to help you
fully comprehend the new approaches associated with
LINQ.
Fabrice Marguerie
Cross-posted from http://linqinaction.net
