Chapter 37: Object-Oriented COBOL -- Further Reading

Books

"Object-Oriented COBOL" by Edmund C. Arranga and Frank P. Coyle This is the foundational text on OO COBOL, covering class definition, inheritance, polymorphism, and design patterns in the context of COBOL's unique characteristics. The book provides practical guidance on when and how to apply OO techniques to COBOL business applications, with complete working examples. Search for this title through technical bookstores or used book services, as it remains the most thorough treatment of the subject.

"Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides The seminal "Gang of Four" book defines the 23 classic design patterns that every OO programmer should know. While the examples use C++ and Smalltalk, the patterns (Factory Method, Strategy, Template Method, Observer, and others) translate directly to OO COBOL. Understanding these patterns helps COBOL programmers apply OO techniques effectively rather than reinventing solutions. Available through major online booksellers.

"Murach's Mainframe COBOL" by Mike Murach and Associates Later editions of Murach's textbook include coverage of OO COBOL features, with practical examples that show how OO constructs integrate with traditional COBOL programs. The Murach approach of presenting OO features incrementally, building on the reader's existing procedural COBOL knowledge, is especially effective for experienced COBOL programmers new to OO concepts. Available from the Murach website.

Online Resources

IBM Enterprise COBOL Language Reference -- Object-Oriented Programming The definitive reference for OO COBOL syntax in IBM Enterprise COBOL for z/OS. This section covers CLASS-ID, METHOD-ID, INVOKE, OBJECT REFERENCE, INHERITS, INTERFACE-ID, FACTORY, and all related syntax. It includes detailed rules for method parameter passing, object lifecycle, and interoperability with Java. Search for "Enterprise COBOL Language Reference" on the IBM Documentation website and navigate to the Object-Oriented Programming section.

IBM Enterprise COBOL Programming Guide -- Writing Object-Oriented Programs The programming guide provides practical guidance and complete examples for writing OO COBOL programs, including class definitions, inheritance hierarchies, factory methods, and COBOL-Java interoperability through JNI. It also covers compilation and runtime considerations specific to OO COBOL on z/OS. Available on the IBM Documentation portal.

GnuCOBOL Object-Oriented Features Documentation GnuCOBOL has been adding OO COBOL support incrementally. The project documentation describes which OO features are currently supported and any behavioral differences from IBM Enterprise COBOL. For programmers learning or prototyping OO COBOL on open-source platforms, this documentation is an essential reference. Available through the GnuCOBOL project documentation pages.

IBM Documentation

IBM Redbook: "Enterprise COBOL V6 -- What's New" This publication covers the OO enhancements introduced in Enterprise COBOL V6, including improved Java interoperability, enhanced object reference handling, and performance improvements for OO constructs. Understanding these enhancements helps programmers take advantage of the latest OO capabilities on z/OS. Search for this title on the IBM Redbooks website.

IBM Developer: "COBOL and Java Interoperability" IBM's developer resources include articles and tutorials on calling Java classes from OO COBOL and calling COBOL methods from Java programs. This interoperability is a key enabler for modernization, allowing organizations to build new functionality in Java while leveraging existing COBOL business logic. Available on the IBM Developer website.

Standards and Specifications

ISO/IEC 1989:2023 -- COBOL Standard, Object-Oriented Features The current COBOL standard defines the complete specification for OO COBOL features, including class definitions, method definitions, object references, inheritance, interfaces, and the INVOKE statement. The standard is the authoritative source for understanding the intended behavior of OO COBOL constructs across different implementations. Available for purchase through ISO or national standards bodies.

"COBOL 2002 Rationale" -- Object-Oriented Extensions The rationale document for the COBOL 2002 standard explains the design decisions behind the OO extensions, why specific syntax choices were made, and how OO COBOL differs from OO features in other languages. Understanding these design decisions helps programmers use OO COBOL idiomatically rather than forcing Java or C++ patterns. Available through COBOL standards committee archives and technical libraries.

"Refactoring: Improving the Design of Existing Code" by Martin Fowler While not COBOL-specific, Fowler's refactoring catalog provides systematic techniques for improving code structure that are applicable to transitioning procedural COBOL code toward OO organization. The refactoring patterns for extracting classes, replacing conditional logic with polymorphism, and introducing interfaces are directly relevant to OO COBOL modernization efforts. Available through major online booksellers.