Ir al contenido principal

COBOL para principiantes #9

Siguiendo esta serie sobre programación en COBOL ya hemos visto la estructura de un programa básico: https://alquimistadecodigo.blogspot.com/2019/06/cobol-para-principiantes-1.html
https://alquimistadecodigo.blogspot.com/2019/04/cobol-estructura.html

También hemos conocido los tres tipos de datos básicos en este lenguaje: https://alquimistadecodigo.blogspot.com/2019/11/cobol-para-principiantes2.html

Conocido sus esctructuras de control básicas, además de la instalación de OpenCobolIDE, un editor de código para este lenguaje: https://alquimistadecodigo.blogspot.com/2019/12/cobol-para-principiantes3.html

Además de la instalación del compilador en entornos Linux: https://alquimistadecodigo.blogspot.com/2019/04/instalando-open-cobol.html

También hemos visto algunas peculiaridades del lenguaje como lo son los párrafos: https://alquimistadecodigo.blogspot.com/2020/01/cobol-para-principiantes-4.html
https://alquimistadecodigo.blogspot.com/2024/06/cobol-para-principiantes-7.html

Hecho algunos ejemplos para comprender mejor el lenguaje: https://alquimistadecodigo.blogspot.com/2024/03/cobol-para-principiantes-5.html
https://alquimistadecodigo.blogspot.com/2024/06/cobol-para-principiantes-6.html

Como vemos en el siguiente programa, COBOL se divide en secciones. Cada una de ellas con un propósito bien definido. Como la sección de documentación del programa. Las secciones de datos y la sección principal donde se ejecutan las operaciones a realizar. Así como la que termina o detiene el programa.

        IDENTIFICATION DIVISION.
        PROGRAM-ID. ESQUELETO.
        AUTHOR. ALQUIMISTA.
        INSTALLATION. ALQUIMISTA.
        DATE-WRITTEN. 07/03/26.
        DATE-COMPILED.
        SECURITY. NO ES CONFIDENCIAL.
        DATA DIVISION.
           WORKING-STORAGE SECTION.

           *> COMENTARIO
           PROCEDURE DIVISION.
                DISPLAY 'ALQUIMISTA DE CODIGO'.   
           STOP RUN.

Todo eso muy bien, pero... ¿Cómo puedo ser un desarrollador de COBOL y no morir en el intento? Intentemos hilar un roadmap.

Roadmap para ser un desarrollador COBOL

1. Aprender los fundamentos de COBOL.

  • Conocer la estructura de un programa. 
  • Conocer los tipos de datos, como PIC9 y PICX, además de COMP y COMP-3
  • Comprender sus sentencias esenciales, como MOVE, DISPLAY, ACCEPT, IF, PERFORM
  • Aprender sobre lectura/escritura de archivos secuenciales (OPEN, READ, WRITE, CLOSE).

2. Practicar el lenguaje.

  • Crear aplicaciones sencillas, desde el clásico "Hola, mundo" hasta aplicaciones más complejas como crear una calculadora para cálculos de interés compuesto (con las secuencias MOVE y/o PERFORM). 
  • Crear aplicaciones de lectura y escritura de archivos. 
  • Entender el flujo de un programa en un ámbito bancario.

3. Procesamiento batch.

  • Entender el contexto bancario de COBOL
  • Lectura y escritura de grandes volúmenes de datos sin interacción humana. 
  • Entender en qué consisten los archivos VSAM
  • Entender cómo se ejecutan los programas en mainframe mediante JCL (Job Control Language).

4. Código legado.

  • Entender que la mayor parte del código en COBOL será código legado. 
  • Corregir errores (alineación de datos, desbordes, etc.) y optimizar código, además de documentarlo. 
  • Uso de plantillas reutilizables de estructuras de datos (COPYBOOKS).

5. Uso de emuladores o compiladores para COBOL.

  • Usar compiladores como OpenCobolIDE o Visual COBOL PE.
  • Entender el sistema AS/400.

Con COBOL no vamos a crear aplicaciones web modernas o de escritorio. En general, COBOL es para las aplicaciones que no requieren interacción humana.

El programador se encargará más de mantener código legado que creando nuevas cosas. Atender incidentes y resolverlos a la brevedad antes de que escalen a algo mayor.

COBOL y la Inteligencia Artificial

Con el advenimiento de la I.A. y herramientas afines cualquiera puede "crear aplicaciones en tiempo breve", pero no cualquiera podrá entender lo que arroja o devuelve la I.A.

Claude Code, Open Code, Open Claw, etc. son herramientas que prometen resolver muchas cosas además de optimizar el código legado de COBOL y otros lenguajes, pero solo el que conoce el lenguaje sabrá que es verdad y qué no lo es.

Cuando se presente un incidente, solo el conocedor del lenguaje y código sabrá cómo resolverlo.

Por eso es importante saber el lenguaje, entender los errores comunes a la hora de crear aplicaciones COBOL, cómo resolverlos y optimizar el código.

Continuaremos con esta serie sobre programación en COBOL.

Enlaces:

https://cobol.es/
https://alquimistadecodigo.blogspot.com/2023/05/por-que-cobol-sigue-activo.html
https://alquimistadecodigo.blogspot.com/2024/06/5-razones-para-estudiar-cobol-youtube.html
https://alquimistadecodigo.blogspot.com/2019/05/cobol-un-lenguaje-muerto.html

Comentarios

Entradas populares de este blog

Programación Windows Batch (CMD) parte 3

Crear ciclos para efectuar operaciones tediosas nos ahorrará tiempo para realizar otras tareas. En está ocasión veremos ciclos con FOR . ¿Cuál es la síntaxis de bucle FOR en Windows Batch? Si está dentro de un archivo *.bat : FOR %%variable IN (seq) DO operaciones Si lo ejecutamos en una terminal: FOR %variable IN (seq) DO operaciones Ejemplo 1 . Recorrer una secuencia de números del 0 al 5: recorrer.bat @ echo off FOR %%i in ( 0 1 2 3 4 5 ) DO echo Hola no. %%i pause Nos imprimirá en pantalla: Hola no. 0 Hola no. 1 Hola no. 2 Hola no. 3 Hola no. 4 Hola no. 5 ¿Puedo usar contadores? Si, se pueden usar. Ejemplo 2 . Uso de contadores: contador.bat @ echo off set numeros = 1 2 3 4 5 6 7 8 9 10 set cont = 0 for %%a in ( %numeros% ) do ( echo Hola no. %%a :: Contador set /a cont+ = 1 ) echo Total: %cont% Este código nos imprimirá, además de los mensajes Hola no. 0 ..., el total de valores conta...

TIOBE index 2024

El índice TIOBE (o índice de la comunidad de programación TIOBE) mide la popularidad de los lenguajes de programación. Su índice no se basa en qué lenguaje de programación es mejor, si tiene mejor perfomance, si posee escalabilidad, si es más sencillo de aprender, de usar, de implementar, etc. Sólo se basa en la popularidad. En el número de referencias ya sea en blogs, foros de consulta, etc. No necesariamente si las empresas lo están usando en alguno de sus desarrollos. Este índice es útil para darse una idea qué lenguaje está cobrando más popularidad y prestigio. Enseguida una tabla con los primeros 5 lenguajes más populares. Índice de Noviembre 2024   Nov 2024  Nov 2023  Change  Programming Language  Ratings  Change  1  1    Python  22.85%  +8.69%  2  3  +  C++  10.64%  +0.29%  3  4  +  Java  9.60%  +1.26%  4 ...

z/OS, ¿Qué es? y ¿Cuáles son sus herramientas?

  En este post veremos las herramientas de z/OS de IBM. z/OS es un sistema operativo de mainframe desarrollado por IBM.  Es parte de la serie IBM z Systems (anteriormente conocida como System z), que se utiliza en los sistemas mainframe de IBM. z/OS es uno de los sistemas operativos más utilizados en el mundo empresarial para ejecutar aplicaciones críticas y procesar grandes volúmenes de datos. Características clave de z/OS: Escalabilidad : z/OS es conocido por su capacidad para manejar grandes cargas de trabajo y escalabilidad vertical, lo que permite agregar recursos de hardware para satisfacer las demandas de procesamiento. Confiabilidad y disponibilidad : z/OS está diseñado para ofrecer alta disponibilidad y confiabilidad. Incorpora características como redundancia y recuperación ante fallas para garantizar la continuidad de las operaciones. Seguridad : Proporciona una amplia gama de funciones de seguridad, como autenticación, autorización y auditoría, para proteger los...