| |
| |
Introduction | |
| |
| |
| |
Writing Your First Object-Oriented Program | |
| |
| |
Reading Books: Your First Object-Oriented Program | |
| |
| |
Using the Class View | |
| |
| |
Creating the ReadBooks Program | |
| |
| |
| |
Creating Class Instances with Constructors | |
| |
| |
Constructors | |
| |
| |
Reading Books: Another Implementation | |
| |
| |
Reference and Value Types | |
| |
| |
Understanding Array Declarations | |
| |
| |
| |
Creating Fields and Properties | |
| |
| |
Design Considerations for Properties | |
| |
| |
Code Analysis: A Host of Properties | |
| |
| |
Code Analysis: Using Indexers and Default Properties | |
| |
| |
| |
Working with Methods | |
| |
| |
A Deck of Cards | |
| |
| |
| |
Using Inheritance to Create Specialized Classes | |
| |
| |
Inheritance: An Overview | |
| |
| |
BankAccount: A Simple Example | |
| |
| |
Inherit from a Control: The RoundButton Class | |
| |
| |
| |
Designing Base Classes as Abstract Classes | |
| |
| |
Abstract Classes | |
| |
| |
The BankAccount Class Revisited | |
| |
| |
A Typed Collection Class | |
| |
| |
| |
Responding to Changes with Events and Exceptions | |
| |
| |
Fire on the Tracks! An Event-Driven Application | |
| |
| |
Setting Up Event Methods Without Using the Designer | |
| |
| |
Exceptions--When Things Go Wrong | |
| |
| |
| |
Putting It All Together with Components | |
| |
| |
The Memory Game | |
| |
| |
The Games Class Library | |
| |
| |
The Memory Game Application | |
| |
| |
| |
Providing Services Using Interfaces | |
| |
| |
An IMoveable Interface | |
| |
| |
.NET Framework Interfaces | |
| |
| |
Two Other Uses of Interfaces | |
| |
| |
| |
Using Classes Interchangeably Through Polymorphism | |
| |
| |
Pattern Maker | |
| |
| |
Pattern Maker Design | |
| |
| |
The Base Classes | |
| |
| |
The Derived Classes | |
| |
| |
The User Interface | |
| |
| |
| |
Using Shared and Static Members | |
| |
| |
Shared and Static Members | |
| |
| |
A More Interesting Point | |
| |
| |
A More Efficient Card | |
| |
| |
The Singleton Pattern | |
| |
| |
Design Considerations | |
| |
| |
| |
Overloading Operators with Visual C# | |
| |
| |
A Short Lesson on Vectors | |
| |
| |
Vector Algebra Application | |
| |
| |
| |
Saving Instance Data | |
| |
| |
Serialization | |
| |
| |
DataSets | |
| |
| |
| |
Reducing Complexity by Design | |
| |
| |
The .NET Design Guidelines | |
| |
| |
Refactoring | |
| |
| |
Design Patterns | |
| |
| |
| |
Additional Resources | |
| |
| |
Books | |
| |
| |
Organizations | |
| |
| |
Index | |