Damien Watkins is the founder of Project 42, a consulting company specializing in the development of Component Based Systems for the Internet. Until 2002 he was a lecturer at Monash University in Melbourne, Australia. Damien became involved with the development of the .NET Framework in 1998 when Microsoft invited Monash University to join Project 7, an early access program for .NET.
Mark Hammond has been an independent software consultant since 1995. He has produced many of the Windows extensions for Python, including PythonWin, Active Scripting and Active Debugging support, and coauthored the Python/COM framework and extensions. In 2000 he published his first book, Python Programming on Win32, and from 1999 through 2001 developed the first .NET implementation of the Python language.
Brad Abrams was a founding member of both the Common Language Runtime and .NET Framework teams at Microsoft, where he is currently a Lead Program Manager. Brad has been involved with WinFX and Windows Vista efforts from the beginning. His primary role is to ensure consistency and developer productivity of the .NET Framework through Vista and beyond. His popular blog can be found at http://blogs.msdn.com/BradA/.
Note: Each chapter concludes with a Summary | |
Foreword | |
Preface | |
Introducing the .NET Framework | |
Programming Issues | |
Programming in the Small | |
Programming in the Large | |
Solutions | |
Comparing the .NET Framework and IDL-Based Systems | |
Elements of the .NET Framework | |
Common Language Runtime | |
Base Framework | |
Exposing the .NET Framework | |
Windows Clients | |
ASP.NET: Web Forms | |
ASP.NET: Web Services | |
Terminology | |
The Type System | |
The Metadata System | |
The Execution System | |
Example: Hello World | |
The Type System | |
The Relationship Between Programming Languages and Type Systems | |
The Evolution of Type Systems | |
Programming Language-Specific Type Systems | |
The Design Challenge: Development of a Single Type System for Multiple Languages | |
CLR-Programming Language Interaction: An Overview | |
Elements of the CLR Type System | |
Value Types | |
Built-in Value Types | |
User-Defined Value Types | |
Reference Types | |
Object Types | |
Interface Types | |
Pointer Types | |
Example: User-Defined Object Type | |
Example: Use of Interfaces on Value Types | |
Assignment Compatibility | |
Nested Types | |
Visibility | |
Accessibility | |
The Metadata System | |
Medata Issues | |
Saving Metadata About Types: IDL Files | |
Reflection: Inspection of a Type's Metadata | |
Reflection Classes | |
Example: Using Reflection | |
Example: Use of Type as an Abstract Type | |
Metadata Tools and Extensions | |
A Tool for Reading Metadata | |
Metadata Extensibility | |
Dynamic Discovery of Types | |
Assemblies and Manifests | |
Meta-Programming | |
Metadata File Format | |
COM Interop | |
The Execution System | |
The Execution System Versus OtherComponent Models | |
Intermediate Language | |
Example: Generating Intermediate Language | |
Verification of Intermediate Language | |
Starting a CLR Program | |
COR Debugger | |
Application Domains | |
Memory Management | |
Value Types Versus Reference Types | |
Garbage Collection | |
Security | |
Role-Based Security | |
Evidence-Based Security | |
Policy Manager | |
Code Groups | |
Named Permission Sets | |
Policy Assemblies | |
Examining Policy Levels and Permission Sets | |
Stack Walks | |
Declarative and Imperative Style | |
Building Applications | |
Existing Technologies to Solve Application-Related Problems | |
Well-Known Locations | |
Search Paths | |
Symbolic Names | |
Versioning-Related Technologies | |
Windows Registry | |
Assemblies | |
Example: A Simple Assembly | |
Version 1 of AboutBox | |
Building the Assembly with nmake and makefile | |
Functioning of the makefile | |
Embedded and Linked Resources | |
Example: A .NET Assembly with Embedded Resources | |
Example: A .NET Assembly with Linked Resources | |
The Assembly Linker | |
Public and Private Assemblies | |
Strong Names | |
Assembly Caches | |
Example: Creating and Using Public Assemblies | |
Assembly Versioning | |
Example: Building a Second Version of an Assembly | |
Table of Contents provided by Publisher. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.