Tip Top C# Coding
Experienced C# early adopters would be smart to keep this slim but useful reference within arms' reach.
“Programming the .NET Framework” is the subtitle to this one, and that certainly captures the purpose of the C# language quite nicely. Just in case you somehow missed it, C# (pronounced “see-sharp”) is a new programming language invented by Microsoft and released as a component of the beta for Visual Studio.NET and the .NET Framework SDK. Drawing on sources as diverse as C, C++, Java and Delphi, C# is Microsoft’s proposal for the way we’ll all work in the coming future of integrated Web services.
C# Essentials is a book for the experienced developer who wants to make the transition to C#. If you’re not comfortable with concepts such as polymorphism or function pointers, you’re going to find parts of this one very hard going. But it’s important to note that you don’t need to understand all of those things to actually use C#. The main goal here is to explain the syntax and use of C# so that you can get started using it quickly (as is traditional for computer language books, a variation on “Hello World” shows up on page 5), while still providing an in-depth reference to the language.
Although it does build from simple to complex concepts, this book is not a tutorial (there’s a perfectly good tutorial available in the C# documentation in the .NET Framework SDK). Instead, it’s a manual for the experienced object-oriented developer who would rather keep a slim volume handy instead of the online documentation (which is, as of beta 1, incomplete). If you’re working in C# and want to handle a callback from an unmanaged function in an old-style DLL, or check the semantics and syntax of abstract classes, this book will get you the information you need quickly. An exhaustive index is an important part of this, and C# Essentials delivers on that front.
In addition, the authors go beyond the C# language to the scaffolding of .NET that you’ll need to make use of it in real applications. They provide a high-level map of the .NET classes; rather than try to cover all 1,500 classes in depth, they list the major functional areas provided by the .NET Framework so you can dig in the voluminous .NET documentation with some hope of finding the information you need. They also discuss the .NET tools that will help you work with C# and, perhaps most importantly, provide pointers to online information.
While the C# language is finished, .NET itself is still technology in transition. O’Reilly deserves credit for getting this book out quickly to help early adopters. I hope they manage to keep it up to date as .NET evolves. If they do, it will stay in the place right next to my monitor that the current edition already occupies.
Mike Gunderloy, MCSE, MCSD, MCDBA, is a former MCP columnist and the author of numerous development books.