About the Book
C# Primer Plus teaches
the C# programming language and relevant parts of the .NET platform from
the ground up, walking you through the basics of object-oriented programming,
important programming techniques and problem solving while providing a
thorough coverage of C#'s essential elements - such as classes, objects,
data types, loops, branching statements, arrays, and namespaces.
In early chapters guided tours take
you sightseeing to the main attractions of C# and provide a fast learning-path
that enables you to quickly write simple C# programs. Your initial programming
skills are then gradually expanded, through the many examples, case studies,
illustrations, review questions and programming exercises, to include powerful
concepts - like inheritance, polymorphism, interfaces and exception handling,
along with C#'s most innovative features - such as properties, indexers,
delegates and events.
With C# Primer Plus's dual emphasis
on C# as well as fundamental programming techniques, this friendly tutorial
will soon make you a proficient C# programmer building Windows applications
on the .NET platform.
Related
Books
Primer Plus Books (Primer
Plus Books)
Table of Contents
Introduction.
1. Computers and Computer Programming:
Basic Concepts.
C# Is an Object-Oriented Programming
Language.
Hardware. Software.
Summary.
Review Questions.
2. Your First C# Program.
Software Development.
The Software Development Process.
Algorithms and Pseudocode.
The Three Different Types of Errors.
Object-Oriented Programming: A First
Encounter.
Software Reuse.
The Assembly, the Basic Unit of Code
Reuse in .NET.
The .NET Framework Class Library.
C#: History and Design Goals.
C#'s Background.
C#'s Design Goals.
What Kind of Programs Can I Write
with C#?
The Mechanics of Creating a C# Program.
Before Getting Started.
Choosing a Text Editor.
The Seven Steps to Writing a Simple
C# Program.
A Brief Source Code Analysis.
Note on Syntax Errors and Compilers.
Summary.
Review Questions.
Programming Exercises.
3. A Guided Tour through C#: Part
I.
Introduction.
Abstraction and Encapsulation.
An Interactive Hello World! Program.
Summary.
Review Questions.
Programming Exercises.
4. A Guided Tour through C#: Part
II.
Introduction.
Essential Elements of SimpleCalculator.cs.
Simplifying Your Code with Methods.
Methods as Building Blocks: Encapsulating
Your Helper Methods with the private keyword.
Summary.
Review Questions.
Programming Exercises.
5. Your First Object-Oriented C#
Program.
Introduction.
Lexical Structure.
Some Thoughts on Elevator Simulations.
Concepts, Goals and Solutions in an
Elevator Simulation Program: Collecting Valuable Statistics for Evaluating
an Elevator System.
Object-Oriented Programming: A Practical
Example.
Summary.
Review Questions.
Programming Exercises.
6. Types Part I: The Simple Types.
Introduction.
Types in C#:
An Overview.
Simple Types.
The Blipos Clock.
Summary.
Review Questions.
Programming Exercises.
7. Types Part II: Operators, Enumerators,
and Strings.
Introduction.
Arithmetic Operators and Numerical
Expressions.
Associativity.
Parentheses and Precedence.
The Modulus Operator (%).
Unary Operators.
Determining the Type of an Expression.
Combining Different Types in One Expression.
Accessing the Metadata of a Component:
A Brief Introduction.
Enumerated Constants.
Enumerator Operators.
Conversions.
The Methods of System.Enum.
Characters and Text.
The char Type.
The string type.
Summary.
Review Questions.
Programming Exercises.
8. Flow of Control Part I: Branching
Statements and Related Concepts.
Introduction to Flow of Control.
Branching with the if Statement.
Comparison Operators and Boolean Expressions.
Nested if Statements.
Multibranch if-else Statements.
Logical Operators.
The Scope of Variables.
The goto Statement.
The switch Statement.
The Conditional Operator.
Summary.
Review Questions.
Programming Exercises.
9. Flow of Control Part II: Iteration
Statements.
Traversing, Analyzing, and Generating
Sequences of Data.
The while Loop Statement.
The do-while Loop Statement.
The for Loop Statement.
The Jump Statements break and continue.
Structured Programming and Structured
Constructs.
Combination Assignment Operators.
Nested Iteration Statements.
Summary.
Review Questions.
Programming Exercises.
10. Arrays Part I: Array Essentials.
Declaring and Defining an Array.
Accessing Individual Array Elements.
Array Indexes Out of Range.
Adjusting for the Zero-Based Array
Index.
Initializing Arrays.
Traversing an Entire Array with the
foreach Statement.
System.Array Is a Reference Type.
Arrays and Equality.
Arrays and Methods.
A Method to Perform Array Value Equality
Comparisons.
Command Line Arguments.
Using Arrays As Return Values from
Methods.
Array Elements Referencing Objects.
Arrays As Instance Variables in Classes.
Summary.
Review Questions.
Programming Exercises.
11. Arrays Part II: Multidimensional
Arrays— Searching and Sorting Arrays.
Multidimensional Arrays.
Arrays of More Than Two Dimensions.
The Built-In Methods of System.Array.
Special Array Techniques.
Searching.
Summary.
Review Questions.
Programming Exercises.
12. Class Anatomy Part I: static
Class Members and Method Adventures.
The Anatomy of a Class: Overview.
Data Members.
Function Members.
Summary.
Review Questions.
Programming Exercises.
13. Class Anatomy Part II: Object
Creation and Garbage Collection.
Instance Constructors.
static Constructors.
The readonly Member.
Garbage Collection: Automatic Dynamic
Memory Management.
Summary.
Review Questions.
Programming Exercises.
14. Class Anatomy Part III: Writing
Intuitive Code.
Properties.
Indexers: Using Objects Like Arrays.
Operator Overloading.
User-Defined Implicit and Explicit
Conversions.
Nested Types.
Summary.
Review Questions.
Programming Exercises.
15. Namespaces, Compilation Units,
and Assemblies.
Defining Your Own Namespaces.
The Global Nameless Namespace.
Namespaces and Compilation Units.
Nested Namespaces.
Namespace Syntax.
More About the using Directive.
Compile Units, Namespaces, and Assemblies.
Exploring Assemblies with the Ildasm
Utility.
Summary.
Review Questions.
Programming Exercises.
16. Inheritance Part I: Basic Concepts.
The Need for Inheritance.
Inheritance Fundamentals.
Access Modifiers and Inheritance.
Derived Class Constructors.
Indexers Are Also Inherited and Can
Be Overridden.
Calling an Overridden Function in
the Base Class.
Reusing the .NET Framework Class Library
with Inheritance.
Multiple Levels of Derived Classes.
Method Overriding and Overloading
Are Different Mechanisms.
Summary.
Review Questions.
Programming Exercises.
17. Inheritance Part II: abstract
Functions, Polymorphism, and Interfaces.
abstract Methods, Properties, Indexers,
and Classes.
Polymorphism.
Losing and Regaining Type Information.
System.Object: The Ultimate Base Class.
Summary.
Review Questions.
Programming Exercises.
18. Structs.
Defining a Struct.
Boxing and Unboxing.
Creating Structs with and without
new.
Value Types and Reference Types.
Summary.
Review Questions.
Programming Exercises.
19. Exception Handling.
Exception Handling: A Brief Overview.
Life without try-catch-finally.
The try and catch blocks.
Catching the Exception Object Farther
up the Function Call Chain.
Multiple catch Blocks.
The finally Block.
Nested try Block.
throw: Explicitly Throwing Exceptions.
Writing Custom Exceptions.
Summary.
Review Questions.
Programming Exercises.
20. Delegates and Events.
Delegates.
Events.
Summary.
Review Questions.
Programming Exercises.
21. Preprocessing, XML Documentation,
and Attributes.
Preprocessor Directives.
XML Documentation.
Attributes.
Summary.
Review Questions.
Programming Exercises.
22. File I/O Basics.
The Need for Files.
Stream Basics and File I/O.
File I/O Classes: An Overview.
The FileInfo Class.
Text File Input and Output with StreamReader
and StreamWriter.
Binary Input and Output with the FileStream
Class.
Summary.
Review Questions.
Programming Exercises.
23. Recursion Fundamentals.
Pending Method Instances of Different
Methods.
Pending Method Instances of the Same
Method.
Putting Recursion to Work: Calculating
n Factorial.
Recursion and Iteration.
Binary Search Using Recursion.
Summary.
Review Questions.
Programming Exercises.
Appendix A: Answers to Quizzes and
Exercises.
Index |