This chapter introduces the object-oriented approach to software development. Section 1.1 discusses the software development process and the idea of encapsulation: dividing a program into distinct components which have limited interaction. In Sections 1.2 and 1.3, we develop a program to play the game of Beetle. Section 1.2 introduces terminology and concepts related to objects as we write a class to model the die used in the game. Section 1.3 expands on this, developing two more classes to complete the program.
Some readers may wish to read Appendix A before beginning this chapter.
Software Development |
Part I: Object-Oriented Programming
Encapsulation
Polymorphism
Inheritance
Part II: Linear Structures
Stacks and Queues
Array-Based Structures
Linked Structures
Part III: Algorithms
Analysis of Algorithms
Searching and Sorting
Recursion
Part IV: Trees and Sets
Trees
Sets
Part V: Advanced Topics
Advanced Linear Structures
Strings
Advanced Trees
Graphs
Memory Management
Out to the Disk
Part VI: Appendices
A. Review of Java
B. Unified Modeling Language
C. Summation Formulae
D. Further Reading
Index