Introduction to C# Using .NET by Robert J. ObergIntroduction to C# Using .NET by Robert J. Oberg

Introduction to C# Using .NET

byRobert J. Oberg

Paperback | October 9, 2001

Pricing and Purchase Info

$42.28 online 
$51.99 list price save 18%
Earn 211 plum® points

Ships within 1-2 weeks

Ships free on orders over $25

Not available in stores

about

Get results with C#, with the hands-on C# introduction based on proven development experience from an expert practictioner. With Introduction to C# Using .NET, you'll learn C# object-oriented development step-by-step, by constructing a complete .NET "travel agency" system! Seasoned .NET instructor Robert J. Oberg covers key .NET database, Web, XML, and user interface classes -- plus collections, delegates, events, multithreading, attributes, and much more!
DR. ROBERT J. OBERG is the founder and President of Object Innovations, a leading developer of integrated courseware on fundamental software technologies including Microsoft .NET, COM/DCOM/COM+, OLE, MFC, and Java. His books include Understanding and Programming COM+ (Prentice Hall PTR).
The Silkworm
The Silkworm

by Robert Galbraith

$10.00$31.00

Out of stock online

Available in stores

The Enormous Suitcase
The Enormous Suitcase

by Robert Munsch

$5.00$7.99

In stock online

Available in stores

Year One: Chronicles Of The One, Book 1
Year One: Chronicles Of The One, Book 1

by Nora Roberts

$32.04$36.00

Pre-order online

Not yet available in stores

Shop this author
Title:Introduction to C# Using .NETFormat:PaperbackDimensions:480 pages, 9 × 6.9 × 1.1 inPublished:October 9, 2001Publisher:Pearson EducationLanguage:English

The following ISBNs are associated with this title:

ISBN - 10:0130418013

ISBN - 13:9780130418012

Customer Reviews of Introduction to C# Using .NET

Reviews

From the Author

PrefaceMicrosoft’s .NET is a revolutionary advance in programming technology that greatly simplifies application development and is a good match for the emerging paradigm of Webbased services as opposed to proprietary applications. Part of this technology is a new language, C#. This new language combines the power of C++ and the ease of development of Visual Basic(TM). It bears striking resemblance to Java(TM) and improves upon that language. C# may well become the dominant language for building applications on Microsoft(R) platforms.This book is a practical introduction to programming in C# utilizing the services provided by .NET. This book emphasizes the C# language. It is part of the Prentice Hall/Object Innovations series of books on .NET technology.This book is intended to be fully accessible to programmers who do not already have a strong background in objectoriented programming in Clike languages such as C++ or Java. It is ideal, for example, for Visual Basic or COBOL programmers who desire to learn C#. The book may also be read by more experienced programmers who desire a simple and concise introduction to C# with many example programs. It is structured so that more experienced programmers can cleanly skip the material they already know. Although designed for working professionals, the book includes enough detail, careful explanations and sample programs so that it can be useful as a college textbook.An important thrust of this book is to teach C# programming from an objectoriented perspective. It is often difficult for programmers trained originally in a procedural language to start "thinking in objects." This book introduces objectoriented concepts early, and C# is developed in a way that leverages its objectorientation. A banking system case study is used to illustrate creating a complete system using C# and .NET. Besides supporting traditional objectoriented features such as classes, inheritance, and polymorphism, C# introduces several additional features, such as properties, indexers, delegates, events, and interfaces that make C# a compelling language for developing objectoriented and componentbased systems. This book provides thorough coverage of all these features. C# as a language is elegant and powerful. But to fully utilize its capabilities you need to have a good understanding of how it works with the .NET Framework. The book explores several important interactions between C# and the .NET Framework, and it includes an introduction to major classes for collections, files, threads, and user interface.ORGANIZATIONThe book is organized into four major parts and is structured in a manner to make it easy for you to navigate to what you most need to know. Part 1, which should be read by everyone, begins with an introduction to the .NET Framework, which is the underpinning for all applications and services in the .NET environment. Next comes a short introduction to handson programming using C#, so that you can start writing code on .NET right away. The third chapter introduces Visual Studio.NET, the latest incarnation of Microsoft’s popular Visual Studio development environment. The new Visual Studio has many features that make application development easier and more pleasant. You will be equipped to use Visual Studio throughout the rest of the book.Part 2 covers the Clike features of C#, which are shared by C, C++, Java, and various scripting languages. Thus, if you know any of these Clike languages, you will have a definite leg up in learning C#, and you can quickly skim this section, paying attention to the information in the sidebars. A sidebar will alert you the first time a concept new to C# is introduced. Then you will know to look for further elaborations where they occur later. If you are not familiar with C or a similar language, this section is for you. It will quickly bring you up to speed on the core topics of data types, operators, and control structures.Part 3 is the core of the book, systematically covering the features of the C# programming language that go beyond C. The objectoriented features of C# are covered gradually and thoroughly, making this part of the book accessible to readers without OOP background. A case study is used, illustrating how the objectoriented features of C# work in combination. This case study is progressively built from Chapters 12 through 18. The C# data types, based on the .NET Common Type System, are explored in detail. We cover features new in C# such as properties and indexers. We cover practical issues of formatting and conversions, and we discuss the important topic of exceptions. We conclude this part with a study of interfaces, which provide a better level of abstraction in expressing system functionality.Part 4 explores thoroughly the relationships between C# and the .NET Framework and introduces some important .NET services. We introduce collections, which generalize arrays, and we examine fundamental operations such as copying and comparing objects. In .NET, interfaces are provided for such basic operations, which makes for a very flexible architecture, as different classes can implement these interfaces in a manner appropriate for them. The .NET Framework provides a very flexible callback mechanism, known as delegates, which has many applications. Delegates are the foundation of events, and they are also used in starting threads. We look at directories and files, multiple thread programming, and attributes. Attributes are a powerful mechanism in .NET, enabling the programmer to accomplish tasks declaratively, with writing little or no code. You can implement your own custom attributes in C#. You can read information about custom attributes, or any other metadata, by a mechanism known as "reflection." C# permits you to code at a lower level by writing "unsafe" code, which can help you interoperate with legacy code. The book concludes with introductions to components and to Windows programming.SAMPLE PROGRAMSThe only way to really learn a programming language is to read and write many, many programs, including some of reasonable size. This book provides many small programs that illustrate pertinent features of C# in isolation, where they are easy to understand. The programs are clearly labeled in the text, and they can all be found in the software distribution that accompanies this book. Directions for downloading the software are given below.There is also a major case study, that is progressively developed in Chapters 12 through 18. This case study illustrates many features of C# working together in combination, as they would in a practical application. A special point is made of demonstrating the objectoriented features of C#. If you are new to OO, studying the case study is a must!The sample programs are provided in a selfextracting file. When expanded, a directory structure is created rooted in c:\OI\CSharp. The sample programs are in directories Chap1, Chap2, etc. All the samples for a given chapter are in individual folders within the chapter directories. The names of the folders are clearly identified in the text. Each chapter that contains a step of the case study has a folder CaseStudy containing that step.This book is part of the Integrated .NET Series from Object Innovations and Prentice Hall PTR series. The sample programs for other books in the series are located in their own directory underneath c:\OI, so all the .NET examples from all books in the series will be located in a common area as you install them.EXERCISESAlthough exercises are not provided in the book itself, a comprehensive set of exercises is available for download from our website. WEBSITEThe website for the Integrated .NET Series from Object Innovations and Prentice Hall PTR series is:www.objectinnovations.com/dotnet.htmA link is provided at that website for downloading the sample programs.

Read from the Book

Preface Microsoft's .NET is a revolutionary advance in programming technology that greatly simplifies application development and is a good match for the emerging paradigm of Web-based services as opposed to proprietary applications. Part of this technology is a new language, C#. This new language combines the power of C++ and the ease of development of Visual Basic(TM). It bears striking resemblance to Java(TM) and improves upon that language. C# may well become the dominant language for building applications on Microsoft(R) platforms. This book is a practical introduction to programming in C# utilizing the services provided by .NET. This book emphasizes the C# language. It is part of the Prentice Hall/Object Innovations series of books on .NET technology. This book is intended to be fully accessible to programmers who do not already have a strong background in object-oriented programming in C-like languages such as C++ or Java. It is ideal, for example, for Visual Basic or COBOL programmers who desire to learn C#. The book may also be read by more experienced programmers who desire a simple and concise introduction to C# with many example programs. It is structured so that more ex-perienced programmers can cleanly skip the material they already know. Although designed for working professionals, the book includes enough de-tail, careful explanations and sample programs so that it can be useful as a college textbook. An important thrust of this book is to teach C# programming from an object-oriented perspective. It is often difficult for programmers trained originally in a procedural language to start "thinking in objects." This book introduces object-oriented concepts early, and C# is developed in a way that leverages its object-orientation. A banking system case study is used to illustrate creating a complete system using C# and .NET. Besides supporting traditional object-oriented features such as classes, inheritance, and polymorphism, C# introduces several additional features, such as properties, indexers, delegates, events, and interfaces that make C# a compelling language for developing object-oriented and component-based systems. This book provides thorough coverage of all these features. C# as a language is elegant and powerful. But to fully utilize its ca-pabilities you need to have a good understanding of how it works with the .NET Framework. The book explores several important interactions between C# and the .NET Framework, and it includes an introduction to major classes for collections, files, threads, and user interface. ORGANIZATION The book is organized into four major parts and is structured in a manner to make it easy for you to navigate to what you most need to know. Part 1, which should be read by everyone, begins with an introduction to the .NET Framework, which is the underpinning for all applications and services in the .NET environment. Next comes a short introduction to hands-on pro-gramming using C#, so that you can start writing code on .NET right away. The third chapter introduces Visual Studio.NET, the latest incarnation of Microsoft's popular Visual Studio development environment. The new Visual Studio has many features that make application development easier and more pleasant. You will be equipped to use Visual Studio throughout the rest of the book. Part 2 covers the C-like features of C#, which are shared by C, C++, Java, and various scripting languages. Thus, if you know any of these C-like languages, you will have a definite leg up in learning C#, and you can quickly skim this section, paying attention to the information in the side-bars. A sidebar will alert you the first time a concept new to C# is intro-duced. Then you will know to look for further elaborations where they occur later. If you are not familiar with C or a similar language, this section is for you. It will quickly bring you up to speed on the core topics of data types, operators, and control structures. Part 3 is the core of the book, systematically covering the features of the C# programming language that go beyond C. The object-oriented features of C# are covered gradually and thoroughly, making this part of the book accessible to readers without OOP background. A case study is used, illustrating how the object-oriented features of C# work in combination. This case study is progressively built from Chapters 12 through 18. The C# data types, based on the .NET Common Type System, are explored in detail. We cover features new in C# such as properties and indexers. We cover prac-tical issues of formatting and conversions, and we discuss the important topic of exceptions. We conclude this part with a study of interfaces, which provide a better level of abstraction in expressing system functionality. Part 4 explores thoroughly the relationships between C# and the .NET Framework and introduces some important .NET services. We introduce collections, which generalize arrays, and we examine fundamental operations such as copying and comparing objects. In .NET, interfaces are provided for such basic operations, which makes for a very flexible architecture, as different classes can implement these interfaces in a manner appropriate for them. The .NET Framework provides a very flexible callback mechanism, known as delegates, which has many applications. Delegates are the foundation of events, and they are also used in starting threads. We look at directories and files, multiple thread programming, and attributes. Attributes are a powerful mechanism in .NET, enabling the programmer to accomplish tasks declaratively, with writing little or no code. You can implement your own custom attributes in C#. You can read information about custom attributes, or any other metadata, by a mechanism known as "reflection." C# permits you to code at a lower level by writing "unsafe" code, which can help you interoperate with legacy code. The book concludes with introductions to components and to Windows programming. SAMPLE PROGRAMS The only way to really learn a programming language is to read and write many, many programs, including some of reasonable size. This book provides many small programs that illustrate pertinent features of C# in iso-lation, where they are easy to understand. The programs are clearly labeled in the text, and they can all be found in the software distribution that ac-companies this book. Directions for downloading the software are given be-low. There is also a major case study, that is progressively developed in Chapters 12 through 18. This case study illustrates many features of C# working together in combination, as they would in a practical application. A special point is made of demonstrating the object-oriented features of C#. If you are new to OO, studying the case study is a must! The sample programs are provided in a self-extracting file. When ex-panded, a directory structure is created rooted in c:\OI\CSharp. The sample programs are in directories Chap1, Chap2, etc. All the samples for a given chapter are in individual folders within the chapter directories. The names of the folders are clearly identified in the text. Each chapter that contains a step of the case study has a folder CaseStudy containing that step. This book is part of the Integrated .NET Series from Object Innovations and Prentice Hall PTR series. The sample programs for other books in the series are located in their own directory underneath c:\OI, so all the .NET examples from all books in the series will be located in a common area as you install them. EXERCISES Although exercises are not provided in the book itself, a comprehensive set of exercises is available for download from our website. WEBSITEThe website for the Integrated .NET Series from Object Innovations and Prentice Hall PTR series is:www.objectinnovations.com/dotnet.htm A link is provided at that website for downloading the sample programs.

Table of Contents

(NOTE: Each chapter concludes with a Summary.)

Preface.


Organization.


Sample Programs.


Exercises.


Website.


Acknowledgments.


About This Series.

I. INTRODUCTION TO .NET AND C#.

1. .NET Framework.

.NET: What You Need to Know. What Is Microsoft .NET? .NET Framework Overview. Common Language Runtime.

2. First C# Programs.

Hello, World. Program Structure. Namespaces. Variables and Expressions. Using C# As A Calculator. Input/Output in C#. The .NET Framework Class Library.

3. Visual Studio.NET.

Overview of Visual Studio.NET. Project Configurations.Debugging.

II. C# AS A LANGUAGE IN THE C FAMILY.

4. Simple Data Types.

Data Types. Integer Types. Floating-Point Types. Decimal Type. Character Type. Boolean Type. Conversions.

5. Operators and Expressions.

Operator Cardinality. Arithmetic Operators. Relational Operators. Conditional Logical Operators. Bitwise Operators. Assignment Operators. Expressions. Checked and Unchecked.

6. Control Structures.

If Tests. Loops. Preview of Arrays and Foreach. More About Control Flow. Switch Statement.

III. C# PROGRAMMING FUNDAMENTALS.

7. Object-Oriented Programming.

Objects. Classes. Polymorphism. Object-Oriented Languages. Components.

8. Classes.

Classes as Structured Data. Methods. Constructors and Initialization. Static Fields and Methods. Constant and Readonly Fields.

9. The C# Type System.

Overview of Types in C#. Value Types. Reference Types. Default Values. Boxing and Unboxing.

10. Methods, Properties, and Operators.

Methods. Parameter Passing. Method Overloading. Variable Length Parameter Lists. Properties. Operator Overloading.

11. Characters and Strings.

Characters. Strings. String Methods. String Builder Class. Programming with Strings.

12. Arrays and Indexers.

Arrays. System.Array. Random Number Generation. Jagged Arrays. Rectangular Arrays. Arrays as Collections. Bank Case Study: Step 1. Indexers.

13. Inheritance.

Inheritance Fundamentals. Access Control. Method Hiding. Initialization. Bank Case Study: Step 2.

14. Virtual Methods and Polymorphism.

Virtual Methods and Dynamic Binding. Method Overriding. Polymorphism. Abstract Classes. Sealed Classes. Heterogeneous Collections. Case Study: Step 3.

15. Formatting and Conversion.

ToString. Format Strings. String Formatting Methods. Bank Case Study: Step 4. Type Conversions.

16. Exceptions.

Exception Fundamentals. User-Defined Exception Classes. Structured Exception Handling. Bank Case Study: Step 5. Inner Exceptions.

17. Interfaces.

Interface Fundamentals. Programming with Interfaces. Dynamic Use of Interfaces. Bank Case Study: Step 6. Resolving Ambiguity.

IV. C# AND THE .NET FRAMEWORK.

18. Interfaces and the .NET Framework.

Collections. Bank Case Study: Step 7. Copy Semantics and Icloneable. Comparing Objects. Understanding Frameworks.

19. Delegates and Events.

Delegates. Stock Market Simulation. Events.

20. Advanced Features.

Directories and Files. Multiple Thread Programming. Attributes. Custom Attributes. Reflection. Unsafe Code.

21. Components and Assemblies.

Building Components Using .NET SDK. Assemblies. Multiple Language Applications. Building Components Using Visual Studio.NET. Bank Case Study: Componentized Version. Interoperating with COM.

22. Introduction to Windows Forms.

Windows Forms. Simple Forms Using .NET SDK. Windows Forms Event Handling. Menus. Next Steps in Windows Forms and .NET.

Appendix A: Learning Resources.

Index.