Sie sind auf Seite 1von 23

Tu mejor ayuda para aprender a hacer webs

www.desarrolloweb.com

Introduccin a los lenguajes del web
Introduccin general a la programacin en la web, que describe el concepto de pginas
dinmicas y estticas, de cliente y servidor. Presenta los lenguajes disponibles para cada caso,
repasando el XML.
Autores del manual
Este manual ha sido realizado por los siguientes colaboradores de DesarrolloWeb.com:
Miguel Angel Alvarez
Director de DesarrolloWeb.com
http://www.desarrolloweb.com
(17 captulos)
Juliana Monteiro Lazaro
Directora de riarWeb.com
http://www.criarweb.com
(1 captulo)
Natxo Mendez
(1 captulo)
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
1
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Indice del manual de lenguajes del web
l !ndice y los objetivos generales a cubrir en el manual Introduccin a los lenguajes del web.
Bienvenidos a la introduccin a los lenguajes del web. Este manual es un extracto de los contenidos de un seminario
que ofrec en 2003 a los estudiantes de un curso dedicado a las nuevas tecnologas de la informacin. En el mismo se
pretende dar una visin global de los lenguajes que existen para el desarrollo, ayudando a las personas a definir sus objetivos
y saber qu !erramientas pueden servir para llevarlos a cabo.
"ara empe#ar podemos ver el ndice que vamos a seguir y los objetivos a cubrir.
1 Introduccin a la web
1.1 Web es un sistema
&iperte'to/&ipermedia
1.( "engua)e &*+"
1., -.ginas est.ticas /s. din.micas
2 Pginas dinmicas
(.1 -.ginas din.micas de cliente
(.( -.ginas din.micas de ser0idor
! Lenguajes web de cliente
,.1 1a0ascript
,.( /isual 2asic 3cript
,., D&*+"
,.4 33
,.5 6pplets de 1a0a
" Lenguajes web de servidor
4.1 789 ommon 7atewa# 8nter:ace
4.( 63-9 6cti0e 3er0er -ages
4., -&-9 &#perte't -reprocesor
4.4 13-9 1a0a 3er0er -ages
# $ML
5.1 8ntroducci%n a ;+"
$amos a estudiar de manera global el mundo de la programacin de p%ginas &eb. "ara ello empe#aremos estudiando
r%pidamente algunos conceptos b%sicos, que seguramente muc!os ya sabremos, como el marco donde la &eb se desarrolla,
qu es una p%gina &eb, cmo se construye una p%gina y el lenguaje '()*. +dem%s veremos qu es una p%gina est%tica y
din%mica distinguiendo entre p%ginas din%micas de cliente y servidor.
,os detendremos con mayor profundidad en la presentacin de cada uno de los lenguajes que tenemos a nuestra
disposicin para construir p%ginas &eb, enmarcados en el %mbito donde se ejecutan- cliente o servidor.
"ara finali#ar, conoceremos el lenguaje .)* y las tecnologas relacionadas con l, para entender porqu es tan importante
este lenguaje y cmo se desarrollan las &ebs que lo utili#an.
Artculo por Miguel Angel Alvarez
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
2
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Parte 1:
Introduccin a la web
como medio de
comunicacin
Debemos empezar aprendiendo <u= es la web # las caractersticas de este medio de
comunicaci%n. 6prenderemos tambi=n <u= es &*+"9 el lengua)e hiperte'to con el <ue
est.n construidas todas las p.ginas web. 6simismo9 introduciremos un concepto b.sico
para poder clasi:icar los distintos lengua)es disponibles9 el de p.ginas din.micas.
1%1%& Introduccin a la web
"emos una introduccin al medio donde se encajan los lenguajes que vamos a tratar# la web.
*a &eb se encuadra dentro de /nternet, no es m%s que un servicio de los muc!os que presta la 0ed, entre los que podemos
encontrar
1orreo electrnico
/01 o c!at
2("
El propio &eb
1.1 Web es un sistema Hipertexto/Hipermedia
El sistema con el que est% construido el &eb se llama !ipertexto y es un entramado de p%ginas conectadas con enlaces.
*os sistemas de !ipertexto se utili#an en otros contextos aparte del &eb, como la ayuda del 3indo&s. 4on muy f%ciles de
utili#ar y tambin es muy f%cil encontrar lo que buscamos r%pidamente, gracias a que pulsando enlaces vamos accediendo a
la informacin que m%s nos interesa.
*a &eb no solo se limita a presentar textos y enlaces, sino que tambin puede ofrecernos im%genes, videos, sonido y todo
tipo de presentaciones, llegando a ser el servicio m%s rico en medios que tiene /nternet. "or esta ra#n, para referirnos al
sistema que implementa el &eb 5!ipertexto6, se !a acu7ado un nuevo trmino que es !ipermedia, !aciendo referencia a que
el &eb permite contenidos multimedia.
Referencia: Esta introduccin est% extrada del )anual de "ublicar en /nternet. En dic!o manual se puede
encontrar una introduccin a la &eb m%s amplia.
/r al )anual de "ublicar en /nternet.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
3
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Artculo por Miguel Angel Alvarez
1%2%& Lenguaje '(ML
$plicamos el lenguaje sobre el que se basa la creacin web y vemos alg%n ejemplo para ilustrarlo.
8na p%gina &eb la vemos en nuestro navegador, o cliente &eb, y parece una sola entidad, pero no es as, est% compuesta por
multitud de diferentes fic!eros, como son las im%genes, los posibles vdeos y lo m%s importante- el cdigo fuente.
El cdigo de las p%ginas est% escrito en un lenguaje llamado '()*, que indica b%sicamente donde colocar cada texto, cada
imagen o cada video y la forma que tendr%n estos al ser colocados en la p%gina.
El '()* se cre en un principio con objetivos divulgativos. ,o se pens que la &eb llegara a ser un %rea de ocio con
car%cter multimedia, de modo que, el '()* se cre sin dar respuesta a todos los posibles usos que se le iba a dar y a todos
los colectivos de gente que lo utili#aran en un futuro.
el lenguaje consta de etiquetas que tienen esta forma 9:; o 9";. 1ada etiqueta significa una cosa, por ejemplo 9:;
significa que se escriba en negrita 5bold6 o 9"; significa un p%rrafo, 9+; es un enlace, etc. 1asi todas las etiquetas tienen su
correspondiente etiqueta de cierre, que indica que a partir de ese punto no debe de afectar la etiqueta. "or ejemplo 9<:; se
utili#a para indicar que se deje de escribir en negrita. +s que el '()* no es m%s que una serie de etiquetas que se utili#an
para definir la forma o estilo que queremos aplicar a nuestro documento. 9:;Esto est% en negrita9<:;.
artes de un documento H!"#
8n documento '()* !a de estar delimitado por la etiqueta 9!tml; y 9<!tml;. =entro de este documento, podemos
asimismo distinguir dos partes principales-
El encabe#ado, delimitado por 9!ead; y 9<!ead; donde colocaremos etiquetas de ndole informativo como por ejemplo el
titulo de nuestra p%gina.
El cuerpo, flanqueado por las etiquetas 9body; y 9<body;, que ser% donde colocaremos nuestro texto e im%genes
delimitados a su ve# por otras etiquetas como las que !emos visto.
El resultado es un documento con la siguiente estructura-
9!tml;
9!ead;
Etiquetas y contenidos del encabe#ado
=atos que no aparecen en nuestra p%gina pero que son importantes para catalogarla- (itulo, palabras clave,...
9<!ead;
9body;
Etiquetas y contenidos del cuerpo
"arte del documento que ser% mostrada por el navegador- (exto e im%genes
9<body;
9<!tml;
1on todo lo que conocemos ya sobre '()* podemos construir una p%gina &eb que ya tiene bastante sentido. $emos un
ejemplo a continuacin.
9!tml;
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
4
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
9!ead;
9title;1ocina "ara (odos9<title;
9<!ead;
9body;
9p;9b;:ienvenido,9<b;9<p;
9p;Est%s en la p%gina 9b;1omida para (odos9<b;.9<p;
9p;+qu aprender%s recetas f%ciles y deliciosas.9<p;
9<body;
9<!tml;
"odemos ver esa p%gina en marc!a para !acernos una idea exacta de los resultados.
Referencia: "ara aprender todos los detalles del lenguaje '()* tenemos en =esarrollo3eb.com un )anual
de '()* que !ar% las delicias de sus lectores.
/r al )anual de '()*.
Artculo por Miguel Angel Alvarez
1%!%& Pginas estticas )s% dinmicas
"emos rpidamente los conceptos de pginas estticas y dinmicas. &dems contrastamos los dos
conceptos para que quede clara esta divisin.
En la &eb podemos encontrar, o construir, dos tipos de p%ginas-
*as que se presentan sin movimiento y sin funcionalidades m%s all% de los enlaces
*as p%ginas que tienen efectos especiales y en las que podemos interactuar.
*as primeras p%ginas son las que denominamos p%ginas est%ticas, se construyen con el lenguaje '()*, que no permite
grandes florituras para crear efectos ni funcionalidades m%s all% de los enlaces.
Estas p%ginas son muy sencillas de crear, aunque ofrecen pocas ventajas tanto a los desarrolladores como a los visitantes, ya
que slo se pueden presentar textos planos acompa7ados de im%genes y a lo sumo contenidos multimedia como pueden ser
videos o sonidos
El segundo tipo de p%ginas se denomina p%gina din%mica. 8na p%gina es din%mica cuando se incluye cualquier efecto
especial o funcionalidad y para ello es necesario utili#ar otros lenguajes de programacin, aparte del simple '()*.
)ientras que las p%ginas est%ticas todo el mundo se las puede imaginar y no merecen m%s explicaciones, las p%ginas
din%micas son m%s complejas y vers%tiles. "ara aclarar este concepto, veremos con detalle a continuacin qu son las p%ginas
din%micas.
Referencia: En =esarrollo3eb.com tenemos otro manual que explica tambin las diferencias entre p%ginas
est%ticas y din%micas, pero desde otro punto de vista. El manual tambin introduce seriamente en el concepto
de p%gina din%mica y puede ser de utilidad su lectura.
/r al )anual de p%ginas din%micas.
Artculo por Miguel Angel Alvarez
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
5
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Parte 2:
Pginas dinmicas
>u= son las p.ginas din.micas9 esenciales para la creaci%n de lo <ue se denominan las
aplicaciones web9 # los distintos tipos de programaci%n para producirlas9 de cliente # de
ser0idor.
2%1%& Pginas dinmicas
$plicamos detenidamente el concepto de pgina dinmica y planteamos ejemplos donde se utili'an
(abitualmente.
$omo %emos visto& una p'gina es din'mica cuando reali(a efectos especiales o implementa alguna funcionalidad
o interactividad.
+dem%s, !emos visto que para programar una p%gina din%mica necesitaremos otros lenguajes aparte del '()*. 4in
embargo, nunca !ay que olvidarse del '()*, ya que ste es la base del desarrollo &eb- generalmente al escribir una p%gina
din%mica el cdigo de los otros lenguajes de programacin se incluye embebido dentro del mismo cdigo '()*.
8na ra#n por la que construiremos una p%gina din%mica es la simple vistosidad que pueden alcan#ar los trabajos, ya que
podemos !acer presentaciones m%s entretenidas de las que se consiguen utili#ando >nicamente '()*. "ero vamos a ver
con calma algunas ra#ones menos obvias pero m%s importantes.
4upongamos que !emos decidido reali#ar un portal de televisin donde una de las informaciones principales a proveer
podra ser la programacin semanal. Efectivamente, esta informacin suele ser dada por las televisiones con meses de
antelacin y podra ser muy f%cilmente almacenada en una base de datos. 4i trabaj%semos con p%ginas '()*, tendramos
que construir una p%gina independiente para cada semana en la cual introduciramos ?a mano? cada uno de los programas
de cada una de las cadenas. +simismo, cada semana nos tendramos que acordar de descolgar la p%gina de la semana pasada
y colgar la de la actual. (odo esto podra ser f%cilmente resuelto mediante p%ginas din%micas. En este caso, lo que !aramos
sera crear un programa 5solo uno6 que se encargara de recoger de la base de datos de la programacin aquellos programas
que son retransmitidos en las fec!as que nos interesan y de confeccionar una p%gina donde apareceran ordenados por
cadena y por !ora de retransmisin. =e este modo, podemos automati#ar un proceso y desentendernos de un aspecto de la
p%gina por unos meses.
Este !ec!o lo podramos aplicar a otras situaciones- podemos preparar el !orscopo de todos los das, las promociones de
un sitio de e@comercio...
"odemos !acer una clasificacin a las p%ginas din%micas en funcin de dnde se lleva a cabo el procesamiento de la p%gina,
es decir, el computador que cargar% con el peso adicional que supone que la p%gina realice efectos y funcionalidades.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
6
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Referencia: 1abe se7alar tambin en este punto la existencia de otro manual que explica el concepto de p%gina
din%mica. "uede ser de utilidad su lectura.
/r al )anual de p%ginas din%micas.
Artculo por Miguel Angel Alvarez
2%2%& Pginas dinmicas de cliente
)onocemos el primer tipo de pginas dinmicas# Las del lado del cliente, es decir, las que se ejecutan en
el navegador del usuario.
)on las p'ginas din'micas *ue se procesan en el cliente. +n estas p'ginas toda la carga de procesamiento de los
efectos , funcionalidades la soporta el navegador.
8sos tpicos de las p%ginas de cliente son efectos especiales para &ebs como rollovers o control de ventanas, presentaciones
en las que se pueden mover objetos por la p%gina, control de formularios, c%lculos, etc.
El cdigo necesario para crear los efectos y funcionalidades se incluye dentro del mismo arc!ivo '()* y es llamado
410/"(. 1uando una p%gina '()* contiene scripts de cliente, el navegador se encarga de interpretarlos y ejecutarlos para
reali#ar los efectos y funcionalidades.
*as p%ginas din%micas de cliente se escriben en dos lenguajes de programacin principalmente- Aavascript y $isual :asic
4cript 5$:4cript6, que veremos en detalle m%s adelante. (ambin veremos el concepto de ='()* y conoceremos las 144.
-ota: 2las! es una tecnologa, y un programa, para crear efectos especiales en p%ginas &eb. 1on 2las!
tambin conseguimos !acer p%ginas din%micas del lado del cliente. 1omo este manual explica los lenguajes del
&eb, no !emos incluido el 2las! por ninguna parte, porque no es un lenguaje. 4in embargo, si tuvieramos que
catalogarlo en alg>n sitio quedara dentro del %mbito de las p%ginas din%micas de cliente.
*as p%ginas del cliente son muy dependientes del sistema donde se est%n ejecutando y esa es su principal desventaja, ya que
cada navegador tiene sus propias caractersticas, incluso cada versin, y lo que puede funcionar en un navegador puede no
funcionar en otro.
1omo ventaja se puede decir que estas p%ginas descargan al servidor algunos trabajos, ofrecen respuestas inmediatas a las
acciones del usuario y permiten la utili#acin de algunos recursos de la m%quina local.
Artculo por Miguel Angel Alvarez
2%!%& Pginas dinmicas de servidor
l segundo tipo de pginas dinmicas, las que se ejecutan en el servidor# Las pginas dinmicas del lado
del servidor.
"odemos !ablar tambin de p%ginas din%micas del servidor, que son reconocidas, interpretadas y ejecutadas por el propio
servidor.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
7
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
*as p%ginas del servidor son >tiles en muc!as ocasiones. 1on ellas se puede !acer todo tipo de aplicaciones &eb. =esde
agendas a foros, sistemas de documentacin, estadsticas, juegos, c!ats, etc. 4on especialmente >tiles en trabajos que se tiene
que acceder a informacin centrali#ada, situada en una base de datos en el servidor, y cuando por ra#ones de seguridad los
c%lculos no se pueden reali#ar en el ordenador del usuario.
Es importante destacar que las p%ginas din%micas de servidor son necesarias porque para !acer la mayora de las aplicaciones
&eb se debe tener acceso a muc!os recursos externos al ordenador del cliente, principalmente bases de datos alojadas en
servidores de /nternet. 8n caso claro es un banco- no tiene ning>n sentido que el cliente tenga acceso a toda la base de
datos, slo a la informacin que le concierne.
*as p%ginas din%micas del servidor se suelen escribir en el mismo arc!ivo '()*, me#clado con el cdigo '()*, al igual
que ocurra en las p%ginas del cliente. 1uando una p%gina es solicitada por parte de un cliente, el servidor ejecuta los scripts y
se genera una p%gina resultado, que solamente contiene cdigo '()*. Este resultado final es el que se enva al cliente y
puede ser interpretado sin lugar a errores ni incompatibilidades, puesto que slo contiene '()*
*uego es el servidor el que maneja toda la informacin de las bases de datos y cualquier otro recurso, como im%genes o
servidores de correo y luego enva al cliente una p%gina &eb con los resultados de todas las operaciones.
"ara escribir p%ginas din%micas de servidor existen varios lenguajes, que veremos con detenimiento m%s adelante. 1ommon
Bate&ay /nterface 51B/6 com>nmente escritos en "erl, +ctive 4erver "ages 5+4"6, 'ipertext "reprocesor 5"'"6, y Aava
4erver "ages 5A4"6.
*as ventajas de este tipo de programacin son que el cliente no puede ver los scripts, ya que se ejecutan y transforman en
'()* antes de enviarlos. +dem%s son independientes del navegador del usuario, ya que el cdigo que reciben es '()*
f%cilmente interpretable.
1omo desventajas se puede se7alar que ser% necesario un servidor m%s potente y con m%s capacidades que el necesario para
las p%ginas de cliente. +dem%s, estos servidores podr%n soportar menos usuarios concurrentes, porque se requerir% m%s
tiempo de procesamiento para cada uno.
Artculo por Miguel Angel Alvarez
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
8
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Parte 3:
Lenguajes web de
cliente
3on los lengua)es <ue basan su procesamiento en el cliente web9 es decir <ue se
e)ecutan en el na0egador del usuario. /emos un listado de los lengua)es de cliente
disponibles para los desarrolladores # sus caractersticas.
!%1%& *u+ es Javascri,t
*na introduccin meramente conceptual al potente lenguaje de script del lado del cliente.
.avascript es un lenguaje de programacin utili(ado para crear pe*ue/os programitas encargados de reali(ar
acciones dentro del 'mbito de una p'gina web.
4e trata de un lenguaje de programacin del lado del cliente, porque es el navegador el que soporta la carga de
procesamiento. Bracias a su compatibilidad con la mayora de los navegadores modernos, es el lenguaje de programacin del
lado del cliente m%s utili#ado.
1on Aavascript podemos crear efectos especiales en las p%ginas y definir interactividades con el usuario. El navegador del
cliente es el encargado de interpretar las instrucciones Aavascript y ejecutarlas para reali#ar estos efectos e interactividades, de
modo que el mayor recurso, y tal ve# el >nico, con que cuenta este lenguaje es el propio navegador.
Aavascript es el siguiente paso, despus del '()*, que puede dar un programador de la &eb que decida mejorar sus p%ginas
y la potencia de sus proyectos. Es un lenguaje de programacin bastante sencillo , pensado para %acer las cosas con
rapide(, a veces con ligere#a. /ncluso las personas que no tengan una experiencia previa en la programacin podr%n
aprender este lenguaje con facilidad y utili#arlo en toda su potencia con slo un poco de pr%ctica.
Entre las acciones tpicas que se pueden reali#ar en Aavascript tenemos dos vertientes. "or un lado los efectos especiales
sobre p%ginas &eb, para crear contenidos din%micos y elementos de la p%gina que tengan movimiento, cambien de color o
cualquier otro dinamismo. "or el otro, javascript nos permite ejecutar instrucciones como respuesta a las acciones del
usuario, con lo que podemos crear p'ginas interactivas con programas como calculadoras, agendas, o tablas de c%lculo.
Aavascript es un lenguaje con muc!as posibilidades, permite la programacin de peque7os scripts, pero tambin de
programas m%s grandes, orientados a objetos, con funciones, estructuras de datos complejas, etc. +dem%s, Aavascript pone a
disposicin del programador todos los elementos que forman la p%gina &eb, para que ste pueda acceder a ellos y
modificarlos din%micamente.
1on Aavascript el programador, que se convierte en el verdadero due7o y controlador de cada cosa que ocurre en la p%gina
cuando la est% visuali#ando el cliente.
0er tambi1n: "ara que quede claro el lenguaje y alguna aplicacin pr%ctica, que se puede !acer y entender
r%pidamente, se puede acceder al artculo Efectos 0%pidos con Aavascript. En dic!o artculo veremos la
implementacin de un botn de volver y la muestra de la >ltima modificacin de una p%gina &eb.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
9
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Referencias
En =esarrollo3eb.com !emos publicado un manual de programacin en Aavascript, donde explicamos toda la sintaxis y
metodologa de programain.
+dem%s, podemos acceder al )anual de Aavascript //, donde vamos a tratar de acercarnos a este lenguaje en profundidad y
conocer todos sus secretos y recursos disponibles.
(ambin !emos !ec!o una recopilacin de scripts interesantes para !acer directamente una variada gama de efectos y
utilidades para p%ginas &eb. En nuestro (aller de Aavascript.
+dem%s de estos manuales, tenemos muc!os otros recursos interesantes sobre el lenguaje en nuestro buscador, en la seccin
Aavascript.
Artculo por Miguel Angel Alvarez
!%2%& *u+ es )isual -asic .cri,t
$plicamos el lenguaje de scripts de Microso+t para la creacin de pginas web. Lo en+ocamos a su parte
en el cliente y di+erenciamos con su +aceta de servidor en pginas &,P.
Es un lenguaje de programacin de scripts del lado del cliente, pero slo compatible con /nternet Explorer. Es por ello que
su utili#acin est% desaconsejada a favor de Aavascript.
Est% basado en $isual :asic, un popular lenguaje para crear aplicaciones 3indo&s. (anto su sintaxis como la manera de
trabajar est%n muy inspirados en l. 4in embargo, no todo lo que se puede !acer en $isual :asic lo podremos !acer en
$isual :asic 4cript, pues este >ltimo es una versin reducida del primero.
El modo de funcionamiento de $isual :asic 4cript para construir efectos especiales en p%ginas &eb es muy similar al
utili#ado en Aavascript y los recursos a los que se puede acceder tambin son los mismos- el navegador.
1omo decimos, no debemos utili#ar este lenguaje en la mayora de las ocasiones, aunque un caso donde tendra sentido
utili#ar $isual :asic 4cript sera la construccin de una /ntranet donde sepamos con toda seguridad que los navegadores que
se van a conectar ser%n siempre /nternet Explorer. En este caso, un programador !abitual de $isual :asic tendra m%s
facilidades para reali#ar los scripts utili#ando $isual :asic 4cript en lugar de Aavascript.
-ota: El popular +4" 5+ctive 4erver "ages6 es una tecnologa de programacin del lado del servidor.
'abitualmente, los scripts +4" se escriben con $isual :asic 4cript tambin y eso no nos debe liar. $isual :asic
4cript, por tanto, es un lenguaje que se puede utili#ar para la programacin en el cliente, pero tambin para la
programacin en el servidor.
En este artculo !emos !ablado del lenguaje en su faceta del lado del cliente, puesto que en la faceta del
servidor tenemos muc!os manuales, pero est%n englobados dentro de la programacin en +4".
Referencias
En =esarrollo3eb.com tenemos un manual de $isual :asic 4cript, que resulta ser uno de los pocos que se encuentran el la
0ed sobre esta materia. Est% orientado a ense7ar la sintaxis y la programacin del lado del cliente con el lenguaje.
Artculo por Miguel Angel Alvarez
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
10
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
!%!%& /'(ML 0'(ML /inmico1
*na apro$imacin al -./ML, ./ML -inmico en espa0ol, que englobamos dentro de las tecnolog!as del
cliente, aunque podr!a incluirse en alg%n caso tambi1n al servidor.
='()* no es precisamente un lenguaje de programacin. )%s bien se trata de una nueva capacidad de la que disponen los
navegadores modernos, por la cual se puede tener un mayor control sobre la p%gina que antes.
1ualquier p%gina que responde a las actividades del usuario y reali#a efectos y funcionalidades se puede englobar dentro del
='()*, pero en este caso nos referimos m%s a efectos en el navegador por los cuales se pueden mostrar y ocultar
elementos de la p%gina, se puede modificar su posicin, dimensiones, color, etc.
='()* nos da m%s control sobre la p%gina, gracias a que los navegadores modernos incluyen una nueva estructura para
visuali#ar en p%ginas &eb denominada capa. *as capas se pueden ocultar, mostrar, despla#ar, etc.
"ara reali#ar las acciones sobre la p%gina, como modificar la apariencia de una capa, seguimos necesitando un lenguaje de
programacin del lado del cliente como Aavascript o $:4cript.
2claracin: 3H!"# tambi1n puede englobar la programacin en el servidor.
=epende del autor que est describiendo lo que es ='()*, muc!as veces !ace tambin referencia a la
programacin en el servidor y no slo a la del cliente, como !emos apuntado en este artculo. ,osotros
tambin pensamos que en cierto modo debera incluirse ese tipo de programacin y as lo !emos constatado en
un artculo publicado con anterioridad en =esarrollo3eb sobre Cu es ='()*.
=ic!o de otro modo y para que quede claro. *as fronteras del ='()* quedan poco definidas. *as que
marcamos en el presente artculo son slo las que engloban a los procesos en el cliente, pero tambin
podramos decir que ='()* es cualquier cosa que !ace una p%gina din%mica, ya sea en el cliente, el servidor
o las dos cosas.
=entro del concepto de ='()* se engloban tambin las 'ojas de Estilo en 1ascada o 144 51ascade 4tyle 4!eets6, que
veremos a continuacin.
Artculo por Miguel Angel Alvarez
!%"%& *u+ es 2..
)omentamos brevemente que son las (ojas de estilo en cascada y e$plicamos una serie de e+ectos rpidos
e interesantes que se pueden (acer con ellas.
144, es una tecnologa que nos permite crear p%ginas &eb de una manera m%s exacta. Bracias a las 144 somos muc!o m%s
due7os de los resultados finales de la p%gina, pudiendo !acer muc!as cosas que no se poda !acer utili#ando solamente
'()*, como incluir m%rgenes, tipos de letra, fondos, colores...
144 son las siglas de 1ascading 4tyle 4!eets, en espa7ol 'ojas de estilo en 1ascada. En este reportaje vamos a ver algunos
de los efectos que se pueden crear con las 144 sin necesidad de conocer la tecnologa entera.
-ara empezar
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
11
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
*as 'ojas de Estilo en 1ascada se escriben dentro del cdigo '()* de la p%gina &eb, solo en casos avan#ados se pueden
escribir en un arc!ivo a parte y enla#ar la p%gina con ese arc!ivo. En un principio vamos a utili#ar la manera m%s directa de
aplicar estilos a los elementos de la p%gina, mas adelante veremos la declaracin en arc!ivos externos. "ara ello, y esto es la
primera leccin de este artculo, vamos a conocer un nuevo atributo que se puede utili#ar en casi todas las etiquetas '()*-
style.
+jemplo:
9p styleD?color-greenEfont@&eig!t-bold?;El p%rrafo saldr% con color verde y en negrita9<p;
=entro del atributo style se deben indicar los atributos de estilos 144 separados por punto y coma 5E6. =urante este artculo
vamos a conocer muc!os atributos de 144, los dos primeros que !emos visto aqu son-
$olor- indica el color del contenido la etiqueta donde estemos utili#%ndolo, generalmente indica el color del texto.
4ont5weig%t- indica el grosor del texto. :old sirve para poner en negrita.
olor en los enlaces
1on '()* definimos el color de los enlaces en la etiqueta 9body;, con lo atributos linF, vlinF y alinF. Esto nos permite
cambiar el color de los enlaces para todo el documento, pero GH si queremos cambiar el color de un enlace en concreto, para
que tenga otro color que el definido en la etiqueta 9body;I
"ara !acer esto utili#aremos el atributo style dentro del enlace-
9a !refD?mienlace.!tml? styleD?color-red?;
+s saldr% el enlace en color rojo, independientemente de lo definido para todo el documento.
Espaciado entre lneas
1on 144 podemos definir el espacio que !ay entre cada lnea del documento, utili#ando el atributo line@!eig!t. "or ejemplo,
podemos definir que para todo un p%rrafo el espacio entre cada una de sus lneas sea 2J pixels-
9p styleD?line@!eig!t- 2JpxE?;
8n p%rrafo normal en el que cada una de las lneas est% separada 2J pixels de la otra. 'ay que poner suficiente texto como
para que se vean 2 lneas, as saldr%n separadas
9<p;
Espaciado entre caracteres
4e puede definir tambin el espacio entre cada car%cter. Esto se !ace con el atributo de 144 letter@spacing. $eamos un
ejemplo-
9p styleD?letter@spacing-K2cm?;
Este p%rrafo tiene las letras espaciadas por K centmetro.
9<p;
Este atributo, al igual que ocurre con muc!os otros de 144, no est% soportado por todos los navegadores. En concreto
,etscape, en su versin L todava no lo incluye.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
12
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Enlaces sin subra#ado
8no de los efectos m%s significativos y f%ciles de reali#ar con 144 es eliminar el subrayado de los enlaces de una p%gina &eb.
Existe un atributo que sirve para definir la decoracin de un texto, si est% subrayado, tac!ado, o si no tiene ninguna de estas
?decoraciones?. Es el atributo text@decoration, en este caso indicaremos en un enlace que no queremos decoracin-
9a !refD?mipagina.!tml? styleD?text@decoration-none?;
8ncluir estilos para todo un sitio web
8na de las caractersticas m%s potentes de la programacin con !ojas de estilo consiste en definir los estilos de todo un sitio
&eb. Esto se consigue creando un arc!ivo donde tan slo colocamos las declaraciones de estilos de la p%gina y enla#ando
todas las p%ginas del sitio con ese arc!ivo. =e este modo, todas las p%ginas comparten una misma declaracin de estilos y,
por tanto, si la cambiamos, cambiar%n todas las p%ginas.
$eamos a!ora todo el proceso para incluir estilos con un fic!ero externo.
15 $reamos el fic%ero con la declaracin de estilos
Es un fic!ero de texto normal, que puede tener cualquier extensin, aunque le podemos asignar la extensin .css para
aclararnos qu tipo de arc!ivo es. El texto que debemos incluir debe ser escrito exclusivamente en sintaxis 144, es un poco
distinta que la sintaxis que utili#amos dentro del atributo style. 4era errneo incluir cdigo '()* en este arc!ivo- etiquetas
y dem%s. "odemos ver un ejemplo a continuacin.
" M
font@si#e - K2ptE
font@family - arial,!elveticaE
font@&eig!t - normalE
N
'K M
font@si#e - 3OptE
font@family - verdana,arialE
text@decoration - underlineE
text@align - centerE
bacFground@color - (ealE
N
:P=H M
bacFground@color - Q00OO00E
font@family - arialE
color - 3!iteE
N
65 +nla(amos la p'gina web con la %oja de estilos
"ara ello vamos a colocar la etiqueta 9*/,R; con los atributos
relD?4(H*E4'EE(? indicando que el enlace es con una !oja de estilo.
typeD?text<css? porque el arc!ivo es de texto, en sintaxis 144.
!refD?estilos.css? indica el nombre del fic!ero fuente de los estilos.
$eamos una p%gina &eb entera que enla#a con la declaracin de estilos anterior-
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
13
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
9!tml;
9!ead;
9linF relD?4(H*E4'EE(? typeD?text<css? !refD?estilos.css?;
9title;"%gina que lee estilos9<title;
9<!ead;
9body;
9!K;"%gina que lee estilos9<!K;
9p;
Esta p%gina tiene en la cabecera la etiqueta necesaria para enla#ar con la !oja de estilos. Es muy f%cil.
9<p;
9<body;
9<!tml;
"as 33 tienen mucho m.s )ugo
*as 'ojas de Estilo en 1ascada son un est%ndar muy amplio, con unas especificaciones y posibilidades muy grandes. En este
artculo !emos visto unos cuantos efectos interesantes que reali#ar aunque no tengamos ning>n conocimiento previo. 4in
embargo, lo mejor para trabajar con esta tecnologa es conocerla bien, gracias a ello, los resultados ser%n muc!o m%s
sorprendentes.
"ara ampliar esta informacin y conocer m%s sobre 144 se puede encontrar un manual en desarrollo&eb.com
&&&.desarrollo&eb.com<manuales<2
Artculo por Juliana Monteiro Lazaro
!%#%& *u+ son los A,,lets de Java
*na manera de incluir programas complejos en el mbito de una pgina web. stos applets se programan
en 2ava y por tanto se bene+ician de la potencia de este lenguaje para la 3ed.
Es otra manera de incluir cdigo a ejecutar en los clientes que visuali#an una p%gina &eb. 4e trata de peque7os programas
!ec!os en Aava, que se transfieren con las p%ginas &eb y que el navegador ejecuta en el espacio de la p%gina.
*os applets de Aava est%n programados en Aava y precompilados, es por ello que la manera de trabajar de stos vara un poco
con respecto a los lenguajes de script como Aavascript. *os applets son m%s difciles de programar que los scripts en
Aavascript y requerir%n unos conocimientos b%sicos o medios del lenguaje Aava.
*a principal ventaja de utili#ar applets consiste en que son muc!o menos dependientes del navegador que los scripts en
Aavascript, incluso independientes del sistema operativo del ordenador donde se ejecutan. +dem%s, Aava es m%s potente que
Aavascript, por lo que el n>mero de aplicaciones de los applets podr% ser mayor.
1omo desventajas en relacin con Aavascript cabe se7alar que los applets son m%s lentos de procesar y que tienen espacio
muy delimitado en la p%gina donde se ejecutan, es decir, no se me#clan con todos los componentes de la p%gina ni tienen
acceso a ellos. Es por ello que con los applets de Aava no podremos !acer directamente cosas como abrir ventanas
secundarias, controlar 2rames, formularios, capas, etc.
$mo es posible la multiplataforma en .ava
Aava es compatible con todos los sistemas porque basa su funcionamiento en los :yte 1odes, que no es m%s que una
precompilacin del cdigo fuente de Aava.
Estos :yte 1odes no son el programa en Aava propiamente dic!o, sino un arc!ivo que contiene un cdigo intermedio que
puede manejar la )%quina $irtual de Aava. 1ada sistema operativo dispone de una )aquina $irtual de Aava que puede
interpretar los :yte 1odes y transformarlos a sentencias ejecutables en el sistema en cuestin.
+jemplos de 2pplets de .ava
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
14
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
En la &eb podemos encontrar muc!os ejemplos de applets de Aava muy >tiles y complejos. ,osotros aqu vamos a mostrar
un par de ejemplos que no tienen demasiada importancia, pero que pueden aclarar un poco m%s de qu se tratan estos
applets.
+jemplo de Reloj 73 . Efecto visual para incorporar un reloj digitan el 3= en tu p%gina &eb.
+jemplo de banner din'mico . 8na animacin de diversas palabras que salen en el espacio de un banner. 4e
puede configurar para que salga el texto que deseemos.
-ota: #os applets no los %emos %ec%o nosotros.
Estos applets los !emos descargado de /nternet para mostrarlos en este artculo. 4i lo dese%is, podis acceder a
los arc!ivos .#ip con los applets y su cdigo para mostrarlos en una p%gina '()*.
S 0eloj 3= @ J.K0 Rb
S :anner animado @ KL.O Rb
2mpliacin
4i deseas ampliar la informacin sobre los applets o sobre Aava recomendamos estudiar la seccin Aava en el buscador de
=esarrollo3eb.com.
(ambin tenemos un artculo donde se muestra el cdigo de un applet de java.
Artculo por Miguel Angel Alvarez
Parte 4:
Lenguajes web de
servidor
3on los lengua)es <ue se procesan en el lado del ser0idor # <ue generan la p.gina antes
de en0iarla al cliente. /eremos una lista de los lengua)es de ser0idor m.s populares.
"%1%& *u+ es 23I
*na breve introduccin a )4I, con apuntes sobre la metodolog!a de trabajo y desventajas +rente a otras
tecnolog!as del servidor.
Es el sistema m%s antiguo que existe para la programacin de las p%ginas din%micas de servidor. +ctualmente se encuentra
un poco desfasado por diversas ra#ones entre las que destaca la dificultad con la que se desarrollan los programas y la pesada
carga que supone para el servidor que los ejecuta.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
15
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
*os 1B/ se escriben !abitualmente en el lenguaje "erl, sin embargo, otros lenguajes como 1, 1SS o $isual :asic pueden
ser tambin empleados para construirlos.
El funcionamiento b%sico de un programa 1B/ es parecido al apuntado para el conjunto de las p%ginas din%micas del
servidor, con algunas particularidades.
K. 4e reali#a una peticin !ttp, a la que pueden acompa7ar datos llegados o bien por un formulario o bien a travs de
la 80*.
2. El servidor ejecuta los programas 1B/ a los que se accede y trabaja con los recursos necesarios para llevar a cabo
las acciones, como por ejemplo bases de datos.
3. El programa 1B/ va escribiendo en la salida est%ndar el resultado de la ejecucin del 1B/, que incluye etiquetas
'()*, ya que lo que se escribe es una p%gina &eb.
+lgunas desventajas de la programacin en 1B/ son las siguientes-
*os resultados se escriben directamente con el 1B/, as que el cdigo del programa se me#cla con el del '()*
!aciendo difcil su comprensin y mantenimiento.
1ada programa 1B/ que se pone en marc!a lo !ace en un espacio de memoria propio. +s, si tres usuarios ponen
en marc!a un 1B/ a la ve# se multiplicar% por tres la cantidad de recursos que ocupe ese 1B/. Esto significa una
grave ineficiencia.
"ara completar esta informacin sera interesante acceder a la seccin 1B/ de nuestro directorio de enlaces, donde podemos
encontrar sitios en /nternet que ofrecen tutoriales sobre la tecnologa y directorios de programas 1B/ ya creados para !acer
cosas tan variadas como tiendas, foros, envio de formularios, etc.
Artculo por Miguel Angel Alvarez
"%2%& *u+ es Perl
-ocumento introductorio al lenguaje Perl.
Es un lenguaje de programacin muy utili#ado para construir aplicaciones 1B/ para el &eb. "erl es un acrnimo de "ractical
Extracting and 0eporting *anguaje, que viene a indicar que se trata de un lenguaje de programacin muy pr%ctico para
extraer informacin de arc!ivos de texto y generar informes a partir del contendido de los fic!eros.
Es un lenguaje libre de uso, eso quiere decir que es gratuito. +ntes estaba muy asociado a la plataforma 8nx, pero en la
actualidad est% disponible en otros sistemas operativos como 3indo&s.
"erl es un lenguaje de programacin interpretado, al igual que muc!os otros lenguajes de /nternet como Aavascript o +4".
Esto quiere decir que el cdigo de los scripts en "erl no se compila sino que cada ve# que se quiere ejecutar se lee el cdigo
y se pone en marc!a interpretando lo que !ay escrito. +dem%s es extensible a partir de otros lenguajes, ya que desde "erl
podremos !acer llamadas a subprogramas escritos en otros lenguajes. (ambin desde otros lenguajes podremos ejecutar
cdigo "erl.
"erl est% inspirado a partir de lenguajes como 1, s!, a&F y sed 5algunos provenientes de los sistemas 8nx6, pero est%
enfocado a ser m%s pr%ctico y f%cil que estos >ltimos. Es por ello que un programador que !aya trabajado con el lenguaje 1
y los otros tendr% menos problemas en entenderlo y utili#arlo r%pidamente. 8na diferencia fundamental de "erl con respecto
a los otros lenguajes es que no limita el tama7o de los datos con los que trabaja, el lmite lo pone la memoria que en ese
momento se encuentre disponible.
4i queremos trabajar con "erl ser% necesario tener instalado el interprete del lenguaje. + partir de ese momento podemos
ejecutar 1B/s en nuestros servidores &eb. El proceso para conseguirlo puede variar de unos servidores a otros, pero se
suelen colocar en un directorio especial del servidor llamado cgi@bin donde !emos colocado los correspondientes permisos
1B/. +dem%s, los arc!ivos con el cdigo tambin deber%n tener permiso de ejecucin.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
16
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Este informe se complementa con los enlaces que podis encontrar en la seccin "erl de nuestro buscador y ocasionalmente
la seccin 1B/.
Artculo por Miguel Angel Alvarez
"%!%& *u+ es A.P
s el lenguaje de scripting del lado del servidor creado por Microso+t.
2) 82ctive )erver ages9 es la tecnolog:a desarrollada por "icrosoft para la creacin de p'ginas din'micas del
servidor. 2) se escribe en la misma p'gina web& utili(ando el lenguaje 0isual Basic )cript o .script 8.avascript de
"icrosoft9.
8n lenguaje del lado del servidor es aquel que se ejecuta en el servidor web, justo antes de que se enve la p%gina a travs
de /nternet al cliente. *as p%ginas que se ejecutan en el servidor pueden reali#ar accesos a bases de datos, conexiones en red,
y otras tareas para crear la p%gina final que ver% el cliente. El cliente solamente recibe una p%gina con el cdigo '()*
resultante de la ejecucin de la p%gina +4". 1omo la p%gina resultante contiene >nicamente cdigo '()*, es compatible
con todos los navegadores. "odemos saber algo m%s sobre la programacin del servidor y del cliente en el artculo qu es
='()*.
El tipo de servidores que emplean este lenguaje son, evidentemente, todos aquellos que funcionan con sistema 3indo&s
,(, aunque tambin se puede utili#ar en un "1 con &indo&s TU si instalamos un servidor denominado "ersonal 3eb
4erver. /ncluso en sistemas *inux podemos utili#ar las +4" si intalamos un componente denominado 1!ilisoft, aunque
parece claro que ser% mejor trabajar sobre el servidor &eb para el que est% pensado- /nternet /nformation 4erver.
1on las +4" podemos reali#ar muc!os tipos de aplicaciones distintas. ,os permite acceso a bases de datos, al sistema de
arc!ivos del servidor y en general a todos los recursos que tenga el propio servidor. (ambin tenemos la posibilidad de
comprar componentes +ctive. fabricados por distintas empresas de desarrollo de soft&are que sirven para reali#ar
m>ltiples usos, como el envio de correo, generar gr%ficas din%micamente, y un largo etc.
+ctualmente se !a presentado ya la segunda versin de +4", el +4".,E(, que comprende algunas mejoras en cuanto a
posibilidades del lenguaje y rapide# con la que funciona. +4".,E( tiene algunas diferencias en cuanto a sintaxis con el +4",
de modo que se !a de tratar de distinta manera uno de otro.
"ara enterarnos bien de lo que es +4" y aprender a programar en el lenguaje disponemos de una seccin en
3esarrolloWeb dedicada por entero a tratar 2) a fondo.
Artculo por Miguel Angel Alvarez
"%"%& *u+ es P'P
s un lenguaje para programar scripts del lado del servidor, que se incrustan dentro del cdigo ./ML.
ste lenguaje es gratuito y multiplata+orma.
"'" es el acrnimo de 'ipertext "reprocesor. +s un lenguaje de programacin del lado del servidor gratuito e
independiente de plataforma, r%pido, con una gran librera de funciones y muc!a documentacin.
8n lenguaje del lado del servidor es aquel que se ejecuta en el servidor web, justo antes de que se enve la p%gina a travs
de /nternet al cliente. *as p%ginas que se ejecutan en el servidor pueden reali#ar accesos a bases de datos, conexiones en red,
y otras tareas para crear la p%gina final que ver% el cliente. El cliente solamente recibe una p%gina con el cdigo '()*
resultante de la ejecucin de la "'". 1omo la p%gina resultante contiene >nicamente cdigo '()*, es compatible con
todos los navegadores. "odemos saber algo m%s sobre la programacin del servidor y del cliente en el artculo qu es
='()*.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
17
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Esquema del funcionamiento de las p%ginas "'".
8na ve# que ya conocemos el concepto de lenguaje de programacin de scripts del lado del servidor podemos !ablar de
"'". H se escribe dentro del cdigo H!"#, lo que lo !ace realmente f%cil de utili#ar, al igual que ocurre con el
popular +4" de )icrosoft, pero con algunas ventajas como su gratuidad, independencia de plataforma, rapide# y seguridad.
1ualquiera puede descargar a travs de la p%gina principal de "'" &&&.p!p.net y de manera gratuita, un mdulo que !ace
que nuestro servidor &eb comprenda los scripts reali#ados en este lenguaje. Es independiente de plataforma, puesto que
existe un mdulo de "'" para casi cualquier servidor &eb. Esto !ace que cualquier sistema pueda ser compatible con el
lenguaje y significa una ventaja importante, ya que permite portar el sitio desarrollado en "'" de un sistema a otro sin
pr%cticamente ning>n trabajo.
"'", en el caso de estar montado sobre un servidor *inux u 8nix, es m%s r%pido que +4", dado que se ejecuta en un >nico
espacio de memoria y esto evita las comunicaciones entre componentes 1P) que se reali#an entre todas las tecnologas
implicadas en una p%gina +4".
"or >ltimo se7al%bamos la seguridad, en este punto tambin es importante el !ec!o de que en muc!as ocasiones "'" se
encuentra instalado sobre servidores 8nix o *inux, que son de sobra conocidos como m%s veloces y seguros que el sistema
operativo donde se ejecuta las +4", 3indo&s ,( o 2000. +dem%s, "'" permite configurar el servidor de modo que se
permita o rec!acen diferentes usos, lo que puede !acer al lenguaje m%s o menos seguro dependiendo de las necesidades de
cada cual.
2ue creado originalmente en KTTL por 0asmus *erdorf, pero como H est' desarrollado en pol:tica de cdigo
abierto, a lo largo de su !istoria !a tenido muc!as contribuciones de otros desarrolladores. +ctualmente "'" se encuentra
en su versin ;& *ue utili(a el motor <end, desarrollado con mayor meditacin para cubrir las necesidades de las
aplicaciones &eb actuales.
Este lenguaje de programacin est% preparado para reali#ar muc!os tipos de aplicaciones &eb gracias a la extensa librera de
funciones con la que est% dotado. *a librera de funciones cubre desde c%lculos matem%ticos complejos !asta tratamiento de
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
18
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
conexiones de red, por poner dos ejemplos.
+lgunas de las m%s importantes capacidades de "'" son- compatibilidad con las bases de datos m%s comunes, como
)y4C*, m4C*, Pracle, /nformix, y P=:1, por ejemplo. /ncluye funciones para el env:o de correo electrnico, upload
de arc%ivos, crear din'micamente en el servidor im'genes en formato =>4, incluso animadas y una lista interminable
de utilidades adicionales.
4e puede obtener muc!a m%s informacin de "'" en los diversos manuales de "'" que !emos publicado en
desarrollo&eb. )anuales que atienden a los diversos niveles de cada programdor-
"rogramacin en "'" - +prende "'" desde el principio con este manual que toca las prestaciones m%s
imprescindibles.
"rogramacin en "'" // - +prende a !acer una aplicacin pr%ctica en "'". 8n sistema de postales.
(aller de "'" - otros artculos pr%cticos m%s avan#ados con el lenguaje.
Artculo por Miguel Angel Alvarez
"%#%& *u+ es J.P
La tecnolog!a 2ava para la creacin de pginas web con programacin en el servidor.
A4" es un acrnimo de Aava 4erver "ages, que en castellano vendra a decir algo como "%ginas de 4ervidor Aava. Es, pues,
una tecnologa orientada a crear p%ginas &eb con programacin en Aava.
Bibliograf:a: Esta descripcin de A4" est% extrada de un "=2 en ingls muy completo que introduce la
tecnologa, que se puede encontrar el la p%gina corporativa de Aava de 4un )icrosystems, en su seccin de
aprendi#aje online. + su ve#, dic!o manual proviene del portal Aava j=uru .
jBuru- /ntroduction to Aava4erver "ages tec!nology
1on A4" podemos crear aplicaciones &eb que se ejecuten en variados servidores &eb, de m>ltiples plataformas, ya que Aava
es en esencia un lenguaje multiplataforma. *as p%ginas A4" est%n compuestas de cdigo '()*<.)* me#clado con
etiquetas especiales para programar scripts de servidor en sintaxis Aava. "or tanto, las A4" podremos escribirlas con nuestro
editor '()*<.)* !abitual.
"otor .)
El motor de las p%ginas A4" est% basado en los servlets de Aava @programas en Aava destinados a ejecutarse en el servidor@,
aunque el n>mero de desarrolladores que pueden afrontar la programacin de A4" es muc!o mayor, dado que resulta muc!o
m%s sencillo aprender que los servlets.
En A4" creamos p%ginas de manera parecida a como se crean en +4" o "'" @otras dos tecnologas de servidor@.
Beneramos arc!ivos con extensin .jsp que incluyen, dentro de la estructura de etiquetas '()*, las sentencias Aava a
ejecutar en el servidor. +ntes de que sean funcionales los arc!ivos, el motor A4" lleva a cabo una fase de traduccin de esa
p%gina en un servlet, implementado en un arc!ivo class 5:yte codes de Aava6. Esta fase de traduccin se lleva a cabo
!abitualmente cuando se recibe la primera solicitud de la p%gina .jsp, aunque existe la opcin de precompilar en cdigo para
evitar ese tiempo de espera la primera ve# que un cliente solicita la p%gina.
+jemplo de p'gina .)
En la imagen siguiente se puede ver un ejemplo extremadamente simple de una p%gina A4" y el esquema de conversin de
esa p%gina en un servlet.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
19
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com

rere*uisitos
"ara aprender A4", aparte de conocer '()*, ser% necesario comprender y tener algo de experiencia en la programacin en
Aava, que es un lenguaje de programacin Prientado a Pbjetos por completo. 8na ve# conocida la programacin en Aava se
puede estudiar por encima el sistema de 4ervlets, lo que nos dar% una mejor idea del funcionamiento interno del motor A4".
"ara aprender Aava podemos consultar algunos enlaces del correspondiente directorio de nuestro buscador de enlaces.
+dem%s, necesitaremos descargar e instalar (omcat, el contenedor de servlets usado en la referencia oficial de
implementacin de A4". "odemos acceder a un ejercicio para aprender a reali#ar esta instalacin, disponible tambin en la
referencia de aprendi#aje de la p%gina de Aava.
Referencias .)
'emos creado una nueva seccin en nuestro directorio dedicada por completo a las p%ginas A4", que ser% muy interesante
para todo aquel que desee profundi#ar en el tema.
Artculo por Miguel Angel Alvarez
"%4%& 2om,arando J.P con A.P
*n art!culo que apunta las principales di+erencias entre las tecnolog!as 2,P y &,P. .ace especial 1n+asis
en las ventajas que se encuentran en el sistema 2ava +rente al Microso+t.
A4" y +4" sirven para !acer, m%s o menos, el mismo tipo de aplicaciones &eb. 4in embargo, en el fondo tienen bastantes
diferencias. =espus de mi experiencia en el trabajo con A4", un da un cliente me pregunt por qu no programaba la
p%gina en +4" en lugar de A4", ya que !aba oido !ablar que el sistema de )icrosoft tena unas caractersticas muy
apropiadas para su modelo de negocio. + partir de esta sugerencia, y para que mi cliente quedase satisfec!o con la tecnologa
A4" @que es la que prefiero utili#ar@, prepar una lista de ventajas de utili#ar p%ginas din%micas Aava frente a las de )icrosoft.
lataforma e independencia del servidor
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
20
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
A4" sigue la filosofa de la arquitectura A+$+ de ?escribe una ve# ejecuta donde quieras?. *a implantacin de +4" est%
limitada para arquitecturas basadas en tecnologa )icrosoft.
+s, A4" se puede ejecutar en los sistemas operativos y servidores &eb m%s populares, como por ejemplo +pac!e, ,etscape
o )icrosoft //4. )ientras que +4" slo tiene soporte nativo para los servidores //4 y "ersonal 3eb 4erver, que son los dos
servidores &eb para sistemas )icrosoft, el primero con tecnologa ,( y el segundo para sistemas 3indo&s TU y similares.
roceso de desarrollo abierto 8open source9
El +"/ A4" se beneficia de la extendida comunidad A+$+ existente, por el contrario la tecnologa +4" es especfica de
)icrosoft que desarrolla sus procesos internamente.
!2=)
)ientras que tanto A4" como +4" usan una combinacin de tags y scripts para crear paginas &eb din%micas, la tecnologa
A4" permite a los desarrolladores crear nuevos tags. +s los desarrolladores pueden crear nuevos tags y no depender tanto de
los scripts.
Reusabilidad entre plataformas.
*os componentes A4" son reusables en distintas plataformas 58,/., 3indo&s6.
#a ventaja .ava
*a tecnologa A4" usa Aava como lenguaje de 4cript mientras que +4" usa $:4cript o Ascript. Aava es un lenguaje mas
potente y escalable que los lenguajes de 4cript. *as p%ginas A4" son compilados en 4ervlets por lo que act>an como una
puerta a todos los servicios Aava de 4ervidor y libreras Aava para aplicaciones !ttp. Aava !ace el trabajo del desarrollador m%s
f%cil p. e. ayuda a proteger el sistema contra las ?cadas? mientras que las aplicaciones +4" sobre sistemas ,( son m%s
susceptibles a sufrirlas, tambin ayuda en el manejo de la memoria protegiendo contra fallos de memoria y el duro trabajo de
buscar los fallos de perdida de punteros de memoria que pueden !acer mas lento el funcionamiento de una aplicacin.
"antenimiento
*as aplicaciones que usan A4" tiene un mantenimiento m%s f%cil que las que usan +4".
*os lenguajes de 4cript est%n bien para peque7as aplicaciones, pero no encajan bien para aplicaciones grandes. Aava
es un lenguaje estructurado y es m%s f%cil de construir y mantenimientos grandes como aplicaciones modulares.
*a tecnologa A4" !ace mayor nfasis en los componentes que en los 4cripts, esto !ace que sea m%s f%cil revisar el
contenido sin que afecte a la lgica o revisar la lgica sin cambiar el contenido.
*a arquitectura EA: encapsula la lgica de p. e.- acceso a :=, seguridad, integridad transaccional y aislamiento de la
aplicacin.
=ebido a que la tecnologa A4" es abierta y multiplataforma, los servidores &eb, plataformas y otros componentes
pueden ser f%cilmente actuali#ados o cambiados sin que afecte a las aplicaciones basadas en la tecnologa A4".
$onclusin
*as ventajas sobre utili#ar la tecnologa Aava con respecto a la propietaria de )icrosoft 5+4"6 son, como se !a podido ver,
diversas e interesantes. 4in embargo, podemos apuntar una ventaja de la programacin en +4", pues resulta bastante m%s
f%cil de aprender que A4", por lo menos si no se tiene una experiencia previa en programacin. Esto es debido a que Aava es
un lenguaje muy potente, pero un poco m%s complicado de usar porque es orientado a objetos y la manera de escribir los
programas es m%s rgida.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
21
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
Referencias: "ara conocer m%s sobre +4" y A4" puedes acceder a las correspondientes categoras de enlaces
de nuestro buscador.
=irectorio de enlaces +4"
=irectorio de enlaces A4"
+dem%s, para +4" tenemos una seccin dedicada exclusivamente- +4" a 2ondo
Artculo por Natxo Mendez
Parte 5:
XL
Es un lengua)e <ue tiene a su alrededor distintas tecnologas para cubrir un gran abanico
de posibilidades. /eremos una introducci%n al lengua)e # el por <u= de su importancia
en el momento actual. 6dem.s9 daremos re:erencias para <ue las personas puedan
obtener m.s in:ormaci%n.
#%1%& *u+ es $ML
"emos muy rpidamente lo que es el mundo XML y algunos destellos de sus posibilidades.
.)* es una tecnologa en realidad muy sencilla que tiene a su alrededor otras tecnologas que la complementan y la !acen
muc!o m%s grande y con unas posibilidades enormes y b%sicas para la sociedad de la informacin. $amos a ver a lo largo de
varios captulos una introduccin al mundo .)*, es decir, al lenguaje as como a las tecnologas que trabajan con l, sus
usos, ventajas y modos de llevar a cabo las tareas.
.)*, con todas las tecnologas relacionadas, representa una manera distinta de !acer las cosas, m%s avan#ada, cuya principal
novedad consiste en permitir compartir los datos con los que se trabaja a todos los niveles, por todas las aplicaciones y
soportes. +s pues, el .)* juega un papel importantsimo en este mundo actual, que tiende a la globali#acin y la
compatibilidad entre los sistemas, ya que es la tecnologa que permitir% compartir la informacin de una manera segura,
fiable, f%cil. +dem%s, .)* permite al programador y los soportes dedicar sus esfuer#os a las tareas importantes cuando
trabaja con los datos, ya que algunas tareas tediosas como la validacin de estos o el recorrido de las estructuras corre a
cargo del lenguaje y est% especificado por el est%ndar, de modo que el programador no tiene que preocuparse por ello.
$emos que .)* no est% slo, sino que !ay un mundo de tecnologas alrededor de l, de posibilidades, maneras m%s f%ciles e
interesantes de trabajar con los datos y, en definitiva, un avance a la !ora de tratar la informacin, que es en realidad el
objetivo de la inform%tica en general. .)*, o mejor dic!o, el mundo .)* no es un lenguaje, sino varios lenguajes, no es
una sintaxis, sino varias y no es una manera totalmente nueva de trabajar, sino una manera m%s refinada que permitir% que
todas las anteriores se puedan comunicar entre si sin problemas, ya que los datos cobran sentido. (odo esto lo veremos con
calma en la /ntroduccin a .)*.
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
22
Tu mejor ayuda para aprender a hacer webs
www.desarrolloweb.com
.)* es interesante en el mundo de /nternet y el e@bussiness, ya que existen muc!os sistemas distintos que tienen que
comunicarse entre si, pero como se !a podido imaginar, interesa por igual a todas las ramas de la inform%tica y el
tratamiento de datos, ya que permite muc!os avances a la !ora de trabajar con ellos.
+s pues, os recomendamos seguir esta lectura en la introduccin a .)*. + lo largo de los siguientes captulos, vamos a ver
algunas caractersticas importantes de la tecnologa que nos permitir%n comprender mejor el mundo .)* y cmo soluciona
nuestros problemas a la !ora de trabajar con los datos.
Artculo por Miguel Angel Alvarez
Introduccin a los lenguajes del web: http://www.desarrolloweb.com/manuales/27/
! "os manuales de DesarrolloWeb.com tienen el cop#right de sus autores. $o reproducir sin autorizaci%n.
23

Das könnte Ihnen auch gefallen