2. Lenguajes de programación
Lenguaje de
programación, en informátic
a, cualquier lenguaje
artificial que puede
utilizarse para definir una
secuencia de instrucciones
para su procesamiento por
un ordenador o
computadora. Es complicado
definir qué es y qué no es un
lenguaje de programación.
Se asume generalmente que
la traducción de las
instrucciones a un código
que comprende la
computadora debe ser
completamente sistemática.
Normalmente es la
computadora la que realiza
la traducción.
3. Lenguajes de bajo nivel
Vistos a muy bajo nivel, los microprocesadores procesan
exclusivamente señales electrónicas binarias. Dar una instrucción
a un microprocesador supone en realidad enviar series de unos y
ceros espaciadas en el tiempo de una forma determinada. Esta
secuencia de señales se denomina código máquina. El código
representa normalmente datos y números e instrucciones para
manipularlos. Un modo más fácil de comprender el código máquina
es dando a cada instrucción un mnemónico, como por ejemplo
STORE, ADD o JUMP. Esta abstracción da como resultado el
ensamblador, un lenguaje de muy bajo nivel que es específico de
cada microprocesador.
Los lenguajes de bajo nivel permiten crear programas muy
rápidos, pero que son a menudo difíciles de aprender. Más
importante es el hecho de que los programas escritos en un bajo
nivel son prácticamente específicos para cada procesador. Si se
quiere ejecutar el programa en otra máquina con otra tecnología,
será necesario reescribir el programa desde el .
4. Lenguajes de alto nivel
Por lo general se piensa que los
ordenadores son máquinas que
realizan tareas de cálculos o
procesamiento de textos. La
descripción anterior es sólo una
forma muy esquemática de ver
una computadora. Hay un alto
nivel de abstracción entre lo que
se pide a la computadora y lo que
realmente comprende. Existe
también una relación compleja
entre los lenguajes de alto nivel y
el código máquina.
Los lenguajes de alto nivel son
normalmente fáciles de aprender
porque están formados por
elementos de lenguajes
naturales, como el inglés. En
BASIC, el lenguaje de alto nivel
más 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 rígida y sistemática
5. La traducción de una serie de instrucciones en lenguaje ensamblador (el
código fuente) a un código máquina (o código objeto) no es un proceso
muy complicado y se realiza normalmente por un programa especial
llamado compilador. La traducción de un código fuente de alto nivel a un
código máquina también se realiza con un compilador, en este caso más
complejo, o mediante un intérprete. Un compilador crea una lista de
instrucciones de código máquina, el código objeto, basándose en un
código fuente. El código objeto resultante es un programa rápido y listo
para funcionar, pero que puede hacer que falle el ordenador si no está
bien diseñado
6. Los intérpretes, por otro lado,
son más lentos que los
compiladores ya que no
producen un código objeto,
sino que recorren el código
fuente una línea cada vez.
Cada línea se traduce a código
máquina y se ejecuta. Cuando
la línea se lee por segunda
vez, como en el caso de los
programas en que se
reutilizan partes del código,
debe compilarse de nuevo.
Aunque este proceso es más
lento, es menos susceptible
de provocar fallos en la
computadora.
7. Basic
BASIC, en informática, acrónimo de Beginners All-purpose Symbolic Instruction
Code (Código de Instrucciones Simbólicas de Uso General para Principiantes). Se
trata de un lenguaje de programación de alto nivel desarrollado por los
estadounidenses John Kemeny y Thomas Kurtz en el Dartmouth College a
mediados de la década de 1960. BASIC se ganó su enorme popularidad gracias
sobre todo a dos implementaciones, Tiny BASIC y Microsoft BASIC, que
convirtieron a este lenguaje en la primera lengua franca de los microordenadores
o microcomputadoras. Otras implementaciones importantes han sido CBASIC
(BASIC Compilado), Integer y Applesoft BASIC (para el Apple II), GW-BASIC
(que se incluía en todos los ordenadores IBM PC y compatibles), Turbo BASIC (de
Borland) y Microsoft QuickBASIC.
El lenguaje ha cambiado en el transcurso de los años. Las primeras versiones eran
interpretadas y no estructuradas, lo que cosechó numerosas críticas acerca de la
velocidad de sus programas y de la calidad y claridad de su código. Las más
recientes son estructuradas y, a menudo, compiladas. Una de las más populares es
Visual Basic, comercializada por Microsoft para desarrollos de aplicaciones en
entornos Windows, como lenguaje de programación de aplicaciones ofimáticas,
consultas a bases de datos y creación de páginas de Internet dinámicas. El
lenguaje BASIC se suele enseñar a los programadores principiantes porque es
fácil de utilizar y de comprender y porque, en sus versiones más recientes,
contiene muchos de los conceptos fundamentales de otros lenguajes considerados
más complejos y técnicamente más potentes, como Pascal, C, C++ o JAVA.
8. C++
C++, en informática es una versión
orientada a objetos derivada del
lenguaje de programación de
aplicación general denominado C,
desarrollada por Bjarne Stroustrup
en los Bell Laboratories de la
compañía American Telephone and
Telegraph (AT&T); en un principio
también fue conocido como C with
Classes (C con clases, alusión a las
clases de la programación orientada a
objetos). Comenzó a desarrollarse en
1980 y se nombró C++ en 1983; el
primer manual y su primera
implementación como producto
comercial aconteció en 1985.
Versiones sucesivas se publicaron en
1989 y 1990.
9. El lenguaje tiene como conceptos clave,
entre otros, la clase (class), que
facilita la creación de tipos de datos
definidos por el usuario juntamente
con funciones o métodos para tratar
con ellos, la encapsulación de datos, la
asignación dinámica de memoria y la
sobrecarga de operadores. Se diseñó
explícitamente para lograr una mayor
flexibilidad en la programación
avanzada, aunque manteniendo un
grado de simplicidad apreciable,
basándose para todos los efectos en el
lenguaje C, de ya muy amplia difusión, y
en la metodología básica del lenguaje
Simula, en lo referente a la
programación orientada a objetos.
Fue a partir de 1990 cuando se
extendió su uso, tanto como
lenguaje para el desarrollo de
aplicaciones como para sistemas
operativos. Muy ligado a UNIX en
sus orígenes, su uso es, hoy día,
prácticamente general. Las
versiones más utilizadas en
ordenadores personales son Visual
C++ de Microsoft y C++ Builder de
Borland (actualmente Inprise
Corp.). También ha tenido una gran
influencia en el desarrollo del
lenguaje JAVA, con el que
mantiene similitudes en cuanto a la
sintaxis y estructura de la
programación.
10. Lenguaje de programación orientado a objetos desarrollado
por la empresa Sun Microsystems en 1995 y que se ha
extendido ampliamente en World Wide Web. Es un lenguaje
de alto nivel y propósito general similar a C++, con marcadas
características de seguridad y transportabilidad. Este
lenguaje define una máquina virtual independiente de la
plataforma donde se ejecuta, que procesa programas,
llamados Applets, descargados desde el servidor Web.
Además, debido al modo de ejecución de los Applets, este
lenguaje es muy seguro frente a la presencia y ataque de
virus informáticos.
11. Lisp
Acrónimo de List Processing. Un
lenguaje de programación para
ordenadores o computadoras orientado
a la generación de listas, desarrollado
en 1959-1960 por John McCarthy y
usado principalmente para manipular
listas de datos. El lenguaje LISP
constituyó un cambio radical con
respecto a los lenguajes procedurales
(FORTRAN, ALGOL) que se
desarrollaban por entonces. El LISP es
un lenguaje interpretado, en el que
cada expresión es una lista de llamadas
a funciones. Este lenguaje se sigue
utilizando con frecuencia en
investigación y en círculos académicos,
y fue considerado durante mucho
tiempo el lenguaje modelo para la
investigación de la inteligencia
artificial (IA), aunque el Prolog ha
ganado terreno durante los últimos
años.