CLR via C#, Second Edition (Pro Developer)

CLR via C#, Second Edition (Pro Developer)
by Jeffrey Richter

CLR via C#, Second Edition (Pro Developer)
List Price: $59.99
Our Price: $15.04
You Save: $44.95 (75%)
Availability: Usually ships in 1-2 business days
Buy Used: from $3.42 (click here)
Category: Book
See more book details and other editions


or

Book Summary Information

Author: Jeffrey Richter
Edition: Paperback
Audio: English (Unknown); English (Original Language); English (Published)
Published: 2006-03-22
ISBN: 0735621632
Number of pages: 736
Publisher: Microsoft Press

Book Reviews of CLR via C#, Second Edition (Pro Developer)

Book Review: Are you a .NET developer? What? You haven't read this book?
Summary: 5 Stars

Possess a driving license? That probably means you know the mechanics that makes cars work. Thereby the skill necessary to ferry ourselves to and from places in daily life.

Wait, what has this gotta do with reviewing a technical computing book?

Well, you knew incorrect air pressure worsens tyre grip, accelerates wear & tear, and reduces fuel efficient, right? You knew improper engine tuning may lead to unsynchronized valve and spark plug timings, resulting in severe loss of power, right? You knew air bubbles in brake fluid can result in inconsistent application of brakes and uneven deceleration, right? Ah, so many important factors of physics revolving around the science and engineering of motoring. Yet so subtle and unknown by the vast majority of motorists. And ignored. Never realising what performance-leaking sins they commit against their cars.

This very book will expose the fact that you are effectively guilty of the same level of ignorance with the .NET CLR as you go about your daily programming work.

There are tons of titles covering the use of technologies and frameworks that build on top of Microsoft's .NET Framework. By and large they are fine, fulfilling the needs of developers as they work on the real purposes of their jobs - delivering beneficial (or entertaining) value to users and industries. But so few step into that deeper realm to discuss the very thing that makes this all possible. The very heart of the .NET framework, at its core, the mighty execution engine known as the CLR. Jeffery Richter takes a different approach by removing the shroud of magic surrounding the CLR and the C# compiler, exhibiting the internals and explaining all the little crucial activitites it does behind the scenes so that programmers can carelessly forget and not bother.

He organises the book into five parts and twenty four chapters of excrutiating detail:

Part 1 CLR Basics
Chapter 1 The CLR's Execution Model
Chatper 2 Building, Packaging, Deploying, and Administering Applications and Types
Chatper 3 Shared Assemblies and Strongly Named Assemblies
Part 2 Working with Types
Chapter 4 Type Fundamentals
Chapter 5 Primitive, Reference, and Value Types
Part 3 Designing Types
Chaper 6 Type and Member Basics
Chapter 7 Constants and Fields
Chapter 8 Methods: Constructors, Operators, Conversions, and Parameters
Chapter 9 Properties
Chapter 10 Events
Part 4 Essential Types
Chapter 11 Chars, Strings, and Text
Chapter 12 Enumerated Types and Bit Flags
Chapter 13 Arrays
Chapter 14 Interfaces
Chapter 15 Delegates
Chapter 16 Generics
Chapter 17 Custom Attributes
Chapter 18 Nullable Value Types
Part 5 CLR Facilities
Chapter 19 Exceptions
Chapter 20 Automatic Memory Management (Garbage Collection)
Chapter 21 CLR Hosting and AppDomains
Chapter 22 Assembly Loading and Reflection
Chapter 23 Performing Asynchronous Operations
Chapter 24 Thread Synchronization

Take a good look at this list topics, and honestly ask yourself if you know everything about how the CLR facilitates all these? Most approach the CLR as a black box - I knew myself to be one - and in result only knew what was sufficient to work with it, which in turn developed quite a number of misconceptions about it. Jeffery Richter goes through chapter by chapter and puts me through a constant pace of surprises, shocks, and pure enlightenment. He goes as low a level as the CLR can operate, and communicates in terms of memory locations, CPU registers, and gives the repeated impression that many of the CLR automated activities we take for granted has a performance cost. The material he writes about are astounding and sometimes downright shocking. It goes an extremely long way to remove whatever misconceptions you may have about the CLR or compiler, influencing you to rethink about many of the habits and practices you have now.

Challenge some examples. Just a small number of matters. Did you know C# constants are really only good for referencing within its own assembly? Any referencing and use of constants in other assemblies are hardcoded at the MSIL level. Do you know the exact garbage collection sequence the CLR takes to identify generations of orphaned objects and housekeep the memory? What does it take to resurrect an object from the Freachable queue? Why are finalizers generally not recommended? How would you compare strings with the added dimensions of encoding and globalization cultures? How do you construct strings and convert types to and from strings? What are the implications of unboxing a Value-type object from a Reference-type variable and assigning values? Did you know an assembly need not necessarily be just a single .DLL file? How does the metadata for your types turn out in the assemblies as the compiler emits the IL equivalent of your code?

Each chapter brings to light information you never knew you needed to know. As much as possible, Jeffery Richter provides code samples and programs to demonstrate his points and prove the effect. He not only provides the information, but lists many alternative ways to achieving a said effect, along with pros and cons for each method. He is here to explain, not to sell the CLR, and does not hold back on what he honestly thinks are design flaws by Microsoft. At almost every junction, you will feel vulnerable by the knowledge he passes to you. If you ever felt snotty and arrogant over your knowledge of the .NET Framework, this book is the antidode to humble yourself. If you ever positioned yourself to learn more about .NET, you will surely rejoice with gladness.

For all the great depth to be had throughout the book, a topic that I found notably absent is how the CLR actually performs interoperability with unmanaged layers in the OS. There is only a brieft touch on it in the first chapter. The WIN32 and COM platforms are still cornerstones of Windows development; it would have been ideal for developers like myself who began development after the advent of the .NET Framework.

Even then, this is one book you'd repeatedly refer for years to come to double check you don't commit another subtle mistake. By the time you are half way or perhaps even a third way through this rich material, you would have understood the term "managed code" is a literal description and not a marketing buzzword at all.

Overall rating: 10/10
Good: In-depth tour under the hood; shocking revelations; you were wrong, and will rethink;
Bad: No true chapter and detailing of P/Invoke and COM interop mechanics; seriously, why is this not in the SDK?

Summary of CLR via C#, Second Edition (Pro Developer)

Dig deep and master the intricacies of the common language runtime (CLR) and the .NET Framework. Written by a highly regarded programming expert and consultant to the Microsoft .NET team, this guide is ideal for developers building any kind of application—including Microsoft ASP.NET, Windows Forms, Microsoft SQL Server, Web services, and console applications. You?ll get hands-on instruction and extensive code C# code samples to help you tackle the tough topics and develop high-performance applications.

Discover how to:

  • Build, deploy, administer, and version applications, components, and shared assemblies
  • Design types using constants, fields, constructors, methods, properties, and events
  • Work effectively with the CLR?s special types including enumerators, arrays, and strings
  • Declare, create, and use delegates to expose callback functions
  • Define and employ re-usable algorithms with interfaces and generics
  • Define, use, and detect custom attributes
  • Use exception handling to build robust, reliable, and security-enhanced components
  • Manage memory automatically with the garbage collector and work with native resources
  • Apply CLR Hosting, AppDomains, assembly loading, and reflection to build dynamically extensible applications

PLUS—Get code samples on the Web

Networking Books

Book Subjects
Most talked about in Networking Books
Business Applications Software: For the IBM Personal Computer ImageBusiness Applications Software: For the IBM Personal Computer
by Lon Ingalsbe
Maxwell Macmillan International; Published: 1991-05; Paperback; Book
Sams Teach Yourself Networking in 24 Hours ImageSams Teach Yourself Networking in 24 Hours
by Macmillan Publishing, MacMillan General Reference
MacMillan Publishing Company; Published: 1998-07-01; Hardcover; Book
Price in other shops: $19.98
Glencoe Computer Applications and Keyboarding ImageGlencoe Computer Applications and Keyboarding
by Rice
Glencoe/Mcgraw-Hill; Published: 1998-01; Hardcover; Book
Best price: $4.73
ISDN and Broadband ISDN ImageISDN and Broadband ISDN
by William Stallings
MacMillan Publishing Company.; Published: 1991-12; Hardcover; Book
Best price: $8.00
Price in other shops: $62.00
Networking Using Novell Netware Release 3.11 ImageNetworking Using Novell Netware Release 3.11
by Emilio Ramos, Al Schroeder, Ann Beheler
Macmillan Pub Co; Published: 1993-09-29; Spiral-bound; Book
Best price: $156.00
Mastering Microsoft Windows Server 2008 R2 ImageMastering Microsoft Windows Server 2008 R2
by Mark Minasi, Darril Gibson, Aidan Finn, Wendy Henry, Byron Hynes
Sybex; Published: 2010-02-02; Paperback; Book
Best price: $33.24
Price in other shops: $59.99
Storage Area Networks For Dummies ImageStorage Area Networks For Dummies
by Christopher Poelker, Alex Nikitin
For Dummies; Published: 2009-01-09; Paperback; Book
Best price: $16.30
Price in other shops: $29.99
Smart Homes For Dummies ImageSmart Homes For Dummies
by Danny Briere, Pat Hurley
John Wiley & Sons; For Dummies; Published: 2007-07-23; Paperback; Book
Best price: $3.32
Price in other shops: $21.99
Essential JavaScript for Web Professionals ImageEssential JavaScript for Web Professionals
by Dan Barrett, Dan Livingston, Micah Brown
Prentice Hall Ptr; Published: 1999-08-03; Paperback; Book
Best price: $2.25
Price in other shops: $29.99
Cisco CCNP Test Yourself Practice Exams ImageCisco CCNP Test Yourself Practice Exams
by Syngress Media
Computing Mcgraw-Hill; Published: 1999-10-11; Paperback; Book
Best price: $17.83
Price in other shops: $39.99
Similar Books and other products
WPF 4 Unleashed ImageWPF 4 Unleashed
by Adam Nathan
Sams; Published: 2010-06-14; Paperback; Book
Best price: $32.50
Price in other shops: $59.99
Head First Design Patterns ImageHead First Design Patterns
by Elisabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson
O'Reilly Media; Published: 2004-11-01; Paperback; Book
Best price: $23.88
Price in other shops: $49.99
Code Complete: A Practical Handbook of Software Construction ImageCode Complete: A Practical Handbook of Software Construction
by Steve McConnell
Microsoft; Microsoft Press; Published: 2004-07-07; Paperback; Book
Best price: $27.54
Price in other shops: $49.99
Windows Presentation Foundation Unleashed (WPF) ImageWindows Presentation Foundation Unleashed (WPF)
by Adam Nathan
Sams; Published: 2006-12-31; Paperback; Book
Best price: $14.99
Price in other shops: $59.99
C# 3.0 Cookbook ImageC# 3.0 Cookbook
by Jay Hilyard, Stephen Teilhet
O'Reilly Media; Published: 2008-01-11; Paperback; Book
Best price: $17.54
Price in other shops: $54.99
Debugging Microsoft  .NET 2.0 Applications ImageDebugging Microsoft .NET 2.0 Applications
by John Robbins
Microsoft Press; Published: 2006-11-08; Paperback; Book
Best price: $11.99
Price in other shops: $49.99
Design Patterns: Elements of Reusable Object-Oriented Software ImageDesign Patterns: Elements of Reusable Object-Oriented Software
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Addison-Wesley Professional; Published: 1994-11-10; Hardcover; Book
Best price: $35.45
Price in other shops: $59.99
Pro C# 2010 and the .NET 4 Platform ImagePro C# 2010 and the .NET 4 Platform
by Andrew Troelsen
Apress; Published: 2010-05-14; Paperback; Book
Best price: $53.29
Price in other shops: $59.99
C# 4.0 in a Nutshell: The Definitive Reference ImageC# 4.0 in a Nutshell: The Definitive Reference
by Joseph Albahari, Ben Albahari
O'Reilly Media; Published: 2010-02-10; Paperback; Book
Best price: $26.41
Price in other shops: $49.99
CLR via C# ImageCLR via C#
by Jeffrey Richter
Microsoft Press; Published: 2010-02-11; Paperback; Book
Best price: $32.50
Price in other shops: $59.99