This chapter provides some resources for learning more about C# and provides some ideas about how C# will evolve in the future.
1. C# Resources
Several C# resources have appeared on the Web. The following sections list some of them.
1.1. MSDN
MSDN (http://msdn.microsoft.com/netframework) is the main Microsoft site for all things .NET. It has news, articles, columns, and sample code. The C# subsite is at http: //msdn.microsoft.com/ vcsharp/ and contains links to the blogs of many of the C# team and C# MVPs (including links to the blogs of this book’s authors). The C# subsite also includes the full product and language reference documentation.
The .NET 2.0 Framework site is currently at http://msdn2.microsoft.com.
1.2. GotDotNet
GotDotNet (http://www.gotdotnet.com) is a Microsoft-operated community site. It has some of the same content as the MSDN site, but it also has a user-contribution area.
1.3. C-Sharp Corner
C-Sharp Corner (http://www.c-sharpcorner.com) is a site dedicated only to C#. It’s somewhat like GotDotNet, but it deals only with C#, not the whole .NET universe.
1.4. CodeGuru
CodeGuru (http://www.codeguru.com) is an EarthWeb site (the EarthWeb family includes Internet.com and Developer.com), and it includes many sections dedicated to .NET language and technologies.
1.5. The Code Project
The Code Project (http://www.codeproject.com) is a community-based Web site that hosts a huge range of .NET content, the bulk of which has been submitted by the Web site’s members. The site currently has more than 8,000 “free C++, C#, and .NET articles; code snippets; discussions; news; and the best bunch of developers on the Net.” The quality of the Code Project articles is quite variable, and an online rating system is available to provide readers with an indication of the quality of a particular contribution.
1.6. PInvoke.NET
PInvoke.NET (http://www.pinvoke.net) is a wiki-style site that provides a huge range of PInvoke signatures for calling native functions on the Windows platform. A wiki Web site allows users to edit and add to the content, which means the collection of method signatures is constantly being added to and enhanced.
1.7. DotNet Books
If there’s an existing, new, or upcoming book about C# or other .NET topics, it will probably be listed at DotNet Books (http://www.dotnetbooks.com).
2. The Future of C#
The C# compiler specification was submitted for standardization to the European Computer Manufacturers Association (ECMA). The standardization process is underway in Technical Committee 39, the same group that standardized ECMAScript (often known as JavaScript or JScript). In addition to the C# language, a subset of the CLR, known as the CLI, is undergoing standardization in the same committee. The C# and CLI standards were ratified in April 2003.
The goal is to standardize enough of the language and runtime so that useful programs can be written, roughly analogous to what’s available with C++ and the C++ runtime library. Current specifications from this process are available at http://msdn.microsoft.com/net/ecma.
C# 2.0 is currently undergoing the same standardization process that C# 1.0 underwent. One of the most exciting advances in this area is that generics have now been added to the CLI spec, meaning they will eventually be available in a wide range of languages. You can view the current specifications at http://msdn.microsoft.com/vcsharp/team/language.
Source: Gunnerson Eric, Wienholt Nick (2005), A Programmer’s Introduction to C# 2.0, Apress; 3rd edition.