Book Review: Accelerated C# 2008 by Trey Nash
Published March 24, 2008
Chapter 5, "Interfaces and Contracts," explores interface-based programming and what kind of role it plays within the C# language. You should always design the interface first since it is the contract between components. The contract then drives the implementation.
Chapter 6, "Overloading Operators," examines how you can provide custom functionality for the built in operators when applied to your own defined types, but just because you can do something doesn't mean that you always should. If not done properly, overloaded operators can make your code more difficult to read and understand.
Chapter 7, "Exception Handling and Exception Safety," describes the exception handling abilities of the C# language and the CLR. Described here also is some of the new capabilities that were added to the .NET 2.0 runtime for creating more fault-tolerant code than was possible in .NET 1.1. You will learn that writing exception safe code can be difficult to master without the right training.
Chapter 8, "Working with Strings," talks about working with strings and how they are a first class type in the CLR. Covered here is formatting, working with the StringBuilder, regular expressions, and globalization capabilities of the framework.
Chapter 9, "Arrays, Collection Types, and Iterators," covers the various array and collection types in C#. You will learn a bit about arrays, but even more about the major generic collection interfaces and iterators as well as what kind of things you can do with them.
Chapter 10, "Delegates, Anonymous Functions, and Events," examines the mechanisms used in C# to provide callbacks and how C# implements into callable objects called delegates. You will also see how the framework builds upon delegates to provide a publish/subscribe event notification mechanism.
Chapter 11, "Generics," shows you how to provide a shell of functionality with which to define more specific types at runtime. Generics allow you to create open-ended types that are converted into closed types at runtime.
Chapter 12, "Threading in C#," explains what is needed to create multi-threaded applications in C#. The managed environment of the CLR has provided more infrastructures for making your job much easier, but you still have to be careful. You will learn about synchronizing and using the threadpool as well.
Chapter 13, "In Search of C# Canonical Forms," is a discussion on best design practices for defining new types and how to make them safe for consumers. You will learn about reference and value type canonical forms.
Chapter 14, "Extension Methods," is a new feature in C# 3.0 for extending a type, like an instance method, but much more. Using extension methods, you can declare methods that appear to augment the public interface, or contract of a type, but since they are not really instance methods, they cannot crack the shell of encapsulation on the type that they are extending.
- Book Review: Accelerated C# 2008 by Trey Nash
- Published: March 24, 2008
- Type: Review
- Section: Books
- Filed Under: Books: Computers and Internet, Review, Sci/Tech: Computers, Sci/Tech: Programming, Sci/Tech: Software
- Part of a feature: The RAM Review
- Writer: T. Michael Testi
- T. Michael Testi's BC Writer page
- T. Michael Testi's personal site
- Spread the Word
- Like this article?
- Email this
Save to del.icio.us









