|TABLE OF CONTENTS|
|Visual Studio 2008 and C# 3.0|
This section of the Visual Studio 2008 Learning Guide looks at the new and improved features of C# 3.0. As previous sections indicated, the introduction of LINQ had a lot to do with how the language changed. After reading this section, you can read about multi-targeting, the Visual Studio 2008 feature that lets developers and architects use VS 2008, and all its new features, to build applications for .NET 2.0 and .NET 3.0.
C# 3.0 language specifications (MSDN)
This Word document, the first link on the page, provides an exhaustive list of C# 3.0's language specifications.
Visual Studio 2008 Programmer's Guide: C# 3.0 (MSDN)
This serves as a landing page for Microsoft's reference material for C# 3.0 programmers. (Note: The headline may say C# 2.0, but, rest assured, the resources are for the newest version of the language.)
An introduction to C# 3.0 (Tim Rayburn)
This blogger, a BizTalk Server MVP, had given his "Introduction to C#" talk to numerous user groups throughout the south central United States and then decided it was high time he recorded it fot all to see.
C# 3.0 language enhancements (Mike Hanley)
This blogger looks at seven language enhancements, four of which demonstrate an improvement over how things are done in C# 2.0 and three of which -- query expressions, anonymous types and lambda expressions -- are new to C# 3.0.
Book: Programming C# 3.0, Fifth Edition (O'Reilly Media)
Aimed at beginner and intermediate programmers, this title discusses base class libraries and walks readers through the processes of creating Windows and Web applications.
Book: C# in a Nutshell, Third Edition (O'Reilly Media)
This title covers language syntax, base class libraries and other key features of C# 3.0. Its chapters are organized around use cases, making themes easier to follow.
*** These articles look at individual C# 3.0 features.
New C# 3.0 language features: Automatic Properties, Object Initializers and Collection Initializers (Scott Guthrie)
Here Guthrie introduces these three new C# 3.0 features. Each takes advantage of a more powerful compiler to reduce the lines of code a programmer must type.
On Extension Methods in C# and .NET Framework 3.5 (SearchWinDevelopment.com)
Blogger Alex Hoffman's "Adventures in .NET 3.5" offers quite a bit of advice for the C# architect on working with Extensions Methods.
Implicitly typed variables in C# 3.0 (Programmer's Heaven)
As this blogger puts it, C# programmers are not declaring a variable of type "var" (which wouldn't mean much. "Actually," he said, "'var' is not a type, but rather a new keyword that means, 'I want to declare a variable, but I'm too lazy to write out its type.'" Essentially, the compiler will figure out the type for you.
C# 3.0 Partial Methods: What, why and how? (Bart de Smet)
Introduced with VS 2008 Beta 2, partial methods allow classes to be extended when the method is implemented. Since even this blogger admits that the concept is vague, a detailed explanation follows.
C# 3.0: Are Object Initializers evil, useful or both?(Kevin Hoffman)
Thanks to object initializers, a class can be instantiated and, then, "practically in the same breath," public properties or fields can also be initialized and assigned new values. It's a powerful feature, but this blogger says he is afraid that neophyte programmers may "run with it and completely abuse it."
Extension Methods in C# 3.0 + fluent interface = Ruby-like syntax (Troy DeMonbreun)
For this developer, extension methods are elegant enough to give Ruby date syntax "a good run for its money."
C# 3.0 Lambda Expressions replacing anonymous methods (Steve Michelotti)
Anonymous methods syntax could sometimes be confusing, this blogger notes, as it could involve lining up curly braces and getting delegate signatures right. Lambda expressions in C# 3.0 reduce this complexity -- and the amount of hard coding that is needed.
*** Go on to the next section of the Visual Studio 2008 Learning Guide: Visual Studio 2008 and Multi-Targeting