Objects and Systems : Principled Design with Implementations in C++ and Java
Objects and Systems : Principled Design with Implementations in C++ and Java
Click to enlarge
Author(s): Zeigler, Bernard P.
ISBN No.: 9780387947815
Pages: xxi, 221
Year: 199701
Format: Trade Cloth (Hard Cover)
Price: $ 96.59
Dispatch delay: Dispatched between 7 to 15 days
Status: Available

1. Object Orientation and State Systems.- 1.1 Finite State Machine Example: Binary Counter.- 1.2 Problems with Nonobject-Oriented Programming.- 1.3 Benefits of Object Orientation: Binary Counter C++ Implementation.


- 1.4 Access Restrictions in C++.- 1.5 Instance Generation, Information Hiding, and Restricted Access in OOPS.- Problems.- 2. Object Behavior Specification: Software Blueprints.- 2.


1 Object Behavior Specification.- 2.2 Simulating an Object Behavior Specification.- 2.3 Definition of Behavior.- Problems.- 3. Lists: Behavior Specification, Models and Implementations.


- 3.1 Domain Restrictions and Legal Sequences.- 3.2 An Abstract Model for the List Specification.- 3.3 Implementations and Models of Lists.- 3.4 Parallel Implementations of Lists.


- 3.5 Proving and Testing Correctness.- Problems.- 4. Inheritance Hierarchies and Hierarchical Construction.- 4.1 Specifying and Implementing an and-gate.- 4.


2 General Switching Functions.- 4.3 Inheritance and Derived Classes in C++.- 4.4 Using Inheritance for Alternative Implementations.- 4.5 Hierarchical Construction.- 4.


6 Summary.- Problems.- 5. Containers: An Object Behavior Specification.- 5.1 Class entity.- 5.2 Container Base Class.


- 5.3 Ensemble Methods.- 5.4 Container Subclasses: Unordered.- Problems.- 6. C++ Implementation of a Heterogeneous Container Class Library.- 6.


1 HCCL Implementation Strategy.- 6.2 Ensemble Methods in C++.- 6.3 A Macro Approach to Ensemble Methods.- Appendix 1: Ensemble Method Macros.- Appendix 2: C++ Typing Rules That Arise From Inheritance.- Problems.


- 7. Testing Based on Behavior Specification.- 7.1 The Look-and-See Method.- 7.2 Testing Rudiments.- 7.3 Blueprint-Based Testing.


- 7.4 Constructing Behavior Samples.- 7.5 Testing Constructors for Correct Initialization.- 7.6 State Transition-based Testing.- 7.7 Transition-Based Test Methodology.


- 7.8 Transition-Based Testing: More Considerations.- 7.9 Combining the Approaches.- Problems.- 8. Constructing Inheritance Class Hierarchies.- 8.


1 How to Construct Inheritance Hierarchies.- 8.2 Class Hierarchy Example: Investments.- 8.3 Portfolio Selection and Rating Specification.- 8.4 Implementing the Investment System.- 8.


5 Polymorphism and Dynamic Binding.- 8.6 Extensibility.- Problems.- 9. Ensemble-Based Implementation of Containers.- 9.1 More Ensemble Methods.


- 9.2 Implementing Container Classes by Ensemble Methods.- 9.3 Lessons Learned.- Problems.- 10. Ordered Containers and Their Implementation.- 10.


1 Class Order.- 10.2 Stacks and Queues.- 10.3 List as a Subclass of Order.- Problems.- Appendix: Specifying list as a Subclass of order.- 11.


More Useful Concepts for Containers.- 11.1 Logic Ensemble Methods.- 11.2 Container Equality.- 11.3 Inclusion, Union, Intersection, and Difference.- 11.


4 Conversion.- 11.5 Container Comparison.- Problems.- Appendix: Specifying and Implementing Set Theory Operations.- 12. Design Based on Hierarchical Decomposition and Ensemble Methods.- 12.


1 Trees as Hierarchical Containers.- 12.2 Tree Computations with Ensemble Methods.- 12.3 A Class of Graphics Puzzles.- 12.4 General Approach to 00 Software Development.- 12.


5 Alarming a Building.- 12.6 Summary.- Problems.- Appendix: Specifying a Graphics Puzzle.- 13. Java and Threaded Containers.- 13.


1 Basic Java.- 13.2 Distinctive Java Features.- 13.3 Ensemble Methods in Java.- 13.4 General Approach to Ensemble Methods in Java.- 13.


5 Synchronization.- 13.6 Hierarchical Graphics Construction in Java.- 13.6 Summary.- Problems.


To be able to view the table of contents for this publication then please subscribe by clicking the button below...
To be able to view the full description for this publication then please subscribe by clicking the button below...