
Artículo sobre Cobol (PCWORLD)
ARTICULO PUBLICADO EN LA REVISTA
PCWORLD - ENERO 2.000
Autor: Andrés Montes
INTRODUCCION
Es muy probable que muchos lectores se sorprendan al encontrar un artículo
sobre Cobol. Es mas, algunos pensarán que es algo nuevo y revolucionario
con lo que una vez mas nos sorprende el apasionante mundo de la informática
y la tecnología. Evidentemente no es así. Cobol es algo mas, mucho más.
Se trata de un lenguaje de programación que ha sido capaz de mantenerse
con nosotros desde el inicio de la informática hasta nuestros días, y no
tiene ninguna intención de abandonarnos.
Para empezar a hablar de Cobol, hay que remontarse muchos años,
concretamente unos 40 años. En esa época cada ordenador era concebido y
creado con su propio sistema operativo y de programación. Nació por el
deseo de desarrollar un lenguaje de programación que fuera aceptado por
cualquier marca de ordenador, y fue en Mayo de 1.959 cuando en Estados
Unidos se reunió una comisión denominada CODASYL (Conference On Data
System Languages), integrada por fabricantes de ordenadores, empresas
privadas y representantes del Gobierno, donde se dieron las primeras ideas
de COBOL (Common Business Oriented Language). En un primer momento se llamó
COBOL-60 a ésta versión por ser ese el año en que vio la luz.
A partir de aquí, apoyado por las sugerencias de los usuarios y expertos,
su evolución no paró hasta que en 1.968 y posteriormente en 1.974, se
dieron las primeras versiones consideradas standard, que fueron conocidas
como Cobol Ansi.
Puestos en antecedentes veamos porque era y es tan grande la importancia
del Cobol como lenguaje de programación.
Si nos fijamos en lo que significa el nombre, "lenguaje
común orientado a los negocios", pronto podremos comprender que
la verdadera misión de éste lenguaje es utilizarlo para la gestión y
administración de las empresas. Y eso implica mucho, porque da igual a
que actividad se dedique una empresa, pues en ella siempre habrá un
departamento de gestión, y serán necesarios unos programas de gestión
para hacerla funcionar.
Al principio, los mainframes eran los tipos de ordenador escogidos por las
grandes empresas, sobre todo las del sector financiero, con sus propios
sistemas operativos y sus propios compiladores de Cobol. Estos fueron
afianzando al Cobol como un lenguaje perfecto para conseguir sus propósitos
por su robustez, su fiabilidad y su perfecta adaptación a las necesidades
de gestión.
Cuando los sistemas operativos empezaron a independizarse de las máquinas,
fue cuando los fabricantes de compiladores Cobol comenzaron su expansión.
Así empresas como Liant, Acucorp, Merant, Fujitsu, Nigsun, IBM o Computer
Associates, unas más antiguas otras más modernas, nos permiten a los
programadores hoy en día seguir programando con éste lenguaje, y que nos
sintamos ilusionados con el futuro.
EL LENGUAJE
Cobol es un lenguaje compilado. Es decir, consta de un código
fuente perfectamente legible y adaptado a unas normas, que se puede
realizar con cualquier editor de textos y un código objeto (compilado)
dispuesto para su ejecución con su correspondiente runtime.
Cuando se ve un programa escrito en Cobol saltan a la vista varios aspectos:
- Existen unos márgenes establecidos que facilitan su comprensión.
- Está estructurado en cuatro partes, cada una de ella con un objetivo dentro del programa.
- La gramática y su vocabulario tienen su base en la lengua inglesa.
En contraste con otros lenguajes de programación,
Cobol no fue concebido para cálculos complejos matemáticos o científicos
(de hecho solo dispone de comandos para realizar los cálculos más
elementales), aunque si posee un elevado grado de precisión y velocidad
del cálculo numérico, pudiendo manejar hasta 30 posiciones decimales. Su
empleo es más apropiado para el proceso de datos en aplicaciones
comerciales y la utilización de grandes cantidades de datos. Y aunque no
sea el único lenguaje orientado a éste propósito, si ha sido el mas
utilizado en toda la historia.
Cobol, es un lenguaje independiente de la plataforma en la que se ejecute,
por lo tanto es posible ejecutar el mismo programa sin modificar nada en
cientos de sistemas diferentes (Windows, Unix, MS-Dos, Linux, OS400, S36,
S34, VMS, Netware, Solaris, etc...). Es un lenguaje que puede comunicarse
a la perfección con cualquier base de datos existente en el mercado, así
como generar aplicaciones 100%100 Windows. Se puede adaptar a la tecnología
cliente-servidor, tecnología de enventos y puede estar presente en la
web. En definitiva, se trata de un lenguaje capaz de todo.
EL PRESENTE
Siempre hemos estado acostumbrados a asociar los programas en Cobol
a los terminales de texto, sin ninguna capacidad gráfica. Eran programas
serios, impersonales y aburridos, que daban una impresión muy pobre a los
usuarios que los utilizaban. Todo esto ha cambiado, y hoy nos sorprenderíamos
al descubrir que muchos de los programas que utilizamos en Windows están
realizados en Cobol, y nadie sería capaz de notar ni la más mínima
diferencia, simplemente porque no existe.
Muchas empresas e instituciones han migrado toda su programación a otros
lenguajes o sistemas de información. Han preferido pensar que Cobol es un
lenguaje "viejo y anticuado" para cambiar, sin analizar todas
las posibilidades que les podía ofrecer ese lenguaje que estaban
utilizando desde hacía muchos años y con el cual nunca habían tenido
problemas. Por supuesto con los consiguientes costos que eso conlleva. Las grandes bases de datos de importantes empresas de todo el mundo siguen
estando en archivos Cobol. Miles de empresas siguen basando toda su
programación en éste lenguaje, y esto no es porque sí, sino por la
seguridad, rapidez y tranquilidad que les reporta tanto en el ámbito del
lenguaje como en el del almacenamiento de datos. Cobol es un especialista
en manejo de archivos y en indexación de datos, no importa el tamaño de
los datos. Puede trabajar perfectamente con archivos de mas de 2 Millones
de registros, sin por ello perder rendimientos en su procesamiento.
Los programas en Cobol no necesitan de grandes recursos para su perfecto
funcionamiento. Pueden trabajar en cualquier máquina por su gran
portabilidad y ofrecen una garantía de funcionamiento muy bueno. Es
evidente que cuando se habla de garantía, de eficacia y de seguridad, es
porque la experiencia contrastada de muchos años utilizando Cobol como
lenguaje de programación para aplicaciones en muchos sistemas operativos,
ha dado siempre unos resultados excelentes. Siguen existiendo programas
que se ejecutan en máquinas con procesadores 80286 sin ningún problema.
Una de las causas por la que se producía esa migración, era por la
incapacidad de Cobol para desarrollar aplicaciones 100%100 Windows. No
porque el lenguaje no sea apropiado, sino porque no existían en el
mercado herramientas que facilitaran a los programadores esa misión.
Hoy todo eso ha cambiado. Nos enfrentamos a un nuevo concepto en el
desarrollo de aplicaciones basadas en Cobol. La integración total de
Cobol y Windows es una realidad, no solo en programación, con unos
interfaces magníficos, similares a los que existen en el mercado para
otros lenguajes, sino en los resultados. Los programas Cobol para Windows,
no solo son más atractivos, sino que son capaces de sacar todo el
rendimiento de este sistema operativo y aprovechar todas sus características.
Controles, eventos, propiedades, Active X... son palabras cada día más
usuales para los programadores de Cobol, y además sin pasar por alto la
tranquilidad que conlleva el trabajar con el lenguaje más usado y
extendido.
Resulta curioso, escuchar en muchas conversaciones que el Cobol, es
un lenguaje “muerto”. En realidad molesta. Cobol no depende de ninguna
empresa en particular. Es un lenguaje universal que muchas empresas
comercializan, ¿cómo se puede explicar entonces que existan varias
empresas dedicadas a mantener éste lenguaje?.
Los programadores se encuentran con que no solo Cobol es capaz de
adaptarse a Windows y a todas las nuevas tecnologías, sino que además
disponen de más de una manera de hacerlo. Cada fabricante ha escogido su
camino. Cierto es que con esto la estandarización de Cobol se pierde,
pero en cambio los programadores ganan en posibilidad de elección. Ahora
el código con el que siempre hemos trabajado cambia poco de unos
compiladores a otros, pero en cambio las nuevas herramientas son
diferentes y podemos elegir entre ellas, cual es la que mejor se adapta a
la visión personal de la programación.
Para los programadores, el hecho de que los fabricantes de compiladores
Cobol se hayan ido adaptando a las necesidades actuales del mercado, abre
unas enormes esperanzas para acoger el futuro con entusiasmo y se aseguran
una competitividad en éste cada día mas duro mundo de la programación.
Pero las ventajas de seguir programando en Cobol no se limitan a
interfaces gráficas y total compenetración con sistemas operativos gráficos.
Internet, la plataforma que todos auguran como el futuro, tampoco es un
impedimento. El integrar las aplicaciones realizadas en Cobol con el mundo
web es una realidad hoy, sin conocimientos añadidos, y sin necesidad de
utilizar otros lenguajes. Los fabricantes facilitan las herramientas
necesarias para conseguirlo en muy poco tiempo y con el mínimo esfuerzo.
Si de algo se puede enorgullecer el lenguaje Cobol, ha sido del esfuerzo
de los compiladores por conseguir que los programas pudieran ser
ejecutados en cualquier plataforma. Así cualquier programa objeto Cobol,
puede correr exactamente igual en todos los sistemas operativos para los
cuales su fabricante tenga disponibilidad de run-time. En algunos casos,
incluso la cifra llega a las 600 plataformas diferentes, lo que da una
visión amplísima de las posibilidades de un programa desarrollado en
Cobol para no aislarse a un sistema y quedarse en el olvido a la hora de
cambiar o migrar.
Esto da la posibilidad de aprovechar al máximo las capacidades de cada
sistema. Por ejemplo podemos programar en Windows o en MS-DOS con mejores
interfaces de usuario y mayor número de herramientas para facilitar al
programador esa labor, y luego ejecutar los objetos y mantener los
archivos en sistemas más robustos como Unix o Linux. Esta manera de
trabajar reporta muy buenos resultados. Existen empresas que se han dado
cuenta de cómo, con el paso de los años, los programas han cambiado a un
buen ritmo sin perder la base y la idea con que fueron concebidos,
aumentando además en capacidades, rapidez y rendimiento.
Algunas compañías han conseguido que incluso programando 100%100
Windows, las aplicaciones sean capaces de ejecutarse en Unix o cualquier
otra plataforma sin ningún problema, obviamente sin obtener los mismos
resultados. Es posible hacer un programa que contenga objetos como Editbox
o Combobox, que en Windows tienen un aspecto gráfico y en Unix se puedan
mostrar en pantalla sin capacidades gráficas, pero sin interceder en nuestro programa y con unos resultados
de funcionamiento idénticos.
Se podría decir que hoy no hay ninguna limitación para éste lenguaje.
La orientación a objetos, la programación orientada a bases de datos, la
programación en la web... son opciones disponibles para Cobol que hacen
de éste lenguaje una opción totalmente válida. Poder garantizar esto
para un lenguaje de 40 años de existencia, en un mundo en el que las
novedades duran escasamente algunos meses, es mas que suficiente para
ofrecerle al Cobol un lugar preferente en la opción de los lenguajes de
programación.
Hay que olvidar la idea de que los programadores Cobol son personas que se
han quedado desfasadas, programadores que no están en nuestro tiempo. Hoy
en día muchos jóvenes disfrutan de éste lenguaje y aún sigue
reportando las mismas ilusiones y satisfacciones que antes.
EL FUTURO
Cobol-85, es la versión standard que se utiliza en la actualidad,
pero se está en proceso de modernización y adaptación a los nuevos
conceptos. Se espera una nueva revisión que proporcione a los
programadores una productividad mayor y total independencia de la
plataforma física.
En la próxima revisión se esperan mas de 140 cambios significativos, que
afectarán a todos los aspectos del lenguaje, garantizando como siempre la
herencia de revisiones anteriores. Representará un significativo avance
para Cobol como lenguaje de programación.
La apuesta más grande de ésta nueva revisión, será sin duda la
orientación a objetos y se conseguirá vincular totalmente esta tecnología
al diseño de los futuros programas desarrollados en Cobol.
Esta nueva revisión significa algo mas que la simple introducción de
mejoras. Significa el afianzamiento y la seguridad para los programadores
de encontrarse con un lenguaje capaz de seguir adaptándose y seguir
ofreciendo mejoras.
Cobol, como lenguaje, se merece un respeto muy grande que ha sido olvidado
y en algunos casos despreciado por muchos. Sí, es cierto, que cada vez es
más difícil iniciar a programadores Cobol, entre otras cosas porque las
mismas instituciones que antes nos lo enseñaban con ilusión, hoy lo han
echado en el olvido. Pero para todos los programadores que siguen
apostando por Cobol como lenguaje y para el mantenimiento de los miles de
millones de líneas de código escritas en este lenguaje, es esperanzador
el hecho que se siga manteniendo como el lenguaje mas utilizado en la
historia de la informática. Desde aquí hay que animar a todos los
programadores actuales y próximos para que no olviden el Cobol como opción
para conseguir sus metas. Que pregunten, examinen, evalúen... se quedarán
gratamente sorprendidos de las posibilidades que éste lenguaje les puede
brindar en la actualidad.
|
|