Title:
C# developer's headstart
Personal Author:
Publication Information:
New York : Osborne/McGraw-Hill, 2001
ISBN:
9780072191165
Added Author:
Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000004826263 | QA76.73.C154 M52 2001 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
This text provides programmers with the answers they need in order to make vital decisions about code adoption and migration. It provides programmers with the answers they need in order to make vital decisions about code adoption and migration.
Table of Contents
Acknowledgments | p. xi |
Introduction | p. xiii |
Chapter 1 Introduction to C# | p. 1 |
The Component-based Model of Software Design | p. 2 |
The .NET Approach to Component-based Software Development | p. 5 |
What Is the .NET Framework | p. 6 |
.NET's Common Language Runtime | p. 6 |
.NET's Framework Class Libraries | p. 9 |
.NET Framework Tools and Utilities | p. 10 |
Why C# | p. 11 |
What Is C# | p. 13 |
Chapter 2 C# Language Review | p. 15 |
A Simple C# Program | p. 16 |
A Few More Comments on Main() | p. 17 |
Adding a Class to the Simple C# Program | p. 17 |
C# Types and Type Management | p. 18 |
Value Types | p. 19 |
Struct Type | p. 20 |
Enumerations | p. 22 |
Reference Types | p. 23 |
Type Comparisons | p. 25 |
Boxing and Unboxing | p. 25 |
Type Conversions | p. 26 |
Arrays | p. 27 |
Object-oriented Component Development in C# | p. 28 |
Object-oriented Features of C# | p. 29 |
Class Constructors and Destructors | p. 40 |
Methods | p. 42 |
Fields | p. 46 |
Properties | p. 46 |
Operator Overloading | p. 48 |
Delegates | p. 50 |
Events | p. 53 |
Namespaces in C# | p. 57 |
Declaring Namespaces | p. 58 |
Exceptions | p. 59 |
Attributes | p. 61 |
Indexers | p. 62 |
Writing Unsafe Code | p. 65 |
Documenting Code Using XML | p. 66 |
C# Coding Style | p. 68 |
Chapter 3 .NET, the Operating Environment for C# | p. 69 |
Microsoft IL | p. 70 |
How the CLR Gets Loaded | p. 72 |
.NET Building Blocks | p. 76 |
Modules | p. 76 |
Assemblies | p. 76 |
Application Domains | p. 77 |
Building Modules and Assemblies | p. 78 |
Robust Version Control | p. 79 |
Built-in Metadata | p. 84 |
Attribute-based Programming | p. 86 |
Reflection | p. 88 |
Cross-language Interoperability | p. 93 |
Common Language Specification | p. 94 |
Common Type System | p. 95 |
Object-oriented | p. 96 |
Delegation and Events | p. 98 |
Memory Management Through Garbage Collection | p. 98 |
Garbage Collection Step-by-Step | p. 100 |
Finalization | p. 102 |
Strong and Weak References | p. 105 |
Thread Synchronization | p. 107 |
Chapter 4 C# Language Comparisons | p. 109 |
Comparing C# to C++ | p. 110 |
Comparing C# to Visual Basic.NET | p. 127 |
Comparing C# to Java | p. 132 |
Chapter 5 Working Within the Bounds of C# | p. 143 |
Deterministic Finalization | p. 144 |
Releasing Resources Explicitly | p. 146 |
Variable Declaration with the using Keyword | p. 147 |
Reference Counting | p. 150 |
.NET Finalization | p. 153 |
Multiple Inheritance | p. 154 |
ATLs Multiple Inheritance In-depth | p. 155 |
Containment | p. 156 |
Interface Implementation | p. 160 |
Macros | p. 162 |
Combining Macros with Interface Inheritance | p. 162 |
Templates | p. 164 |
Source Code Security | p. 166 |
Chapter 6 Integrating Legacy Code with C# | p. 167 |
Integration Approaches | p. 168 |
Calling COM Objects from C# | p. 169 |
Using the TLBIMP Utility | p. 171 |
The Runtime Callable Wrapper | p. 172 |
Method Return Values and HRESULTs | p. 173 |
COM Object Lifetime and Deterministic Finalization | p. 174 |
Inheritance and RCW Objects | p. 174 |
COM Connection Points | p. 174 |
Threading of the RCW Components | p. 176 |
The COM Callable Wrapper, Calling .NET Objects from COM | p. 177 |
TLBEXP Utility | p. 178 |
REGASM | p. 184 |
COM Callable Wrapper | p. 185 |
Providing .NET Events to COM Clients | p. 187 |
Threading of .NET Components | p. 193 |
Additional COM Interoperability Attributes | p. 193 |
Additional .NET to Type Library Conversions | p. 194 |
Data Marshalling | p. 196 |
Strings and the MarshalAsAttribute | p. 196 |
Marshalling Objects | p. 197 |
Platform Invocation Services, Calling Unmanaged APIs from C# | p. 199 |
Interoperability Through Managed C++ | p. 201 |
Migrating Code | p. 210 |
Summary | p. 211 |
Index | p. 213 |