Creating User-defined Data Structures
6.1 INTRODUCTION AND OBJECTIVES
In this chapter we design and implement a number of data structures that we shall deploy as reusable modules in later applications. We have created these classes because the data structures presented in Chapter 5 do not always have the functionality that we need and it then becomes necessary to develop software modules for a number of important application areas:
We develop these classes by using the .NET functionality and collections that we introduced in Chapter 5. In general, we use composition to hide low-level functionality. We remark that some of the C# classes that we discuss in this chapter are based on the corresponding C++ classes introduced in Duffy 2004a. In general, porting the code from C++ to C# was relatively straightforward.
6.2 DESIGN RATIONALE AND GENERAL GUIDELINES
We give the motivation for the data containers in this chapter. Some of the forces are: