Try OpenEdge Now
skip to main content
Guide for New Developers
An overview of ABL : Object-oriented programming with ABL : Understanding Object-oriented programming within ABL

Understanding Object-oriented programming within ABL

Object-oriented programming is a programming model organized around objects rather than actions. Conventional procedural programming normally takes input data, processes it, and produces output data. The primary programming challenge is how to write the logic. Object-oriented programming focuses on the objects that you want to manipulate, their relationships, and the logic required to manipulate them. The fundamental advantage of object-oriented programming is that the data and the operations that manipulate the data are both encapsulated in the object with a well-defined interface.
OpenEdge provides language extensions to support these standard object-oriented programming concepts in a way that is commonly available in other object-oriented languages, such as Java. These object-oriented extensions complement the basic powers of ABL, and its procedural programming model, with an alternative programming model that can seamlessly coexist with applications written using the procedural programming model.
Object-oriented programming in OpenEdge has been designed to complement ABL, and is meant to be combined and integrated with ‘traditional’ procedures, when it makes sense to do so. The object-oriented enhancements extend the core values of ABL, not replace them.
For more information on object-oriented programming, see the guide OpenEdge Development: Object-oriented Programming.