>
Definición
Lenguajes, compiladores e Intérpretes. Definición
Un lenguaje de
programación es una serie de comandos que nos permiten
codificar instrucciones de manera que sean entendidas y
ejecutadas por una computadora.
Un intérprete es aquel
lenguaje que no trabaja en código máquina en forma
directa, sino que va traduciendo cada instrucción. Ejemplo
de esto fue el Dbase. Obviamente son mucho más lentos que
los lenguajes de alto nivel que trabajan ejecutando
instrucciones directamente en código máquina.
Un compilador lo que
permite es traducir las instrucciones del lenguaje
contenidas en el código fuente (instrucciones) a código
máquina, de manera que el programa no necesita interpretar
o convertir cada instrucción. Debido a esto es mucho más
veloz que un intérprete y por supuesto mucho mas
profesional.
>
Estructurados vs no estructurados
A partir de C el gran lenguaje, y Pascal; se dividen los
lenguajes en estructurados (aquellos que en su
codificación usaban una estructura jerárquica de
procedimientos y funciones), en contraposición a los
lenguajes no estructurados como el Basic cuya codificación
se basaba en líneas de programación, permitiendo al
programador "saltar" de una línea de instrucción a otra,
haciendo que el código fuera algunas veces inentendible y
muy difícil de mantener (modificar) porque no seguía una
estructura.
Basic de todos modos
evolucionó, primero con el ahora primitivo GW Basic,
teniendo su máxima expresión con el Quick Basic del D.O.S.
5.0, el cual ya incluía algunos conceptos mas de avanzada
y más "aggiornados" a lo que eran sus contrapartes
estructuradas.
>
1985-1990 y
el nacimiento del Xbase
dBase fue el gran desarrollo para base de datos de los
años 80. Bajo la batuta de la firma Ashton Tate, empresa
que dio origen a un interprete de bases de datos muy
sencillo y poderoso: dBbase II. Luego vinieron el dBase
III+ que hizo furor, y la etapa de la decadencia para
dBase: el dBase IV, ya bajo la dirección de Borland.
Así surgió el gran
compilador Clipper, de Nantucket Corp., en su versión
Autumm 86 que permitía generar ejecutables libres de
royalties y sin runtimes, incluso tomando en forma directa
el código dBase. Pero no solo era eso, proveia cientos de
comandos y funciones para potenciar al dBase.
Al ver el éxito de dBase
y Clipper, surgió la empresa Fox Software que desarrollo
el FoxBase (un clon de dBase III+) y supero al "maestro"
con su versión Fox Plus, pero aun así, nunca pudo superar
a Clipper ya que siempre lidio con su política de
necesitar de runtimes para su ejecución, cosa que Clipper
nunca necesitó.
>
Los primeros
años, 1990-1995: Las bases de datos relacionales
A principios de la década pasada, se nota la evolución de
los lenguajes de programación. En forma profesional y
aplicaciones de alto nivel, el lenguaje preferido era C.
Para el aprendizaje se
usaba Pascal, que permitía inculcar el concepto de
programación estructurada.
También Basic, era un
lenguaje utilizado, no en pocas ocasiones en forma
profesional, aunque con ciertas limitaciones; su reinado
estuvo en los años 80.
En lenguaje C, fue y
todavía es el gran artífice de la computación actual. A
partir de el se desarrollaron compiladores que realmente
constituían otros lenguajes de programación. Es decir un
lenguaje que crea otros lenguajes. Tal es el caso de la
estrella de la primera mitad de la década pasada: Clipper
de Nantucket Corp., el gran compilador de lenguaje Xbase.
Clipper fue criticado por los profesionales de la
programación quienes aducían que no era un lenguaje, sino
un simple compilador nacido de la necesidad de aligerar la
ejecución de código del Interprete que le dio su origen,
es decir el dBase. Pero realmente Clipper, gracias a
llevar dentro su código un corazón de lenguaje C, fue muy
fácil de utilizar y alcanzo gran popularidad.
Se desarrollaron librería
externas, y con la programación al estilo C a partir de su
versión 5.0 y la inclusión de objetos, se convirtió en uno
de los favoritos de la programación administrativa, junto
con Pascal.
Todos los lenguajes Xbase
se basaban en el concepto de bases de datos relacionales,
es decir la agrupación de la información en forma de
tablas, denominadas campos y registros, cada uno de ellos
preformateados para recibir cierto tipo de dato (ej:
fechas, caracteres, números, valores lógicos, etc.);
pudiendo "unir" diferentes bases por medio de campos
comunes.
>
La segunda
mitad, 1995-2000: La orientación a objetos
A medida que los años van pasando el concepto de Bases
relacionales empieza a decaer relativamente, surge
entonces una variante que se aplica a todos los lenguajes:
La orientación a objetos. Ya no solo se habla de
programación estructurada, sino que los módulos de
programación son vistos como objetos, las estructuras
representan objetos y/o funciones que se adaptan en forma
general a procesos específicos es la maximización de la
programación modular.
El modelo de objetos
engloba los conceptos de encapsulación, herencia y
poliformismo, el cual se aplica a los datos y al tipo de
bases de datos que almacena la información.
La orientación a objetos
significa la agrupación de entidades de datos de forma
global, de tal manera que puedan ser interpretados de una
forma común por una misma estructura de programación.
>
El fin de
los lenguajes D.O.S.: Windows 95
Windows 95 marca el comienzo del fin de la programación
D.O.S. y por lo tanto de los lenguajes basados en este.
Este proceso no fue enérgico, todavía hoy (2000), estamos
viviendo esta etapa. Todavía hay numerosos y excelentes
sistemas desarrollados bajo entorno D.O.S. ejecutándose
pero cada vez son los menos.
Veamos que hicieron los
lenguajes D.O.S. para mantenerse en el mercado:
Clipper trato de
evolucionar hacia Windows bajo la batuta de Computer
Associates con el nombre de Visual Objects, el cual fue un
fracaso. Al igual que Visual Dbase 5.0 bajo la órbita de
Borland.
Los únicos
"sobrevivientes" al menos en esencia son Visual Fox
(Microsoft), Visual Basic (Microsoft), Delphi (Borland) y
Visual C (Microsoft)
>
2000 y más
allá: lenguajes visuales
Con al llegada de Windows todo es Visual, todo es iconos,
todo es botones, todo es Ventanas. Para programar en
lenguajes visuales, primero hay que comprender lo que es
Windows. La forma de programar los sistemas evolucionó
radicalmente. Con Windows es preciso programar conservando
las convenciones del mismo, guardando sus características
y funcionalidades. Los sistemas hechos para Windows, deben
ser tan Windows como el propio sistema operativo.
La forma de programar se
basa en objetos, cada uno de los cuales tiene sus
Propiedades y funciones. Se basa en la programación de
eventos para dichos objetos. Otro detalle es que la
programación se basa en componentes (OLE, OCX, ActiveX),
los cuales reducen notablemente el trabajo de la
programación al proporcionar herramientas antes impensadas
en la programación D.O.S.
Todos los lenguajes
visuales ofrecen RAD (Rapid Aplication Development) o
Wizzards; con lo cual comenzaron a prometer hacer
aplicaciones en poco tiempo, incluso para inexpertos.
Lejos estaban ya los tiempos en que programar era solo
usar un simple editor de textos. Ahora las herramientas de
programación son poderosas. Son casi un sistema operativo,
por asi decirlo; con entornos de desarrollo avanzados y
excelentes Debuggers.
Los paradigmas de la
programación Windows son:
- Borland Delphi (la evolución del Pascal)
- Visual Fox (la evolución del
Xbase)
- Visual Basic (la evolución de
Basic)
- Visual C (la evolución del C)
Las incursiones cada mas
innovadoras de Microsoft parecen imponer a la web como el
centro de desarrollo de aplicaciones: Microsoft .NET
>
Una visión a
la WEB y al futuro: HTML, Perl, PHP,
Pithon, Java y otros
Internet ha sido
el disparador de nuevos lenguajes tales como el HTML que
es el lenguaje de programación de las páginas WEB para
hipertexto. El mismo constituye una codificación bastante
simple, basada en marcadores (TAGs).
De la misma manera,
cuando se hace necesario proveer de funciones adicionales
a un servicio web se recurre a Perl o a Pithon que son
lenguajes que nos permiten escribir scripts para ser
alojados en los servidores a efectos de proveer
contadores, estadísticas, rankings, etc.
Por otra parte Java, bajo
la dirección de SUN, constituye la idea de la programación
abierta y universal para las aplicaciones de escritorio,
pero todavía los estándares visuales (C, Basic y Delphi),
son demasiado poderosos como para desplazarlos, a pesar de
que Java promete también ser un lenguaje de excelentes
prestaciones.
Las nuevas tecnologías
WEB inundan el mercado: PHP, ASP, XML, DHTML, lo cual
enriquecen la forma de manejar la información y su
presentación al usuario final.
>
Conclusiones
Es de esperarse que los lenguajes Visuales dominen el
mundo de las PCs durante mucho tiempo, por lo menos
mientras no evolucionen de otra manera los Sistemas
Operativos. Los lenguajes de programación evolucionan a
medida que lo hacen los Sistemas Operativos en que
funcionan, siempre ha sido así. Nunca un lenguaje de
programación determinó un Sistema Operativo, por el
contrario los Sistemas Operativos determinaron los
lenguajes de programación.
Autor del artículo:
Gustavo F. Torrealday
 |