Professional Documents
Culture Documents
DEL
ISTMO
CARRERA:
ING. EN SISTEMAS COMPUTACIONALES
MATERIA:
DESARROLLO DE APLICACIONES PARA AMBIENTES DISTRIBUIDOS
ALUMNA:
CATEDRATICO:
INDICE
Introduccin . 3
Panorama general de las aplicaciones distribuidas 4
5.1 Lenguajes de marcado ..4
5.2 Tecnologas para implementacin de interfaz de usuario 6
5.3 Programacin .. 7
5.3.1 Lenguajes del lado cliente . 9
5.3.2 Del lado del servidor 11
INTRODUCCION:
La evolucin de las aplicaciones informticas se dio debido a los siguientes
factores:
Trabajo a distancia, Compartir informacin, Accesibilidad, Seguridad en la
proteccin de la informacin (tener la base de datos particionada en dos o ms
nodos), Independencia de lugares. En la actualidad cualquier aplicacin cuenta
generalmente con tres partes diferenciadas:
- Una interfaz de usuario: Elemento con el que interacciona el usuario de la
aplicacin, ejecutando acciones, introduciendo u obteniendo informacin.
- Lgica o Reglas de negocio: Son las que procesan la informacin para
generar los resultados que persiguen, siendo el elemento fundamental que
diferencia unas aplicaciones de otras.
- Gestin de datos: Se ocupa del almacenamiento y recuperacin de la
informacin.
5.3 Programacin.
La creacin de las interfaces de usuario ha sido un rea del desarrollo de
software que ha evolucionado dramticamente a partir de la dcada de los
setentas. La interfaz de usuario es el vnculo entre el usuario y el programa de
computadora. Una interfaz es un conjunto de comandos o mens a travs de
los cuales el usuario se comunica con el programa. Esta es una de las partes
ms importantes de cualquier programa ya que determina que tan fcilmente
es posible que el programa haga lo que el usuario quiere hacer. Un programa
muy poderoso con una interfaz pobremente elaborada tiene poco valor para un
usuario no experto. La elaboracin de una interfaz de usuario, bien diseada,
exige una gran dedicacin pues generalmente las interfaces son grandes,
complejas y difciles de implementar, depurar y modificar. Hoy en da las
interfaces de manipulacin directa (tambin llamadas interfaces grficas de
usuario, GUI por sus siglas en ingls) son prcticamente universales. Las
interfaces que utilizan ventanas, conos y mens se han convertido en estndar
en los materiales computacionales. La interfaz representa el punto de
encuentro entre el usuario y la computadora. En esta interaccin, el usuario
juzga la utilidad de la interfaz; el hardware y el software se convierten en
simples herramientas sobre los cuales fue construida la interfaz. La definicin
de interfaz en s misma es un tanto arbitraria, aunque esto depende de la
naturaleza de la tarea que se tiene enfrente. Existen muchos tipos de software
para la creacin de interfaces de usuario. El sistema de ventanas permite la
divisin de la pantalla en diferentes regiones rectangulares, llamadas
``ventanas''. El sistema de ventanas XWindows para Unix divide la
funcionalidad de la ventana en dos capas: el sistema de ventanas, el cual es la
interfaz funcional, y el administrador de ventanas. El sistema de ventanas
provee de procedimientos que permiten a la aplicacin el dibujar figuras en la
Consideraciones tcnicas
Una ventaja significativa es que las aplicaciones web deberan funcionar igual
independientemente de la versin del sistema operativo instalado en el cliente.
En vez de crear clientes para Windows, Mac OS X, GNU/Linux y otros sistemas
operativos, la aplicacin web se escribe una vez y se ejecuta igual en todas
partes. Sin embargo, hay aplicaciones inconsistentes escritas con HTML, CSS,
DOM y otras especificaciones estndar para navegadores web que pueden
causar problemas en el desarrollo y soporte de estas aplicaciones,
principalmente debido a la falta de adhesin de los navegadores a dichos
estndares web (especialmente versiones de Internet Explorer anteriores a la
7.0). Adicionalmente, la posibilidad de los usuarios de personalizar muchas de
las caractersticas de la interfaz (tamao y color de fuentes, tipos de fuentes,
inhabilitar Javascript) puede interferir con la consistencia de la aplicacin web.
Otra aproximacin es utilizar Adobe Flash Player o Java applets para
desarrollar parte o toda la interfaz de usuario. Como casi todos los
navegadores incluyen soporte para estas tecnologas (usualmente por medio
de plug-ins), las aplicaciones basadas en Flash o Java pueden ser
implementadas con aproximadamente la misma facilidad. Dado que ignoran las
configuraciones de los navegadores, estas tecnologas permiten ms control
sobre la interfaz, aunque las incompatibilidades entre implementaciones Flash
o Java puedan crear nuevas complicaciones, debido a que no son estndares.
Por las similitudes con una arquitectura cliente-servidor, con un cliente "no
ligero", existen discrepancias sobre el hecho de llamar a estos sistemas
aplicaciones web; un trmino alternativo es Aplicacin Enriquecida de
Internet.
La Programacin es el proceso de disear, codificar, depurar y mantener el
cdigo fuente de programas computacionales. El cdigo fuente es escrito en un
lenguaje de programacin. El propsito de la programacin es crear programas
que exhiban un comportamiento deseado. El proceso de escribir cdigo
requiere frecuentemente conocimientos en varias reas distintas, adems del
dominio del lenguaje a utilizar, algoritmos especializados y lgica formal.
Programar no involucra necesariamente otras tareas tales como el anlisis y
diseo de la aplicacin (pero s el diseo del cdigo), aunque s suelen estar
fusionadas en el desarrollo de pequeas aplicaciones.
10
Todo lo que suceda dentro del servidor es llamado procesamiento del lado del
servidor, o server-side processing. Cuando tu aplicacin necesita interactuar
con el servidor (por ejemplo, para cargar o guardar datos), sta realiza una
peticin del lado del cliente (client-side request) desde el navegador, a travs
de la red usando invocaciones remotas a mtodos (remote procedure call,
RPC). Mientras se est procesando una llamada RPC, tu servidor est
ejecutando cdigo del lado del servidor.
La utilizacin de las diferentes aplicaciones o servicios de Internet se lleva a
cabo respondiendo al llamado modelo cliente-servidor.
Cuando se utiliza un servicio en Internet, como consultar una base de datos,
transferir un archivo o participar en un foro de discusin, se establece un
proceso en el que entran en juego dos partes. Por un lado, el usuario, quien
ejecuta una aplicacin en procesador local: el denominado programa cliente.
Este programa cliente se encarga de ponerse en contacto con el procesador
remoto para solicitar el servicio deseado. El procesador remoto por su parte
responder a lo solicitado mediante un programa que esta ejecutando. Este
ltimo se denomina programa servidor. Los trminos cliente y servidor se
utilizan tanto para referirse a los programas que cumplen estas funciones,
como a las computadoras donde son ejecutados esos programas.
El programa o los programas cliente que el usuario utiliza para acceder a los
servicios de Internet realizan dos funciones distintas. Por una parte, se
encargan de gestionar la comunicacin con el computador servidor, de solicitar
un servicio concreto y de recibir los datos enviados por ste; y por otra, es la
herramienta que presenta al usuario los datos en pantalla y que le ofrece los
comandos necesarios para utilizar las prestaciones que ofrece el servidor.
Cuando nosotros seleccionamos un enlace hipertexto, en realidad lo que pasa
es que establecemos una peticin de un archivo HTML residente en el servidor
(una computadora que se encuentra continuamente conectado a la red) el cual
es enviado e interpretado por nuestro navegador (el cliente).
As pues, podemos hablar de lenguajes de lado servidor que son aquellos
lenguajes que son reconocidos, ejecutados e interpretados por el propio
servidor y que se envan al cliente en un formato comprensible para l, por
ejemplo: ASP, PHP, JSP.
12
Por otro lado, los lenguajes de lado cliente (entre los cuales no slo se
encuentra el HTML sino tambin el Java y el JavaScript los cuales son
simplemente incluidos en el cdigo HTML) son aquellos que pueden ser
directamente "digeridos" por el navegador y no necesitan un pretratamiento.
Cada uno de estos tipos tiene por supuesto sus ventajas y sus inconvenientes.
As, por ejemplo, un lenguaje de lado cliente es totalmente independiente del
servidor, lo cual permite que la pgina pueda ser albergada en cualquier sitio
sin necesidad de pagar ms ya que, por regla general, los servidores que
aceptan pginas con scripts de lado servidor son en su mayora de pago o sus
prestaciones son muy limitadas. Inversamente, un lenguaje de lado servidor es
independiente del cliente por lo que es mucho menos rgido respecto al cambio
de un navegador a otro o respecto a las versiones del mismo.
14
15