Get the in-depth reference and pragmatic, real-world insights you need to exploit the enhanced language features and core capabilities in Visual C# 2008. Programming expert Donis Marshall deftly helps you build your proficiency with language features such as classes, structs, and other fundamentals, and helps you advance your expertise with more-advanced topics such as debugging, threading, and memory management. Combining an incisive reference with code samples and best practices, this developer reference focuses on details of the C# language you need to build innovative solutions.
Chapter 1 Introduction
Who Is This Book For?
Organization of This Book
System Requirements
Technology Updates
Core Language
Chapter 1 Introduction to Microsoft Visual C# Programming
A Demonstration of Visual C# 2008
Common Elements in Visual C# 2008
C# Core Language Features
Types
Chapter 2 Types
Classes
Structures
Enumeration
Equivalence versus Identity
Class Refinement
Chapter 3 Inheritance
Inheritance Example
System.Object
Employee Class
Implementing Inheritance
Overriding Inherited Behavior
The new Modifier
Abstract Classes
Sealed Classes
Constructors and Destructors
Interfaces
Polymorphism
Casting
Attribute Inheritance
Visual Studio 2008
Core Skills
Chapter 4 Introduction to Visual Studio 2008
Migrating to Visual Studio 2008
Integrated Development Environment
Class Hierarchies
Code Editor
Code Snippets
Refactoring
Building and Deployment
Arrays and Collections
Chapter 5 Arrays and Collections
Arrays
Collections
LINQ
Chapter 6 Introduction to LINQ
C# Extensions
LINQ Essentials
LINQ to Objects
LINQ Operators
Generics
Chapter 7 Generics
Generic Types
Generic Methods
Constraints
Casting
Inheritance
Static Members
Enumerators
Chapter 8 Enumerators
Enumerable Objects
Generic Enumerators
Iterators
Operator Overloading
More C# Language
Chapter 9 Operator Overloading
Mathematical and Logical Operators
Conversion Operators
A Practical Example
Operator Overloading Internals
Delegates and Events
Chapter 10 Delegates and Events
Delegates
Anonymous Methods
Events
LINQ Programming
Chapter 11 LINQ Programming
LINQ to XML
LINQ to SQL
Chapter 12 Exception Handling
An Exception Example
A Standard Exception Model
Structured Exception Handling
System.Exception
Remote Exceptions
Unhandled Exceptions
Managing Exceptions in Visual Studio
Metadata and Reflection
Debugging
Chapter 13 Metadata and Reflection
Metadata
Reflection
Reflection and Generics
MSIL
Chapter 14 MSIL Programming
"Hello World" Application
Evaluation Stack
MSIL in Depth
Complex Tasks
Branching
Arrays
Arithmetic Instructions
Conversion Operations
Exception Handling
Miscellaneous Operations
Process Execution
Debugging with Visual Studio 2008
Chapter 15 Debugging with Visual Studio 2008
Debugging Overview
Debug Setup
Debug Settings
Breakpoints
Code Stepping
Debug Toolbar
Data Tips
Debug Windows
Tracing
DebuggerDisplayAttribute
DebuggerBrowsableAttribute
DebuggerTypeProxyAttribute
Dump Files
Advanced Debugging
Chapter 16 Advanced Debugging
DebuggableAttribute Attribute
Debuggers
Managed Debugger (MDbg)
WinDbg
Son of Strike (SOS)
Dumps
Memory Management
Threads
Exceptions
Symbols
Memory Management
Advanced Features
Chapter 17 Memory Management
Unmanaged Resources
Finalizers
IDisposable.Dispose
Weak Reference
The GC Class
Unsafe Code
Chapter 18 Unsafe Code
Unsafe Keyword
Summary
Appendix About the Author
Appendix Additional Resources for Developers from Microsoft Press
Visual Basic
Visual C#
Web Development
Data Access
.NET Framework
Other Developer Topics
Appendix More Great Developer Resources
Developer Step by Step
Developer Reference
Focused Topics
Title:
Programming Microsoft® Visual C#® 2008: The Language
Donis Marshall has over 20 years of experience in designing and building enterprise software utilizing Microsoft technologies for leading companies across industry segments. He is an endorsed trainer for Microsoft Global Learning Services, and has been training Microsoft developers and engineers for many years. Donis is the author of the Programming Microsoft Visual C# 2005, Programming Microsoft Visual C# 2008, and Solid Code, published by Microsoft Press.