Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
El lenguaje de programacin BASIC (Beginner's All purpose Symbolic Instruction Code) naci en el
ao 1964 como una herramienta destinado a principiantes, buscando una forma sencilla de realizar
programas, empleando un lenguaje casi igual al usado en la vida ordinaria (en ingls), y con
instrucciones muy sencillas y escasas. Teniendo en cuenta el ao de su nacimiento, este lenguaje
cubra casi todas las necesidades para la ejecucin de programas. Tngase en cuenta que las
mquinas existentes en aquella poca estaban estrenando los transistores como elementos de
conmutacin, los ciclos de trabajo llegaban a la impensable cifra de 10.000 por segundo y la
memoria no pasaba de unos pocos Kbytes en toroides de ferrita.
La evolucin del BASIC por los aos 70 fue escasa, dado el auge que tomaron en aquella poca
lenguajes de alto nivel como el FORTRAN y el COBOL. En 1978 se defini una norma para unificar
los Basic existentes crendose la normativa Basic Standard.
Con la aparicin de los primeros ordenadores personales, dedicados comercialmente al usuario
particular, all por la primera mitad de los ochenta, el BASIC resurgi como lenguaje de
programacin pensado para principiantes, y muchos de estos pequeos ordenadores domsticos
lo usaban como nico sistema operativo (Sinclair, Spectrum, Amstrad).
Con la popularizacin del PC, salieron varias versiones del BASIC que funcionaban en este tipo de
ordenadores (Versiones BASICA, GW-BASIC), pero todas estas versiones del BASIC no hicieron
otra cosa que terminar de rematar este lenguaje. Los programadores profesionales no llegaron a
utilizarlo, habida cuenta de las desventajas de este lenguaje respecto a otras herramientas
(PASCAL, C, CLIPPER). El BASIC con estas versiones para PC lleg incluso a perder crdito entre
los profesionales de la informtica.
Las razones para ello eran obvias:
No era un lenguaje estructurado.
No existan herramientas de compilacin fiables.
No dispona de herramientas de intercambio de informacin.
No tena libreras.
No se poda acceder al interior de la mquina.
Un largo etctera de desventajas respecto a otros lenguajes de programacin.
Tal fue ese abandono por parte de los usuarios, que la aparicin del Quick Basic de Microsoft, una
versin ya potente del Basic, que correga casi todos los defectos de las versiones pas
prcticamente inadvertida, a no ser porque las ltimas versiones del sistema operativo MS-DOS
incluan una versin de Quick Basic algo recortada (Q-Basic) como un producto mas dentro de la
amplia gama de ficheros ejecutables que acompaan al sistema operativo, y aprovecha de l el
editor de textos (Cada vez que se llama al EDIT estamos corriendo el editor del Q-Basic).
Esta versin del popular Basic ya es un lenguaje estructurado, lo que permite crear programas
modularmente, mediante subrutinas y mdulos, capaz de crear programas ya competitivos con
otros lenguajes de alto nivel. Sin embargo llegaba tarde, pues los entornos MS-DOS estaban ya
superados por el entorno grfico Windows.
Sin embargo algo haba en el Basic que tentaba a superarse: su gran sencillez de manejo. Si a
esto se le aade el entorno grfico Windows, el aprovechamiento al mximo de las posibilidades
de Windows en cuanto a intercambio de informacin, de sus libreras, de sus drivers y
controladores, manejo de bases de datos, etc. el producto resultante puede ser algo que satisfaga
todas las necesidades de programacin en el entorno Windows. La suma de todas estas cosas es
Visual Basic. Esta herramienta conserva del Basic de los aos 80 nicamente su nombre y su
sencillez, y tras su lanzamiento al mercado, la aceptacin a nivel profesional hizo borrar por fin el
"mal nombre" asociado a la palabra Basic.
Actualmente se est comercializando la versin 6.0 de este producto. Desde su salida al mercado,
cada versin supera y mejora la anterior. Dados los buenos resultados a nivel profesional de este
producto, y el apoyo prestado por el fabricante para la formacin de programadores, Visual Basic
se ha convertido en la primera herramienta de desarrollo de aplicaciones en entorno Windows.
Es obligado decir sin embargo, que sigue siendo Basic. No se pueden comparar sus prestaciones
con otros lenguajes cuando deseamos llegar al fondo de la mquina y controlar uno a uno sus
registros. No es ese el fin perseguido con VB y si es necesario llegar a esas precisiones ser
necesario utilizar otro lenguaje que permita bajar el nivel de programacin, como Visual C++, o
realizar libreras (DLL) que lo hagan. En la mayor parte de las aplicaciones, las herramientas
aportadas por VB son mas que suficiente para lograr un programa fcil de realizar y de altas
prestaciones. Cuando el lenguaje no cubre una determinada rea, siempre tendremos acceso a las
API de Windows.
TIPOS DE LENGUAJE DE PROGRAMACION
Clasificacin de los lenguajes de programacin.
Los lenguajes de programacin son clasificados de muchas formas, dentro de estas se encuentran:
Clasificacin segn nivel de abstraccin.
Los lenguajes de bajo nivel:
Son lenguajes de programacin que se acercan al funcionamiento de una computadora.
El lenguaje de ms bajo nivel es, por excelencia, el cdigo mquina. A ste le sigue el lenguaje
ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la
computadora de forma directa.
Lenguajes de medio nivel:
Hay lenguajes de programacin que son considerados por algunos expertos como
Lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas caractersticas que los
acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo
hacen un lenguaje ms cercano al humano y, por tanto, de alto nivel.
Lenguajes de alto nivel:
Los lenguajes de alto nivel son normalmente fciles de aprender porque estn formados por
elementos de lenguajes naturales, como el ingls.
En BASIC, el lenguaje de alto nivel ms conocido, los comandos como "IF CONTADOR = 10
THEN STOP" pueden utilizarse para pedir a la computadora que pare si CONTADOR es igual a 10.
Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a
pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de
una forma rgida y sistemtica.
Paradigma Estructurado:
La programacin estructurada se basa en una metodologa de desarrollo de programas
llamada refinamientos sucesivos: Se plantea una operacin como un todo y se divide en
segmentos ms sencillos o de menor complejidad. Una vez terminado todos los
segmentos del programa, se procede a unificar las aplicaciones realizadas por el pool de
programadores. Si se ha utilizado adecuadamente la programacin estructurada, esta
integracin debe ser sencilla y no presentar problemas al integrar la misma, y de
presentar algn problema, ser rpidamente detectable para su correccin.
La representacin grafica de la programacin estructurada se realiza a travs de diagramas de
flujo o flow chart, el cual representa el programa con sus entradas, procesos y salidas.
La programacin estructurada propone segregar los procesos en estructuras lo ms
simple posibles, las cuales se conocen como secuencia, seleccin e interaccin. Ellas
estn disponibles en todos los lenguajes modernos de programacin imperativa en forma
de sentencias. Combinando esquemas sencillos se pueden llegar a construir sistemas amplios y
complejos pero de fcil entendimiento.
Paradigma Funcional:
Este paradigma concibe a la computacin como la evaluacin de funciones matemticas
y evita declarar y cambiar datos. En otras palabras, hace hincapi en la aplicacin de las
funciones y composicin entre ellas, ms que en los cambios de estados y la ejecucin
secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver
ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los
Paradigma lgico:
Se basa en la definicin de reglas lgicas para luego, a travs de un motor de inferencias lgicas,
responder preguntas planteadas al sistema y as resolver los problemas.
Lenguajes interpretados:
Se puede tambin utilizar una alternativa diferente de los compiladores para traducir
lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma
permanente el cdigo objeto que se produce durante la corrida de compilacin para
utilizarlo en una corrida de produccin futura, el programador slo carga el programa
fuente en la computadora junto con los datos que se van a procesar. A continuacin, un
programa intrprete, almacenado en el sistema operativo del disco, o incluido de manera
permanente dentro de la mquina, convierte cada proposicin del programa fuente en lenguaje de
mquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el cdigo
objeto para utilizarlo posteriormente.
La siguiente vez que se utilice una instruccin, se le debe interpretar otra vez y traducir
a lenguaje mquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un
ciclo, cada instruccin del ciclo tendr que volver a ser interpretado cada vez que se
ejecute el ciclo, lo cual hace que el programa sea ms lento en tiempo de ejecucin
(porque se va revisando el cdigo en tiempo de ejecucin) pero ms rpido en tiempo
de diseo (porque no se tiene que estar compilando a cada momento el cdigo completo).
El intrprete elimina la necesidad de realizar una corrida de compilacin despus de cada
modificacin del programa cuando se quiere agregar funciones o corregir errores; pero es
obvio que un programa objeto compilado con antelacin deber ejecutarse con mucha
mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de produccin.