Dr. S. R. Lasker Library Online Catalogue

Home      Library Home      Institutional Repository      E-Resources      MyAthens      EWU Home

Professional C# /

Professional C# / Simon Robinson ... [et al.]. - Birmingham, UK : Wrox Press, c2001. - xxi, 1311 p. : ill. ; 23 cm. - Programmer to programmer .

Includes index.

The Significance of .NET 1 --
Evolution vs Revolution 2 --
A Clean Slate 3 --
So What is .NET? 4 --
Advantages of .NET 5 --
Where C# Fits In 8 --
The New Developer Environment 9 --
What you Need to Write C# Code 10 --
What This Book Covers 11 --
Conventions 12 --
Customer Support 13 --
Chapter 1 .NET Architecture 15 --
Overview of .NET 16 --
What Happens When You Compile and Run a Program 17 --
Compilation 18 --
Execution 18 --
Benefits of Running as Managed Code 19 --
Intermediate Language 20 --
Classic Object-oriented programming 21 --
Value and Reference Types 22 --
Strong Typing 23 --
Summary of IL Features 24 --
Language Interoperability 24 --
Common Type System (CTS) 25 --
Common Language Specification (CLS) 27 --
The .NET Base Class Library 29 --
The Components of the .NET Framework 30 --
Assemblies 30 --
Namespaces 32 --
Application Domains 32 --
JIT Compilers 34 --
.NET Tools 35 --
The Garbage Collector 35 --
Exceptions 37 --
Security 38 --
Attributes 39 --
Reflection 39 --
Languages and Technologies 39 --
C# 40 --
C++ 40 --
J++ 41 --
VB 41 --
ASP 41 --
Scripting Languages 42 --
ADO/OLE DB 42 --
ADSI 42 --
COM and COM+ 42 --
Putting It All Together 42 --
A Historical Note 45 --
Chapter 2 Introduction to C# 49 --
The Development of C# 49 --
The Advent of Assembler 49 --
The C Programming Language 51 --
Enter VB 53 --
Java 54 --
C# 56 --
C# Compared to Other Languages 56 --
Using C# 60 --
An Overview of C#'s Features 65 --
Using the C# Compiler 67 --
Chapter 3 C# Basics 71 --
C# Data Types 73 --
New, Specialized Types in the CTS 74 --
Type Safety 74 --
C# Predefined Types 77 --
Value Types 78 --
Reference Types 82 --
Complex Types 85 --
Value Types 85 --
Reference Types 88 --
Type Conversions 93 --
Boxing and Unboxing 97 --
Variables 98 --
Identifiers 99 --
Variable Scope 100 --
Variable Modifiers 102 --
Constants 106 --
Operators 106 --
Operator Shortcuts 108 --
The Ternary Operator 109 --
checked and unchecked 110 --
is 111 --
sizeof 111 --
typeof 111 --
Operator Precedence 112 --
Flow Control 112 --
Conditional Statements 112 --
Looping 116 --
Jump Statements 118 --
The using Block Statement 120 --
Exception Handling 120 --
Program Structure 121 --
Classes 121 --
Namespaces 127 --
The Main Method 131 --
Compiling C# Files 133 --
Console I/O 135 --
XML Documentation 138 --
Chapter 4 Classes and Inheritance 143 --
Before We Begin 144 --
A Closer Look at Objects and Classes 144 --
Objects in Everyday Life 144 --
Objects in Programming 145 --
Example: The Authenticator Class 147 --
How Classes Are Implemented 151 --
Properties 158 --
Advantages of Properties 160 --
Inheritance 163 --
Inheritance in Everyday Life 163 --
Inheritance in C#: The Mortimer Phones Sample 164 --
Adding Inheritance 167 --
The Object Class 172 --
Class Hierarchy Diagrams 176 --
Virtual and Non-Virtual Methods 177 --
Abstract Functions and Base Classes 182 --
Sealed Classes and Methods 186 --
Calling Base Versions of Methods 187 --
Inheritance: Other Topics 189 --
OOP Program Architecture 190 --
Chapter 5 Object Oriented C# 195 --
Method Overloading 196 --
Defining Overloaded Methods 197 --
Calling Overloaded Methods 198 --
Requirements for Method Overloads 200 --
When to Use Overloading 201 --
Construction and Disposal 202 --
Constructors 202 --
Cleaning up: Destructors 218 --
IDisposable 220 --
Sample: DestructorDemo 221 --
What Happens in Memory: Reference and Value Variables 224 --
Structs 231 --
Operator Overloading 235 --
Indexers 246 --
Interfaces 250 --
Chapter 6 Advanced C# Topics 257 --
Errors and Exception Handling 258 --
Coding up an Exception 259 --
Example: SimpleExceptions 262 --
Nested Try Blocks 270 --
Exceptions Example: MortimerColdCall 272 --
User-Defined Casts 280 --
Example: The Currency Struct 281 --
Multiple Casting 288 --
Delegates 292 --
Using Delegates in C# 294 --
Simple Delegate Example 297 --
Example: BubbleSorter 299 --
Multicast Delegates 302 --
Events 304 --
The Consumer's View of Events 305 --
Events Sample: Console Notifications 307 --
The C# Preprocessor Directives 312 --
#define and #undef 313 --
#if, #elif, #else and #endif 313 --
#warning and #error 314 --
#region and #endregion 314 --
#line 315 --
Attributes 315 --
Unsafe Code 318 --
Pointers 319 --
Using Pointers to Optimize Performance 332 --
Creating Stack-based Arrays 332 --
Chapter 7 C# and the Base Classes 339 --
System.Object 340 --
Comparing Reference Objects for Equality 341 --
Comparing Value Types for Equality 343 --
String Handling 343 --
System.String 344 --
Building Strings 345 --
Regular Expressions 354 --
Introduction to Regular Expressions 355 --
Sample: RegularExpressionsPlayaround 355 --
Displaying Results 357 --
Matches, Groups, and Captures 359 --
Groups of Objects 361 --
Array Lists 361 --
Collections 363 --
Dictionaries 367 --
Custom Attributes 376 --
Writing Custom Attributes 377 --
The WhatsNewAttributes Sample 381 --
Reflection 384 --
The System.Type Class 384 --
Sample: TypeView 387 --
The Assembly Class 389 --
Completing the WhatsNewAttributes Sample 390 --
Threading 394 --
Applications with Multiple Threads 395 --
Manipulating Threads 396 --
The ThreadPlayaround Sample 398 --
Thread Priorities 401 --
Synchronization 402 --
Chapter 8 Programming in the .NET Environment 409 --
Visual Studio.NET 410 --
Creating A Project 412 --
Exploring and Coding a Project 423 --
Building a Project 434 --
Debugging 438 --
Other .NET Tools 441 --
WinCV 442 --
.NET Usage Guidelines 442 --
Naming Conventions 443 --
Use of Properties and Methods 446 --
Use of Fields 447 --
Chapter 9 Windows Applications 449 --
Architecture 450 --
Forms 452 --
Controls 454 --
Events and Delegates 458 --
Grouping Controls 462 --
Drawing Classes 463 --
Custom Controls 466 --
Menus 476 --
Dialog Boxes 477 --
Chapter 10 Assemblies 481 --
What are Assemblies? 481 --
The Answer to DLL-Hell 482 --
Features of Assemblies 483 --
Application Domains and Assemblies 484 --
Assembly Structure 486 --
Assembly Manifests 487 --
Namespaces, Assemblies, and Components 488 --
Private and Shared Assemblies 488 --
Viewing Assemblies 488 --
Building Assemblies 489 --
Cross Language Support 493 --
Language Independence in Action 494 --
CLS Requirements 502 --
Adding Resources to Assemblies 504 --
Creating Resource Files 504 --
Using Resource Files 506 --
Internationalization and Resources 509 --
Resources for Localization 514 --
Localization Example using Visual Studio.NET 514 --
Global Assembly Cache 523 --
Native Image Generator 524 --
Global Assembly Cache Viewer 524 --
Create Shared Assemblies 526 --
Shared Assembly Names 526 --
Creating a Shared Assembly 528 --
Configuration 532 --
Versioning 533 --
Configuring Directories 537 --
Deployment 540 --
Deployment of DLLs 540 --
Creating a Merge Module 540 --
Chapter 11 Data Access with .NET 543 --
ADO.NET Overview 543 --
Shared Classes 543 --
Database Specific Classes 544 --
Namespaces 544 --
Connections 545 --
Transactions 545 --
Commands 547 --
Executing Commands 547 --
Calling Stored Procedures 550 --
Data Readers 553 --
Data Sets 556 --
Data Tables 557 --
Data Relationships 563 --
Data Constraints 565 --
XML Schema 567 --
Populating a Data Set 578 --
Persisting Data Set Changes 580 --
Working with ADO.NET 584 --
Tiered Development 584 --
SQL Server Key Generation 585 --
Naming Conventions 588 --
Performance 589 --
Chapter 12 Viewing .NET Data 593 --
The DataGrid Control 593 --
Displaying Tabular Data 593 --
Data Sources 596 --
DataGrid Class Hierarchy 603 --
Data Binding 607 --
Simple Binding 607 --
Data Binding Objects 608 --
Visual Studio and Data Access 613 --
Creating a Connection 613 --
Selecting Data 615 --
Generating a DataSet 617 --
Building a Schema 618 --
Other Common Requirements 624 --
Chapter 13 XML 633 --
W3C Standards 634 --
The System.xml Namespace 634 --
XML 3.0 (MSXML3.DLL) in C# 635 --
System.Xml 640 --
Reading and Writing XML 640 --
Document Object Model in .NET 649 --
XML and ADO.NET 667 --
Serializing Objects in XML 683 --
Chapter 14 File and Registry Operations 697 --
Managing the File System 698 --
Example: A File Browser 702 --
Moving, Copying and Deleting Files 706 --
The FilePropertiesAndMovement Sample 707 --
Reading and Writing to Files 710 --
Streams 710 --
Reading and Writing to Binary Files 713 --
Reading and Writing to Text Files 718 --
Reading and Writing to the Registry 725 --
The Registry 725 --
The .NET Registry Classes 727 --
Sample: SelfPlacingWindow 730 --
Chapter 15 Working with the Active Directory 739 --
Architecture of the Active Directory 740 --
Features 740 --
Active Directory Concepts 741 --
Characteristics of Active Directory Data 746 --
Schema 747 --
Administration of the Active Directory 748 --
Active Directory Users and Computers 748 --
ADSI Edit 749 --
ADSI Viewer 750 --
Active Directory Service Interfaces (ADSI) 751 --
Programming the Active Directory 752 --
Classes in System.DirectoryServices 752 --
Binding 752 --
Getting Directory Entries 757 --
Object Collections 758 --
Cache 760 --
Updating Directory Entries 760 --
Creating New Objects 760 --
Searching in the Active Directory 761 --
Searching for User Objects 765 --
User Interface 765 --
Get the Schema Naming Context 766 --
Get the Property Names of the User Class 767 --
Search User Objects 769 --
Chapter 16 ASP.NET Pages 773 TOC



8173663491 1861004990 9781861004994

2002391301


C# (Computer program language)

QA76.73.C154 / P76 2001

005.133 / PRO 2001