| About the Authors | p. v |
| Foreword | p. vii |
| Preface | p. ix |
| Acknowledgments | p. xiii |
| Concepts | |
| COBOL and Objects? | p. 3 |
| Focus of This Chapter | p. 4 |
| Why Objects? | p. 5 |
| What Is an Object? | p. 6 |
| Why Object-Oriented COBOL? | p. 9 |
| A Brief History of Objects | p. 11 |
| An Object-Oriented COBOL Model | p. 19 |
| Focus of This Chapter | p. 20 |
| Responsibility-Driven Design | p. 21 |
| The Components of Construction | p. 22 |
| Class Libraries | p. 36 |
| Object Technology--A Consistent Approach | p. 37 |
| Constructs | |
| Classes-A Matter of Structure | p. 43 |
| Focus and Format of This Chapter | p. 43 |
| A Quick Look at the Syntax | p. 44 |
| The Class Program | p. 45 |
| The Class Definition | p. 47 |
| The Factory Object | p. 54 |
| The Factory Definition | p. 54 |
| Methods | p. 59 |
| The Method Definition | p. 60 |
| The Class Interface | p. 66 |
| Putting the Pieces Together | p. 67 |
| Classes in Applications | p. 75 |
| Objects | p. 87 |
| Focus and Format of This Chapter | p. 87 |
| The Context of an Object Definition | p. 88 |
| The Object Definition | p. 90 |
| Methods | p. 94 |
| The Method Definition | p. 97 |
| Object Handles | p. 98 |
| Object Notation | p. 102 |
| The Evolution of Programming Languages | p. 103 |
| Responsibility-Driven Design and Objects | p. 106 |
| Inheritance | p. 109 |
| Focus and Format of This Chapter | p. 110 |
| Inheritance | p. 110 |
| Abstract Classes | p. 112 |
| The Inheritance Hierarchy | p. 114 |
| Multiple Inheritance | p. 122 |
| Class Relationship Diagrams | p. 126 |
| Objects in Action | |
| Messages | p. 135 |
| Focus and Format of This Chapter | p. 135 |
| Messages | p. 136 |
| The Invoke Statement | p. 137 |
| Specifying Object Behavior | p. 146 |
| Applying Responsibility-Driven Design | p. 149 |
| Creating and Destroying Objects | p. 151 |
| Focus and Format of This Chapter | p. 152 |
| An Object's Life Span | p. 152 |
| Creating Objects | p. 154 |
| Creating Objects with Restrictions | p. 168 |
| Destroying Objects | p. 175 |
| Responsibility-Driven Design and Creating Objects | p. 182 |
| Working with Objects | p. 191 |
| Focus and Format of This Chapter | p. 192 |
| The Scope of Variables | p. 192 |
| Object-Relation Conditions | p. 198 |
| Conformance | p. 199 |
| In-Line Method Invocation | p. 221 |
| Using In-Line Invocation | p. 223 |
| The Property Clause | p. 229 |
| The No-Set Attribute | p. 231 |
| The No-Get Attribute | p. 232 |
| Nested Properties | p. 233 |
| Applying In-Line Invocations and Properties | p. 238 |
| Working with Static Objects | p. 239 |
| Collections | p. 251 |
| Focus and Format of This Chapter | p. 252 |
| Collection Classes--A Hierarchy | p. 252 |
| Creating Bag Instances: of References | p. 258 |
| Creating Character Array Instances | p. 276 |
| Creating Dictionary Instances | p. 292 |
| Collections in Action | p. 304 |
| Putting Objects to Work | |
| Object-Oriented Analysis and Design | p. 309 |
| Focus and Format of This Chapter | p. 309 |
| Analysis and Design | p. 310 |
| Rolling Lifecycle Perspective | p. 313 |
| A Worked Example of Object-Oriented Analysis and Design | p. 324 |
| Migrating Legacy Systems | p. 337 |
| Focus and Format of This Chapter | p. 337 |
| Legacy Options | p. 338 |
| Do Nothing Object Oriented | p. 339 |
| GUI Interfaces for Legacy Code | p. 340 |
| Adding Object-Based Functionality to an Application | p. 341 |
| Wrapping Programs | p. 342 |
| Legacy Applications and Distributed Computing | p. 345 |
| Appendixes | |
| Object-Oriented COBOL Vendors: Hitachi, IBM, and Micro Focus | p. 349 |
| Hitachi | p. 350 |
| IBM | p. 356 |
| Micro Focus | p. 357 |
| Other Features Not Supported by the Vendors | p. 361 |
| The Library Application | p. 363 |
| Notes on Style | p. 364 |
| The Compiler | p. 364 |
| CRC Cards | p. 365 |
| Diagrams | p. 370 |
| The Library Application Code | p. 373 |
| COBOL Reserved Words | p. 419 |
| New COBOL Reserved Words | p. 425 |
| Intrinsic Functions | p. 427 |
| COBOL 85/89 Features | p. 433 |
| Nested Programs | p. 433 |
| Data Sharing | p. 435 |
| Flow of Control | p. 435 |
| Intrinsic Functions | p. 438 |
| Numeric Functions: Factorial and Sum | p. 438 |
| Date Functions: Current-Date, Day-Of-Integer, Date-Of-Integer, Integer-Of-Date, Integer-Of-Day | p. 439 |
| Miscellaneous | p. 440 |
| The Proposed COBOL 97 Language Syntax | p. 443 |
| Program Instruction Formats | p. 491 |
| Glossary | p. 493 |
| Index | p. 497 |
| Table of Contents provided by Ingram. All Rights Reserved. |