0% found this document useful (0 votes)
20 views

Professional C 3rd ed Edition Simon Robinson instant download

The document provides information about the book 'Professional C# 3rd Edition' by Simon Robinson and others, detailing its content, authors, and publication details. It includes links to download the book and other recommended products from the same website. The book covers various aspects of C# programming and the .NET framework, aimed at developers looking to enhance their skills.

Uploaded by

ipinbonji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Professional C 3rd ed Edition Simon Robinson instant download

The document provides information about the book 'Professional C# 3rd Edition' by Simon Robinson and others, detailing its content, authors, and publication details. It includes links to download the book and other recommended products from the same website. The book covers various aspects of C# programming and the .NET framework, aimed at developers looking to enhance their skills.

Uploaded by

ipinbonji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Professional C 3rd ed Edition Simon Robinson

download

https://ebookultra.com/download/professional-c-3rd-ed-edition-
simon-robinson/

Explore and download more ebooks or textbooks


at ebookultra.com
Here are some recommended products for you. Click the link to
download, or explore more at ebookultra.com

Professional JavaScript for Web Developers 3rd Edition


Nicholas C. Zakas

https://ebookultra.com/download/professional-javascript-for-web-
developers-3rd-edition-nicholas-c-zakas/

The treatment of epilepsy 3rd ed Edition Simon D. Shorvon

https://ebookultra.com/download/the-treatment-of-epilepsy-3rd-ed-
edition-simon-d-shorvon/

Professional JavaScript for web developers 2nd ed Edition


Nicholas C. Zakas

https://ebookultra.com/download/professional-javascript-for-web-
developers-2nd-ed-edition-nicholas-c-zakas/

Dairy Microbiology Handbook The Microbiology of Milk and


Milk Products 3rd Edition Richard K. Robinson (Ed.)

https://ebookultra.com/download/dairy-microbiology-handbook-the-
microbiology-of-milk-and-milk-products-3rd-edition-richard-k-robinson-
ed/
Mozart 1 ed. Edition Simon P. Keefe (Ed.)

https://ebookultra.com/download/mozart-1-ed-edition-simon-p-keefe-ed/

Financial Modeling 3rd Edition Simon Benninga

https://ebookultra.com/download/financial-modeling-3rd-edition-simon-
benninga/

Timber Designers Manual 3rd ed Edition E. C. Ozelton

https://ebookultra.com/download/timber-designers-manual-3rd-ed-
edition-e-c-ozelton/

Handbook of Biodegradable Polymers 3rd Edition Bastioli C.


(Ed.)

https://ebookultra.com/download/handbook-of-biodegradable-
polymers-3rd-edition-bastioli-c-ed/

An Introduction to Ordinary Differential Equations James


C. Robinson

https://ebookultra.com/download/an-introduction-to-ordinary-
differential-equations-james-c-robinson/
Professional C 3rd ed Edition Simon Robinson Digital
Instant Download
Author(s): Simon Robinson; et al
ISBN(s): 9780764571961, 0764571966
Edition: 3rd ed
File Details: PDF, 12.41 MB
Year: 2004
Language: english
Professional C#

Third Edition

Simon Robinson
Christian Nagel
Jay Glynn
Morgan Skinner
Karli Watson
Bill Evjen
Professional C#

Third Edition
Professional C#

Third Edition

Simon Robinson
Christian Nagel
Jay Glynn
Morgan Skinner
Karli Watson
Bill Evjen
Professional C#, Third Edition
Published by
Wiley Publishing, Inc.
10475 Crosspoint Boulevard
Indianapolis, IN 46256
www.wiley.com
Copyright © 2004 by Wiley Publishing, Inc., Indianapolis, Indiana. All rights reserved.
Published simultaneously in Canada
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by
any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted
under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission
of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clear-
ance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the
Publisher for permission should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Cross-
point Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4447, E-mail: permcoordinator@wiley.com.

LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE


NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS
OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING
WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY
MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND
STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS
SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING
LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS
REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT.
NEITHER THE PUBLISHER NOT THE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HERE-
FROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A
CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT
THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR
WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD
BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAP-
PEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.

For general information on our other products and services please contact our Customer Care Department
within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.
Trademarks: Wiley, the Wiley Publishing logo, Wrox, the Wrox logo, and Programmer to Programmer are
trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates. All other trademarks
are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or
vendor mentioned in this book.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not
be available in electronic books.
Library of Congress Control Number: 2004103177
ISBN: 0-7645-5759-9
Printed in the United States of America
10 9 8 7 6 5 4 3 2 1
About the Authors
Simon Robinson
Simon Robinson is the editor-in-chief of ASP Today, one of the leading sites
related to Web programming on the Windows platform.

Simon’s first experience of commercial computer programming was in the


early 1980s, when a computer project he was working on at college became
the school’s student timetabling program, running on the BBC Micro. Later
he studied for a Ph.D. in physics and subsequently spent a couple of years
working as a university physics researcher. From there he moved on to work-
ing as a computer programmer, then writing books about programming, and
finally on to his present job at ASP Today.

He has an extremely broad experience of programming on Windows. These days his core specialty is .NET
programming. He is comfortable coding in C++, C#, VB, and IL, and has skills ranging from graphics and
Windows Forms to ASP.NET to directories and data access to Windows services and the native Windows API.

Simon lives in Lancaster, UK. His outside interests include theater, dance, performing arts, and politics.
You can visit Simon’s Web site, http://www.SimonRobinson.com.

Christian Nagel
Christian Nagel is an independent software architect and developer who
offers training and consulting on how to design and develop Microsoft .NET
solutions. He looks back to more than 15 years’ experience as a developer
and software architect. Christian started his computing career with PDP 11
and VAX/VMS platforms, covering a variety of languages and platforms.
Since the year 2000—when .NET was just a technology preview—he has
been working with various .NET technologies to build distributed solutions.
With his profound knowledge of Microsoft technologies, he has also written
numerous .NET books; is certified as Microsoft Certified Trainer (MCT),
Solution Developer (MCSD), and Systems Engineer (MCSE); and is the
Microsoft Regional Director for Austria. Christian is a speaker at international conferences (TechED,
DevDays, VCDC) and is the regional manager of INETA Europe (International .NET User Group
Association) supporting .NET user groups. You can contact Christian via his Web site,
http://www.christiannagel.com.

Jay Glynn
Jay Glynn started writing software nearly 20 years ago, writing applications
for the PICK operating system using PICK basic. Since then, he has created
software using Paradox PAL and Object PAL, Delphi, VBA, Visual Basic, C,
C++, Java, and of course C#. He is currently a Project coordinator and
Architect for a large financial services company in Nashville, Tennessee,
working on software for the TabletPC platform. He can be
contacted at jlsglynn@hotmail.com.
Morgan Skinner
Morgan Skinner began his computing career at a tender age on a Sinclair
ZX80 at school, where he was underwhelmed by some code a teacher had
written and so began programming in assembly language. After getting
hooked on Z80 (which he believes is far better than those paltry 3 registers on
the 6502), he graduated through the school’s ZX81s to his own ZX Spectrum.

Since then he’s used all sorts of languages and platforms, including VAX
Macro Assembler, Pascal, Modula2, Smalltalk, X86 assembly language,
PowerBuilder, C/C++, VB, and currently C#. He’s been programming in
.NET since the PDC release in 2000, and liked it so much, he joined Microsoft in 2001. He now works in
Premier Support for Developers and spends most of his time assisting customers with C#.

You can reach Morgan at http://www.morganskinner.com.

Karli Watson
Karli Watson is a freelance author and the technical director of 3form Ltd
(http://www.3form.net). Despite starting out by studying nanoscale
physics, the lure of cold, hard cash proved too much and dragged Karli into
the world of computing. He has since written numerous books on .NET and
related technologies, SQL, mobile computing, and a novel that has yet to see
the light of day (but that doesn’t have any computers in it). Karli is also
known for his multicolored clothing, is a snowboarding enthusiast, and still
wishes he had a cat.

Bill Evjen
Bill Evjen is an active proponent of the .NET technologies and community-
based learning initiatives for .NET. He has been actively involved with .NET
since the first bits were released in 2000 and has since become president of
the St. Louis .NET User Group (http://www.stlusergroups.org). Bill is
also the founder and executive director of the International .NET ssociation
(http://www.ineta.org), which represents more than 125,000 members
worldwide. Based in St. Louis, Missouri, USA, Bill is an acclaimed author
and speaker on ASP.NET and XML Web services. He has written XML Web
Services for ASP.NET, Web Services Enhancements: Understanding the WSE for
Enterprise Applications, Visual Basic .NET Bible, and ASP.NET Professional
Secrets (all published by Wiley). Bill is a Technical Director for Reuters, the
international news and financial services company. He graduated from Western Washington University
in Bellingham, Washington, with a Russian language degree. You can reach Bill at evjen@yahoo.com.

Contributor
Allen Jones
Allen Jones has a career spanning 15 years that covers a broad range of IT disciplines, including enter-
prise management, solution and enterprise architecture, and project management. But software develop-
ment has always been Allen’s passion. Allen has architected and developed Microsoft Windows–based
solutions since 1990, including a variety of e-commerce, trading, and security systems.

Allen has co-authored four popular .NET books including the C# Programmer's Cookbook (Microsoft
Press) and Programming .NET Security (O’Reilly), and he is actively involved in the development of
courseware for Microsoft Learning covering emerging .NET technologies.
Credits
Vice President and Executive Group Publisher Editorial Manager
Richard Swadley Kathryn A. Malm

Vice President and Executive Publisher Development Editor


Bob Ipsen Sharon Nash

Vice President and Publisher Production Editor


Joseph B. Wikert Eric Newman

Executive Editorial Director Text Design & Composition


Mary Bednarek Wiley Indianapolis Composition Services

Acquisitions Editors
Sharon Cox
Katie Mohr
Contents

Introduction xxvii

Part I: The C# Language 1

Chapter 1: .NET Architecture 3


The Relationship of C# to .NET 4
The Common Language Runtime 4
Advantages of Managed Code 4
A Closer Look at Intermediate Language 7
Support for Object Orientation and Interfaces 8
Distinct Value and Reference Types 9
Strong Data Typing 9
Error Handling with Exceptions 16
Use of Attributes 17
Assemblies 17
Private Assemblies 18
Shared Assemblies 19
Reflection 19
.NET Framework Classes 19
Namespaces 21
Creating .NET Applications Using C# 21
Creating ASP.NET Applications 21
Creating Windows Forms 24
Windows Services 24
The Role of C# in the .NET Enterprise Architecture 24
Summary 26

Chapter 2: C# Basics 29
Before We Start 30
Our First C# Program 30
The Code 30
Compiling and Running the Program 31
Contents
A Closer Look 31
Variables 34
Initialization of Variables 34
Variable Scope 35
Constants 38
Predefined Data Types 39
Value Types and Reference Types 39
CTS Types 40
Predefined Value Types 41
Predefined Reference Types 44
Flow Control 47
Conditional Statements 47
Loops 51
Jump Statements 54
Enumerations 55
Arrays 57
Namespaces 58
The using Statement 59
Namespace Aliases 60
The Main() Method 61
Multiple Main() Methods 61
Passing Arguments to Main() 62
More on Compiling C# Files 63
Console I/O 65
Using Comments 67
Internal Comments Within the Source Files 67
XML Documentation 68
The C# Preprocessor Directives 70
#define and #undef 70
#if, #elif, #else, and #endif 71
#warning and #error 72
#region and #endregion 72
#line 72
C# Programming Guidelines 73
Rules for Identifiers 73
Usage Conventions 74
Summary 81

Chapter 3: Objects and Types 83


Classes and Structs 84
Class Members 85
Data Members 85
Function Members 85
x
Contents
readonly Fields 99
Structs 101
Structs Are Value Types 102
Structs and Inheritance 103
Constructors for Structs 103
The Object Class 104
System.Object Methods 104
The ToString() Method 105
Summary 107

Chapter 4: Inheritance 109


Types of Inheritance 109
Implementation Versus Interface Inheritance 109
Multiple Inheritance 110
Structs and Classes 110
Implementation Inheritance 111
Virtual Methods 112
Hiding Methods 113
Calling Base Versions of Functions 114
Abstract Classes and Functions 115
Sealed Classes and Methods 115
Constructors of Derived Classes 116
Modifiers 122
Visibility Modifiers 122
Other Modifiers 123
Interfaces 123
Defining and Implementing Interfaces 125
Derived Interfaces 128
Summary 130

Chapter 5: Operators and Casts 131


Operators 131
Operator Shortcuts 133
The Ternary Operator 134
The checked and unchecked Operators 134
The is Operator 135
The as Operator 136
The sizeof Operator 136
The typeof Operator 136

xi
Contents
Operator Precedence 137
Type Safety 137
Type Conversions 138
Boxing and Unboxing 141
Comparing Objects for Equality 142
Comparing Reference Types for Equality 142
The ReferenceEquals() Method 142
The virtual Equals() Method 143
The static Equals() Method 143
Comparison Operator (==) 143
Comparing Value Types for Equality 143
Operator Overloading 144
How Operators Work 145
Operator Overloading Example: The Vector Struct 146
Which Operators Can You Overload? 153
User-Defined Casts 154
Implementing User-Defined Casts 155
Multiple Casting 161
Summary 165

Chapter 6: Delegates and Events 167


Delegates 167
Using Delegates in C# 169
SimpleDelegate Example 172
BubbleSorter Example 174
Multicast Delegates 177
Events 179
The Receiver’s View of Events 180
Generating Events 182
Summary 186

Chapter 7: Memory Management and Pointers 187


Memory Management under the Hood 187
Value Data Types 188
Reference Data Types 190
Garbage Collection 192
Freeing Unmanaged Resources 193
Destructors 193
The IDisposable Interface 195

xii
Random documents with unrelated
content Scribd suggests to you:
small donations ($1 to $5,000) are particularly important to
maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws regulating


charities and charitable donations in all 50 states of the United
States. Compliance requirements are not uniform and it takes a
considerable effort, much paperwork and many fees to meet and
keep up with these requirements. We do not solicit donations in
locations where we have not received written confirmation of
compliance. To SEND DONATIONS or determine the status of
compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where


we have not met the solicitation requirements, we know of no
prohibition against accepting unsolicited donations from donors in
such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make


any statements concerning tax treatment of donations received from
outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.

Section 5. General Information About


Project Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could be
freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose network of
volunteer support.
Project Gutenberg™ eBooks are often created from several printed
editions, all of which are confirmed as not protected by copyright in
the U.S. unless a copyright notice is included. Thus, we do not
necessarily keep eBooks in compliance with any particular paper
edition.

Most people start at our website which has the main PG search
facility: www.gutenberg.org.

This website includes information about Project Gutenberg™,


including how to make donations to the Project Gutenberg Literary
Archive Foundation, how to help produce our new eBooks, and how
to subscribe to our email newsletter to hear about new eBooks.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookultra.com

You might also like