Saturday, October 16, 2004

Updating A Programmer’s Introduction to C# for C# 2.0

I've recently signed on to do the updated version of A Programmer's Introduction to C# for Apress. The first two editions of this book were written by Eric Gunnerson, who was the C# PM, but announced in September has was moving to another team in Microsoft. Gary emailed me to see if I was keen to do an updated version of the book, and being a big fans of Eric and the first two versions of the book, I happily agreed.

I'm getting together a revised TOC at the moment. The stuff in black is the TOC of the second edition of the book, and the stuff in red is what I plan to add. Any comments or feedback would be welcome.

Chapter 1 Object-Oriented Basics

Chapter 2 The .NET Runtime Environment

Chapter 3 C# QuickStart and Developing in C#

Chapter 4 Exception Handling

Chapter 5 Classes 101

Chapter 6 Base Classes and Inheritance

Chapter 7 Member Accessibility and Overloading

Chapter 8 Other Class Details (including static classes)

Chapter 9 Structs (Value Types)

Chapter 10 Interfaces

Chapter 11 Versioning and Aliases

Chapter 12 Statements and Flow of Execution

Chapter 13 Variable Scoping and Definite Assignment

Chapter 14 Operators and Expressions

Chapter 15 Conversions

Chapter 16 Arrays

Chapter x Generics

Chapter 17 Strings

Chapter 18 Properties (including property accessors)

Chapter 19 Indexers, Enumerators and Iterators

Chapter 20 Enumerations

Chapter 21 Attributes

Chapter 22 Delegates and Anonymous Methods

Chapter 23 Events

Chapter 24 User-Defined Conversions

Chapter 25 Operator Overloading

Chapter x Nullable Types

Chapter 26 Other Language Details (including partial classes and inline warning control)

Chapter 27 Making Friends with the .NET Frameworks

Chapter 28 System.Array and the Collection Classes (including System.Collections.Generics)

Chapter 29 Threading and Asynchronous Operations

Chapter 30 Execution-Time Code Generation

Chapter 31 Interop (including fixed size buffers)

Chapter 32 .NET Frameworks Overview

Chapter 33 Windows Forms

Chapter 34 DiskDiff: More Sophistication

Chapter 35 DiskDiff: Making It Useful

Chapter 36 Deeper into C#

Chapter 37 Defensive Programming

Chapter 38 The Command Line Compiler

Chapter 39 C# Compared to Other Languages

Chapter 40 C# Resources and Futures