Lenguajes
de Programación
Un lenguaje de programación es un lenguaje artificial
que puede ser usado para controlar el comportamiento de una máquina,
especialmente una computadora. Estos se componen de un conjunto de reglas
sintácticas y semánticas que permiten expresar instrucciones que luego serán
interpretadas.
Debe distinguirse de “lenguaje informático”, que es
una definición más amplia, puesto estos incluyen otros lenguajes como son el
HTML o PDF que dan formato a un texto y no es programación en sí misma.
El programador es el encargado de utilizar un lenguaje
de programación para crear un conjunto de instrucciones que, al final,
constituirá un programa o subprograma informático.
A continuación mencionaremos algunos
Lenguajes de programación:
HTML
El HTML, Hyper Text Markup Language (Lenguaje de
marcación de Hipertexto) es el lenguaje de marcas de texto utilizado
normalmente en la www (World Wide Web). Fue
creado en 1986 por el físico nuclear Tim Berners-Lee; el cual tomo dos herramientas preexistentes:
El concepto de
Hipertexto (Conocido también como link o ancla) el cual permite conectar dos
elementos entre si y el SGML (Lenguaje Estándar de Marcación General) el cual
sirve para colocar etiquetas o marcas en un texto que indique como debe verse.
HTML no es propiamente un lenguaje de programación como
C++,Visual Basic, etc.,
sino un sistema de etiquetas. HTML no presenta ningún compilador, por lo tanto
algún error de sintaxis que se presente éste no lo detectará y se visualizara
en la forma como éste lo entienda.
El entorno para trabajar HTML es simplemente un procesador de
texto, como el que ofrecen los sistemas operativos Windows (Bloc de
notas), UNIX(el editor vi o ed)
o el que ofrece MS Office (Word). El conjunto de
etiquetas que se creen, se deben guardar con la extensión .htm o .html
Estos documentos pueden ser mostrados por los visores
o "browsers" de paginas Web en Internet, como Netscape Navigator,
Mosaic, Opera yMicrosoft Internet
Explorer.
También existe el HTML Dinámico (DHTML), que es una
mejora de Microsoft de la versión 4.0 de HTML que le permite crear efectos
especiales como, por ejemplo, texto que vuela desde la página palabra por
palabra o efectos de transición al estilo de anuncio publicitario giratorio
entre página y página.
Creación de páginas web con lenguaje HTML
Para crear una página web se
pueden utilizar varios programas especializados
en esto, como por ejemplo, el Microsoft Front Page o el MacromediaDreamweaver 3. Otra
forma de diseñar un archivo .html, es
copiar todo en el Bloc de Notas del Windows, ya que este sencillo programa cumple
con un requisito mínimo que es la posibilidad de trabajar con las etiquetas con
las que trabaja este lenguaje.
A continuación les mostraremos las etiquetas mas
comunes que deben aprenderse para hacer una pagina Web.
Estructura de los documentos de HTML
Si se tiene en cuenta el contenido del documento,
todos los documentos de HTML bien escritos comparten una estructura en
común. Un documento de HTML empieza con la etiqueta <HTML>, que es la que
encerrará el documento actual. Contiene dos secciones primordiales: la cabecera
y el cuerpo encerradas respectivamente por los elementos <HEAD> cabeza y
<BODY> cuerpo.
La cabecera puede contener información y siempre
contiene el titulo del documento encerrado por el elemento <TITLE>.
En el cuerpo se encuentra todo el contenido del
documento, ya sea, texto, imágenes, sonidos,
hipervínculos, etc.
Un documento escrito en HTML contiene las siguientes
etiquetas en el siguiente orden:
Ejemplo:
<HTML>
<HEAD>
<TITLE> Título de mi página de Internet
</TITLE>
</HEAD>
<BODY>
<H1> <CENTER> Primera pagina
</CENTER> </H1>
<HR>
Esta es mi primera pagina, aunque todavía es muy
sencilla. Como el lenguaje HTML no es difícil, pronto estaremos en condiciones
de hacer cosas mas interesantes.
<P> Aquí va un segundo párrafo.
</BODY>
</HTML>
Para escribir títulos se usa la etiqueta
<Hx></Hx> en donde x es un número.
Ejemplo:
<h1>Titulo principal</h1>
<h2>Titulo secundario</h2>
<h3>Titulo terciario</h3>
<h4>Titulo cuarto nivel</h4>
<h5>Titulo quinto</h5>
<h6>Titulo sexto</h6>
Quedaría mas o menos así:
Titulo principal
Titulo secundario
Titulo terciario
Titulo cuarto nivel
Titulo quinto
Titulo sexto
Etiquetas
de párrafo
Para esto se utiliza la etiqueta <P> y
</P>. Este comando es muy útil debido a que si uno escribe algo (en el
editor que se este utilizando) por mucho espacio que uno le de siempre al
texto, siempre va a aparecer en la misma línea.
Para alinear un párrafo se utiliza el comando
<ALING> y </ALING>, utilizado dentro de la etiqueta <P>. Se
puede alinear de tres formas diferentes:
<p align="left"> Párrafo... </p>
Alinea a la izquierda.
<p align="center"> Párrafo...
</p> Realiza un centrado.
<p align="right"> Párrafo...
</p> Alinea a la derecha.
Cuando nosotros queremos que lo que escribimos
aparezca en otra línea utilizamos el comando <BR>.
Al terminar de escribir un párrafo es conveniente y
estético utilizar el comando para separar un párrafo de otro que es <HR>
Etiquetas para darle formato al texto:
Para el tamaño y tipo de letra se usa la etiqueta
<FONT> y </FONT>, que posee tres atributos: tamaño (Size), Tipo de
letra o fuente (face) y color
Formato:
<B> y </B> Sirve para colocar un texto en
Negrita.
<U> y < /U> Sirve para subrayar un texto
<STRIKE> y </STRIKE> Sirve para tachar un
texto.
<STRONG> y </STRONG> Cumple la misma función que
<B>
<I> y <I> Para colocar un texto en
cursiva.
<EM>texto con énfasis</EM> texto con
énfasis
<CITE>citación</CITE> citación
<DFN>definición</DFN> definición
<KBD>teclado</KBD> teclado
<SAMP>ejemplo</SAMP> ejemplo
SIZE: Regula el tamaño de los caracteres.
Ejemplo:<font> texto... </FONT>.
FACE: Es la fuente que se quiere usar, Arial, Times
new Roman, etc.
Java
El
lenguaje de programación Java, fue diseñado por
la compañía Sun Microsystems Inc, con el propósito de crear un lenguaje que
pudiera funcionar en redes computacionales heterogéneas ( redes de computadoras formadas
por más de un tipo de computadora, ya sean PC, MAC's, estaciones de trabajo, etc.),y que
fuera independiente de la plataforma en la que se vaya a ejecutar. Esto
significa que un programa de Java puede ejecutarse en cualquier máquina o
plataforma. El lenguaje fue diseñado con las siguientes características en
mente:
- Simple. Elimina la complejidad de los lenguajes
como "C" y da paso al contexto de los lenguajes modernos
orientados a objetos. Orientado a Objetos. La filosofía de
programación orientada a objetos es diferente a la programación
convencional.
- Familiar. Como la mayoría de los programadores
están acostumbrados a programar en C o en C++, el sintaxis de Java es muy
similar al de estos.
- Robusto. El sistema de
Java maneja la memoria de la computadora por ti. No te tienes que
preocupar por apuntadores, memoria que no se esté utilizando, etc. Java
realiza todo esto sin necesidad de que uno se lo indique.
- Seguro. El sistema de Java tiene ciertas políticas que
evitan se puedan codificar virus con
este lenguaje. Existen muchas restricciones, especialmente para los
applets, que limitan lo que se puede y no puede hacer con los recursos críticos
de una computadora.
- Portable. Como el código compilado de Java
(conocido como byte code) es interpretado, un programa compilado de Java
puede ser utilizado por cualquier computadora que tenga implementado el
interprete de Java.
- Independiente a la arquitectura. Al
compilar un programa en Java, el código resultante un tipo de código
binario conocido como byte code. Este códido es interpretado por
diferentes computadoras de igual manera, solamente hay que implementar un
intérprete para cada plataforma. De esa manera Java logra ser un lenguaje
que no depende de una arquitectura computacional definida.
- Multithreaded. Un lenguaje que soporta multiples
threads es un lenguaje que puede ejecutar diferentes líneas de código al
mismo tiempo.
- Interpretado. Java corre en máquina virtual, por
lo tanto es interpretado.
- Dinámico. Java no requiere que compiles todas las
clases de un programa para que este funcione. Si realizas una modificación
a una clase Java se
encarga de realizar un Dynamic Bynding o un Dynamic Loading para encontrar
las clases.
Java
puede funcionar como una aplicación sola o como un "applet", que es
un pequeño programa hecho en Java. Los applets de Java se pueden
"pegar" a una página de Web (HTML), y con esto
puedes tener un programa que cualquier persona que tenga
un browser compatible podrá usar.
Java
funciona de la siguiente manera: El compilador de Java deja el programa en un
Pseudo-código (no es código maquinal) y luego el intérprete de Java ejecuta el
programa (lo que se conoce como el "Java Virtual Machine"). Por eso
Java es multiplataforma, existe un intérprete para cada máquina
diferente. Nota: El código maquinal es el código binario que la computadora entiende
y puede ejecutar.
Para
entender bien como funciona un applet de Java vean el siguiente ejemplo:
1.
2.
Existe un código de Java en un servidor de Web. (Los códigos de Java se
caracterizan por tener la extensión *.class).
3.
Una persona en Internet, con un browser compatible con Java,
realiza una conección al servidor.
4.
El servidor envía el documento HTML y el código en Java (*.class).
5.
En la computadora del usuario remoto llegan ambos, y la Máquina Virtual
de Java, que está en el browser, transforma el código Java en un código que
entienda la máquina local y se ejecuta el programa dentro de la página de Web.
6.
Si el usuario realiza otra conexión a otro URL o se sale del browser, el
programa se deja de ejecutar y en la computadora no queda rastro de el.
Ejemplo
de tutorial de Java:
En
Java hay tres tipos de comentarios:
//
comentarios para una sola línea
/*
comentarios de una o
más
líneas
*/
/**
comentario de documentación, de una o más líneas
*/
Los
dos primeros tipos de comentarios son los que todo programador conoce y se
utilizan del mismo modo. Los comentarios de documentación, colocados
inmediatamente antes de una declaración (de variable o función), indican que
ese comentario ha de ser colocado en la documentación que se genera
automáticamente cuando se utiliza la herramienta de Java, javadoc. Dichos
comentarios sirven como descripción del elemento declarado permitiendo generar
una documentación de nuestras clases escrita al mismo tiempo que se genera el
código.
En
este tipo de comentario para documentación, se permite la introducción de
algunos tokens o palabras clave, que harán que la información que les sigue
aparezca de forma diferente al resto en la documentación.
Identificadores
Los
identificadores nombran variables, funciones, clases y
objetos; cualquier cosa que el programador necesite identificar o usar.
En
Java, un identificador comienza con una letra, un subrayado (_) o un símbolo de
dólar ($). Los siguientes caracteres pueden ser letras o dígitos. Se distinguen
las mayúsculas de las minúsculas y no hay longitud máxima.
Serían
identificadores válidos:
identificador
nombre_usuario
Nombre_Usuario
_variable_del_sistema
$transaccion
y
su uso sería, por ejemplo:
int
contador_principal;
char
_lista_de_ficheros;
float
$cantidad_en_Ptas;
Unix
Ejemplo
de Unix:
No
todo el "árbol" de directorios está compuesto por directorios de
usuario. Existen muchos de ellos que son de uso general o del propio sistema y
con los que habrá que familiarizarse. Los más importantes son:
/
El
raíz, del que "cuelgan" todos.
/bin
y /usr/bin
Contienen comandos UNIX
ejecutables.
/etc
Es
quizá el directorio más importante. Contiene ficheros de datos y configuración
del sistema, el fichero de password, configuración de terminales, red, etc (de ahí su nombre).
/dev
Ficheros
de dispositivos E/S.
/usr/man
Manual
/tmp
Directorio
para arreglos temporales. TODOS los usuarios pueden leer y escribir en él.
C
C
es un lenguaje de programación diseñado por Dennis Ritchie, de los Laboratorios
Bell, y
se
instaló en un PDP-11 en 1972; se diseñó para ser el lenguaje de los Sistemas
Operativos
UNIX1.
A su vez, UNIX es un Sistema Operativo desarrollado por Ken Thompson,
quién
utilizó
el lenguaje ensamblador y un lenguaje llamado B para producir las versiones
originales de UNIX, en 1970. C se inventó para superar las limitaciones de B.
C
es un lenguaje maduro de propósitos generales que se desarrolló a partir de
estas raíces;
su
definición aparece en 1978 en el apéndice ``C Reference Manual'' del libro The C
Programming
Language, de Brian W. Kernighan y Dennis M. Ritchie (Englewood Cliffs,
Nueva
Jersey, Prentice-Hall 1978), pero el estándar recomendable más reciente
apareció en
junio
de 1983, en el documento de los Laboratorios Bell titulado The C Programming
Language-Reference
Manual, escrito por Dennis M. Ritchie
Un
programa en C
Generalizando,
un programa en C consta de tres secciones. La primera sección es donde van
todos los ``headers''. Estos ``headers'' son comúnmente los ``#define'' y los
``#include''. Como segunda sección se tienen las ``funciones''. Al igual
que Pascal, en C todas las funciones que se van a ocupar en el programa
deben ir antes que la función principal (main()). Declarando las funciones a
ocupar al principio del programa, se logra que la función principal esté antes
que el resto de las funciones. Ahora, solo se habla de funciones ya que en C no
existen los procedimientos.
Y
como última sección se tiene a la función principal, llamada main. Cuando se
ejecuta el programa, lo primero que se ejecuta es esta función, y de ahí sigue
el resto del programa.
Los símbolos { y }
indican ``begin'' y ``end'' respectivamente. Si en una función o en un ciclo
while, por ejemplo, su contenido es de solamente una línea, no es necesario
usar ``llaves'' ({ }), en caso contrario es obligación usarlos.
Ejemplo
de un programa en C
/*Programa
ejemplo que despliega el contenido de "ROL" en pantalla*/
#include
<stdio.h>
#define
ROL "9274002-1"
despliega_rol()
{
printf("Mi
rol es : \%s\n", ROL);
}
void
main() {
despliega_rol();
}
/*
Fin programa */
Pascal
Pascal
es un lenguaje de programación de alto nivel de propósito general; esto es, se
puede utilizar para escribir programas para
fines científicos y comerciales.
El
lenguaje de programación Pascal fue desarrollado por
el profesor Niklaus (Nicolás) Wirth en Zurich, Zuiza, al final de los
años 1960s y principios de los
70s. Wirth diseñó este lenguaje para que fuese un buen primer lenguaje de
programación para personas comenzando a aprender a programar. Pascal tiene un
número relativamente pequeño de conceptos para aprender y dominar. Su diseño facilita
escribir programas usando un estilo que está generalmente aceptado como
práctica estándar de programación buena. Otra de las metas del diseño de Wirth
era la implementación fácil. Él diseñó un lenguaje para el cual fuese fácil
escribir un compilador para un nuevo tipo de computadora.
program
Sorting;
{
Este
programa lee un natural y una secuencia de N caracteres de la entrada estandar;
construye un indice para ordenarlos de menor a mayor e imprime en la salida la
secuencia ordenada.
}
uses CRT;
Const Max
= 10;
Espacio =
' ';
Enter =
chr (13);
type
Indice = 1..Max;
Cantidad=
0..Max;
SecOfChar
= record
elems :
array [Indice] of char;
ult :
Cantidad;
end;
SecOfInd =
record
elems :
array [Indice] of Indice;
ult :
Cantidad;
end;
Natural =
0..MaxInt;
function
PosMin (idx: SecOfInd; i: Indice; s: SecOfChar): Cantidad;
{
Devuelve la posicion en el indice idx del menor caracter en s, para
las
posiciones >= i. }
var
j: Indice;
pm:
Cantidad;
begin
if i >
idx.ult then
pm := 0
else begin
pm := i;
for j :=
i+1 to idx.ult do
if
s.elems[idx.elems[j]] < s.elems[idx.elems[pm]] then
pm := j;
end;
PosMin :=
pm;
end;
procedure
Swap (var idx: SecOfInd; i,j: Indice);
{
Intercambia las posiciones i j en idx. }
var tmp:
Indice;
begin
if
(i<=idx.ult) and (j<=idx.ult) then begin
tmp :=
idx.elems[i];
idx.elems[i]
:= idx.elems[j];
idx.elems[j]
:= tmp;
end;
end;
procedure
InicInds (var idx: SecOfInd; cant: Indice);
{
Construye la secuencia de indices 1,2,3,...,n. Sera el indice
inicial
para el ordenamiento de una secuencia de caracteres
c1,c2,...,cn.
}
var
n: Natural;
begin
n := cant;
idx.ult :=
n;
while n
> 0 do begin
idx.elems
[n] := n;
n := n-1;
end;
end;
procedure
InicSecChar (var s: SecOfChar);
{
Devuelve la secuencia vacia. }
begin
s.ult
:= 0;
end;
function
Llena (s: SecOfChar): Boolean;
begin
Llena :=
s.ult = Max;
end;
{ PRE: not
Llena(s) }
procedure
InsCar (var s: SecOfChar; c: char);
{
Inserta el caracter c en la secuencia s }
begin
s.ult :=
s.ult + 1;
s.elems
[s.ult] := c;
end;
procedure
IndSelSort (s: SecOfChar; var ind: SecOfInd);
{
Construye el indice que ordena la secuencia s. Ordena el indice
inicial
1,2, ..., n por el metodo de selection sort }
var i:
Indice;
begin
InicInds
(ind, s.ult);
for i := 1
to ind.ult-1 do begin
Swap (ind,
i, PosMin (ind, i, s));
end
end;
PHP
¿Qué es?
PHP usa una mezcla entre interpretación
y compilación para intentar ofrecer a los programadores la mejor
mezcla entre rendimiento y flexibilidad.
PHP compila para tu código una serie de
instrucciones (llamadas opcodes) siempre que estas son accedidas. Estas
instrucciones son entonces ejecutadas una por una hasta que el script termina.
Esto es diferente a la manera convencional de compilación de
lenguajes como C++ donde el código es compilado a código ejecutable que
es después ejecutado. Php es recopilado cada vez que se
solicita un script.
Una
ventaja importante de interpretar el código es que toda la memoria usada por tu
código es manejada por PHP, y el lenguaje automáticamente vacía esta memoria
cuando el script finaliza. Esto significa que tu no tienes que preocuparte de
las conexiones a la base de datos, porque PHP lo hará por ti.
¿Por qué deberías
aprenderlo?
Es
uno de los lenguajes de programación más populares, la gran fluidez y rapidez
de sus scripts y su prometedor futuro, desarrollar aplicaciones Webs utilizando
lenguajes como C o COBOL son cosas del pasado.