Introducció
El COBOL Orientat a Objectes (OO COBOL) és una extensió del llenguatge COBOL tradicional que incorpora els principis de la programació orientada a objectes (OOP). Aquesta evolució permet als programadors COBOL aprofitar els beneficis de la modularitat, reutilització de codi i mantenibilitat que ofereix la OOP.
Conceptes Clau de la Programació Orientada a Objectes
Abans d'entrar en detall sobre com s'implementa la OOP en COBOL, és important entendre alguns conceptes clau:
-
Classes i Objectes:
- Classe: És una plantilla o model que defineix les propietats (atributs) i comportaments (mètodes) dels objectes.
- Objecte: És una instància d'una classe. Cada objecte té els seus propis valors per als atributs definits en la classe.
-
Encapsulació:
- La capacitat de restringir l'accés a certs components d'un objecte, exposant només el que és necessari a través de mètodes públics.
-
Herència:
- Permet crear noves classes basades en classes existents, heretant els seus atributs i mètodes, i afegint-ne de nous o modificant els existents.
-
Polimorfisme:
- La capacitat de diferents objectes de respondre al mateix mètode de diferents maneres.
Estructura d'un Programa COBOL Orientat a Objectes
Un programa COBOL orientat a objectes es compon de classes i objectes. A continuació es mostra l'estructura bàsica d'una classe en COBOL:
class-id. NomDeLaClasse. working-storage section. 01 atribut1 pic x(10). 01 atribut2 pic 9(4). method-id. "NomDelMetode". procedure division. * Codi del mètode end method "NomDelMetode". end class NomDeLaClasse.
Exemple Pràctic
A continuació, es presenta un exemple pràctic d'una classe Persona
amb atributs nom
i edat
, i un mètode mostrarInformacio
que imprimeix la informació de la persona.
class-id. Persona. working-storage section. 01 nom pic x(30). 01 edat pic 99. method-id. "inicialitzar". local-storage section. 01 p-nom pic x(30). 01 p-edat pic 99. procedure division using by value p-nom p-edat. move p-nom to nom move p-edat to edat end method "inicialitzar". method-id. "mostrarInformacio". procedure division. display "Nom: " nom display "Edat: " edat end method "mostrarInformacio". end class Persona.
Creació i Ús d'Objectes
Per crear i utilitzar objectes de la classe Persona
, es pot fer servir el següent codi en el programa principal:
identification division. program-id. ProgramaPrincipal. data division. working-storage section. 01 persona1 type Persona. procedure division. invoke persona1 "inicialitzar" using "Joan" 25 invoke persona1 "mostrarInformacio" stop run.
Exercicis Pràctics
Exercici 1: Crear una Classe Cotxe
- Descripció: Crea una classe
Cotxe
amb els atributsmarca
imodel
, i un mètodemostrarDetalls
que imprimeixi la informació del cotxe. - Solució:
class-id. Cotxe. working-storage section. 01 marca pic x(20). 01 model pic x(20). method-id. "inicialitzar". local-storage section. 01 p-marca pic x(20). 01 p-model pic x(20). procedure division using by value p-marca p-model. move p-marca to marca move p-model to model end method "inicialitzar". method-id. "mostrarDetalls". procedure division. display "Marca: " marca display "Model: " model end method "mostrarDetalls". end class Cotxe.
Exercici 2: Herència
- Descripció: Crea una classe
CotxeElectric
que hereti deCotxe
i afegeixi un atributautonomia
. Implementa un mètodemostrarAutonomia
que imprimeixi la informació de l'autonomia. - Solució:
class-id. CotxeElectric inherits Cotxe. working-storage section. 01 autonomia pic 9(3). method-id. "inicialitzar". local-storage section. 01 p-marca pic x(20). 01 p-model pic x(20). 01 p-autonomia pic 9(3). procedure division using by value p-marca p-model p-autonomia. invoke super "inicialitzar" using p-marca p-model move p-autonomia to autonomia end method "inicialitzar". method-id. "mostrarAutonomia". procedure division. display "Autonomia: " autonomia " km" end method "mostrarAutonomia". end class CotxeElectric.
Conclusió
El COBOL Orientat a Objectes permet als programadors aprofitar els beneficis de la programació orientada a objectes, com la modularitat, la reutilització de codi i la facilitat de manteniment. Amb la comprensió dels conceptes bàsics i la pràctica amb exemples, els programadors poden començar a aplicar aquests principis en els seus projectes COBOL.
En el següent tema, explorarem com el COBOL pot interactuar amb serveis web, ampliant encara més les seves capacitats en entorns moderns.
Curs de Programació COBOL
Mòdul 1: Introducció al COBOL
- Què és el COBOL?
- Història del COBOL
- Configuració de l'Entorn COBOL
- Estructura Bàsica d'un Programa COBOL
Mòdul 2: Sintaxi Bàsica del COBOL i Tipus de Dades
Mòdul 3: Estructures de Control
Mòdul 4: Treballant amb Dades
- Gestió d'Arxius en COBOL
- Processament d'Arxius Seqüencials
- Processament d'Arxius Indexats
- Processament d'Arxius Relatius
Mòdul 5: Gestió Avançada de Dades
Mòdul 6: Subprogrames i Programació Modular
Mòdul 7: Gestió d'Errors i Depuració
Mòdul 8: COBOL i Bases de Dades
Mòdul 9: Temes Avançats
- COBOL Orientat a Objectes
- COBOL i Serveis Web
- Optimització del Rendiment
- Millors Pràctiques en Programació COBOL