Friday, November 13, 2009

Welcome to Imperfect C#

This blog will contain information about, and some discussions from, the preparation and publication of the new book, Imperfect C#, by Matthew Wilson, Chris Oldwood, John O'Halloran, and friends, which will be published next year (2010).

As is fairly obvious from the title, the book is inspired by Matthew's 2004 book Imperfect C++. It will follow its elder brother in broad style, but, partly because the C# language allows it, and partly because we've tried hard to make it so, the imperfections will be smaller than the average Imperfect C++ one.

Our current - subject to change - thinking is that we'll split the book into the following major topic groupings:

  • Basic Types
  • Collections
  • Strings
  • Multithreading
  • Performance
  • Frameworks
  • Accomodating Machiavelli?
Some of the imperfections already written include:

  • WhatDoAllTheAcronymsMean
  • CannotCompareExchangeWithEnums
  • Cannot RethrowFromFunctionExtensionMethodDeclaringClassNamesClash
  • No StaticExtensionMethods
  • StringJoinNotFlexible
  • StringSplitNotExpressive
  • ComRuntimeWrappersCannotBeOverloaded
Watch this space for more news soon ...