| Contents at a Glance | 4 |
---|
| Contents | 6 |
---|
| About the Author | 14 |
---|
| About the Technical Reviewer | 15 |
---|
| Introduction | 16 |
---|
| PART 1 Object-Oriented Programming and Design Fundamentals | 18 |
---|
| CHAPTER 1 Overview of Object-Oriented Programming | 20 |
| What Is OOP? | 20 |
| Why Use OOP? | 21 |
| The Characteristics of OOP | 22 |
| The History of Visual Basic | 25 |
| Summary | 26 |
| CHAPTER 2 Designing OOP Solutions: Identifying the Class Structure | 28 |
| Goals of Software Design | 28 |
| Understanding the Unified Modeling Language | 29 |
| Developing an SRS | 30 |
| Introducing Use Cases | 31 |
| Understanding Class Diagrams | 38 |
| Summary | 46 |
| CHAPTER 3 Designing OOP Solutions: Modeling the Object Interaction | 48 |
| Understanding Scenarios | 48 |
| Introducing Sequence Diagrams | 50 |
| Using Collaboration Diagrams | 63 |
| Understanding Activity Diagrams | 66 |
| Exploring GUI Design | 74 |
| Summary | 77 |
| CHAPTER 4 Designing OOP Solutions: A Case Study | 80 |
| Developing an OOP Solution | 80 |
| Avoiding Some Common OOP Design Pitfalls | 97 |
| Summary | 98 |
| PART 2 Object-Oriented Programming with Visual Basic | 100 |
---|
| CHAPTER 5 Introducing Visual Basic and the .NET Framework | 102 |
| Introducing the .NET Framework | 102 |
| Working with the .NET Framework | 107 |
| Using the Visual Studio Integrated Development Environment | 109 |
| Summary | 124 |
| CHAPTER 6 Creating Classes | 126 |
| Introducing Objects and Classes | 126 |
| Defining Classes | 127 |
| Using Constructors | 132 |
| Using Destructors | 133 |
| Overloading Methods | 134 |
| Summary | 139 |
| CHAPTER 7 Creating Class Hierarchies | 140 |
| Understanding Inheritance | 140 |
| Overriding Methods of the Base Class | 146 |
| Overloading Methods of the Base Class | 155 |
| Using Shadowing | 155 |
| Implementing Interfaces | 156 |
| Understanding Polymorphism | 157 |
| Summary | 163 |
| CHAPTER 8 Implementing Object Collaboration | 164 |
| Communicating Through Messaging | 164 |
| Understanding Event-Driven Programming | 166 |
| Understanding Delegation | 171 |
| Handling Exceptions in the .NET Framework | 176 |
| Using Asynchronous Messaging | 184 |
| Summary | 189 |
<