did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780201770186

Programming in the .NET Environment

by ; ;
  • ISBN13:

    9780201770186

  • ISBN10:

    0201770180

  • Edition: 1st
  • Format: Paperback
  • Copyright: 2002-11-06
  • Publisher: Addison-Wesley Professional
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $49.99

Summary

Not only does this book describe the goals and architecture of the .NET Framework, but it also demonstrates how it implements facilities and services to meet these goals. This book shows developers how to produce generic frameworks, libraries, classes, and tools to be used in the .NET Framework.

Author Biography

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/.



Table of Contents

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.

Supplemental Materials

What is included with this book?

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.

Excerpts

Developing large distributed software systems is a complex and interesting challenge. A number of architectures have emerged to simplify this task and to relieve developers of the burden of dealing with the many interoperability issues associated with creating such systems. This book focuses on one of those architectures, Microsoft's .NET Framework.An often-asked question is, "So whatisnew in the .NET Framework?" On one level, the answer is simple: "Not much." To put this answer into context, however, the same may be said of most recent software advancements. For example, C++ represented a significant step forward--but it was actually an amalgamation taking advantage of the object-oriented concepts of Simula 67 and the efficiency of C. Likewise, Java contained very little new science, with the concepts of virtual machines and class libraries having been commonplace for many years. So how, then, do these advancements contribute to the computing body of knowledge? Often they exploit synergy--that is, the combination of known technologies in a new and different manner that allows developers to bring together two powerful concepts in a single architecture. So it is with the .NET Framework. Although significant benefits can be gained by using the framework, many readers will be relieved to see that the environment includes many familiar concepts, although their implementation may have changed.For example, a major concept pervading the .NET Framework is object orientation. Recently, this paradigm has won enormous acceptance in many areas, ranging from graphic user interface (GUI) development to network programming. The .NET Framework supports all of the object-oriented concepts, including classification, information hiding, inheritance, and polymorphism. What is new in the .NET Framework is the elimination of language boundaries that have hampered object orientation in the past. The framework also extends these concepts in concert with other concepts. For example, inheritance can be subject to security constraints; just because you can use a type, it may not follow that you can subtype from that type. Intended Audience for This BookIt is important to understand the audience for whom this book was written so that you can know whether this book is for you. This book is targeted at software developers who wish to Understand the philosophy and architecture of the .NET Framework, Produce generic frameworks, libraries, classes, and tools to be used in the .NET Framework, and Use multiple languages to develop applications in the .NET Framework.As this book is geared toward software developers, it not only describes the goals and architecture of the .NET Framework but also demonstrates how the technology implements features and services to meet these goals. Understanding the philosophy and architecture of .NET is important for all distributed system developers, even if they do not use the .NET Framework. Why? Because the .NET Framework represents Microsoft's vision of distributed systems development for the Internet. By understanding the architecture of the .NET Framework, developers gain insight into the issues associated with distributed systems development and Microsoft's solution to these issues.Once developers have an understanding of the .NET Framework's architecture, the next step is to develop software that takes advantage of it. The .NET Framework is not an abstract programming model, but rather a full-featured system that allows developers to implement their solutions and then make them available to other developers in a robust and secure environment. As the .NET Framework is language agnostic, developers can use the right language to develop parts of a system and then merge these parts together at runtime, regardless of any language differences.So who is this booknotfor? It is not an introduction to programming; readers should have

Rewards Program