Selección de arquitecturas y herramientas de programación

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Selección de arquitecturas y herramientas de programación"

Transcripción

1 1 Selección de arquitecturas y herramientas de programación Objetivos del capítulo 44 Caracterizar y diferenciar los modelos de ejecución de código en un entorno cliente/servidor. 44 Conocer los mecanismos de ejecución de código en función de las diferentes tecnologías web. 44 Reconocer las ventajas de la generación dinámica de páginas web. 44 Identificar y caracterizar los principales lenguajes y tecnologías de programación en entorno servidor. 44 Conocer las distintas herramientas de programación web para lenguajes de servidor.

2 Desarrollo web en entorno servidor RA-MA En este primer capítulo presentamos los conceptos necesarios para comprender el contexto del desarrollo de aplicaciones y sistemas de información web. Para ello, introducimos los modelos de programación más comunes en la Web, así como los diferentes lenguajes y tecnologías de programación, del lado del servidor, aplicables en este tipo de entornos. Por último, haremos un recorrido por algunas de las herramientas que el desarrollador tiene a su alcance para sacarle el máximo partido a la programación web. 1.1 Modelos de programación en entornos cliente/ Servidor La World Wide Web (o la Web, como se conoce comúnmente) representa un universo de información accesible globalmente a través de Internet. Está formada por un conjunto de recursos interconectados que conforman el conocimiento humano actual. El funcionamiento de la Web es posible debido a la coexistencia de una serie de componentes software y hardware. Estos elementos abarcan desde los componentes físicos de Internet (hubs, repetidores, puentes, pasarelas, encaminadores, etc.) y los protocolos de comunicaciones (TCP, IP, HTTP, FTP, SMTP, etc.) hasta la utilización del sistema de nombres de dominio (DNS) para la búsqueda y recuperación de recursos o la utilización de software específico para proveer y consumir dichos recursos. En este contexto, el desarrollo en entornos web debe tener en cuenta la distribución de los elementos y la función que tiene cada uno de ellos. La configuración arquitectónica más habitual se basa en el modelo denominado Cliente/ Servidor, basado en la idea de servicio, en el que el cliente es un componente consumidor de servicios y el servidor es un proceso proveedor de servicios. Además, esta relación está robustamente cimentada en el intercambio de mensajes como el único elemento de acoplamiento entre ambos. El agente que solicita la información se denomina cliente, mientras que el componente software que responde a esa solicitud es el que se conoce como servidor. En un proceso habitual el cliente es el que inicia el intercambio de información, solicitando datos al servidor, que responde enviando uno o más flujos de datos al cliente. Además de la transferencia de datos real, este intercambio puede requerir información adicional, como la autenticación del usuario o la identificación del archivo de datos que vayamos a transferir. La Figura 1.1 muestra este proceso genérico. Figura 1.1. Vista general del modelo cliente/servidor 14

3 RA-MA 1 n SELECCIÓN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIÓN Las funcionalidades en los entornos cliente/servidor de la Web suelen estar agrupadas en diferentes capas, cada una centrada en la gestión de un aspecto determinado del sistema web. Si bien es posible encontrarse con divisiones más o menos especializadas, tradicionalmente se identifican tres tipos de capas fundamentales: capa de presentación, capa de la lógica de negocio y capa de persistencia (almacenamiento de datos). Los modelos arquitectónicos de programación se pueden clasificar en función de en qué lugar, si en el cliente o en el servidor, se sitúan cada una de estas capas. La decisión de dónde se sitúa cada una de estas capas dependerá del entorno de ejecución y, por tanto, de las tecnologías y lenguajes utilizados. Capa de presentación: esta capa es la que ve el usuario. Le presenta una interfaz gráfica del recurso solicitado y sirve para recoger su interacción. Suele estar situada en el cliente. La programación de esta capa se centra en el formateo de la información enviada por el servidor y la captura de las acciones realizadas por el cliente. Capa de negocio: es la capa que conoce y gestiona las funcionalidades que esperamos del sistema o aplicación web (lógica o reglas de negocio). Habitualmente es donde se reciben las peticiones del usuario y desde donde se envían las respuestas apropiadas tras el procesamiento de la información proporcionada por el cliente. Al contrario que la capa de presentación, la lógica de negocio puede ser programada tanto en el entorno cliente como en el entorno servidor. Capa de persistencia o de datos: es la capa donde residen los datos y la encargada de acceder a los mismos. Normalmente, está formada por uno o más gestores de bases de datos que realizan todo el proceso de administración de datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de negocio. El diseño de cada una de estas capas influye a la hora de seleccionar uno u otro modelo de programación en la Web. Dichos modelos de programación cliente/servidor pueden clasificarse de este modo atendiendo a diferentes criterios. Así, es posible clasificarlos dependiendo del tamaño de los componentes, por la naturaleza del servicio ofrecido o según el reparto de funciones entre cliente y servidor: Según el tamaño de los componentes: esta primera clasificación hace referencia a qué elemento de la arquitectura web debe soportar más o menos carga de procesamiento. Se habla de configuraciones Fat Client (thin Server), donde el mayor peso de la aplicación se ejecuta en el cliente relegando al servidor a un mero administrador de datos; o Fat Server (thin client), donde la funcionalidad asociada al cliente está limitada a la presentación de la información enviada por el servidor. Según la naturaleza del servicio ofrecido: también es posible clasificar los entornos cliente/servidor en función de las capacidades ofrecidas por el servidor. De esta forma, podemos encontrar servidores de ficheros, donde el objetivo del cliente es el acceso a datos contenidos en ficheros; servidores de bases de datos, que se centran en la provisión y administración de sistemas gestores de bases de datos; servidores de transacciones, centrados en el concepto de transacción con el objetivo de que los flujos de información con el cliente se realicen en un solo mensaje solicitud/respuesta; servidores de objetos, cuya principal característica es la utilización de objetos intercomunicados, tanto en el cliente como en el servidor; o servidores web, que conforman la base del modelo World Wide Web y que está fundamentado en la existencia de clientes simples que se comunican con servidores web utilizando HTTP como protocolo de comunicación. n n Reparto de funciones entre cliente y servidor: las diferentes tecnologías web existentes permiten gestionar y distribuir las responsabilidades de cada una de las prestaciones funcionales entre el cliente y el servidor. Lo más habitual es tener una configuración cliente/servidor de dos o tres capas, dependiendo de si las capas de negocio y datos se agrupan (modelo en dos capas) o si se separan (modelo en tres capas). La separación en dos o tres capas la podemos ver, además, tanto desde el punto de vista del software como del hardware. 15

4 Desarrollo web en entorno servidor RA-MA 1.2 Generación dinámica de páginas web El contenido que visualiza un cliente se obtiene debido a su interacción con una aplicación que es gestionada por el servidor. Las aplicaciones web pueden ser clasificadas de acuerdo a múltiples criterios: dependiendo de la configuración o modelo arquitectónico seleccionado, según la tecnología o lenguaje utilizado e, incluso, desde un punto de vista más funcional, es decir, observando la capacidad de comunicación con los usuarios en respuesta a sus interacciones con la interfaz que se les presenta. Son estos criterios los que dan lugar a la clasificación de las aplicaciones web en estáticas, dinámicas e interactivas. Aplicaciones web estáticas: hacen referencia a aquellas aplicaciones web en las que el usuario recibe una página web cuya interacción no conlleva ningún tipo de acción, ni en la propia página, ni genera respuesta alguna por parte del servidor. Este tipo de aplicaciones suele realizarse utilizando el lenguaje HTML exclusivamente para la organización visual de la información. Aplicaciones web dinámicas: la programación de estas aplicaciones suele conocerse con el nombre de HTML dinámico (DHTML) y se refiere a aquellas aplicaciones en las que la interacción del cliente con el recurso recibido por parte del servidor (página web) produce algún tipo de cambio en la visualización del mismo (cambios de formato, ocultación de partes del documento, creación de elementos nuevos, etc.). Los lenguajes involucrados en este tipo de aplicaciones incluyen, entre otros, HTML, CSS o las múltiples variaciones de JavaScript (VBScript, JScript, Flash, etc.). Aplicaciones web interactivas: al contrario que en los tipos de aplicaciones anteriores, donde la interacción del usuario produce un cambio en el recurso recibido, las aplicaciones web interactivas se basan en que dicha interacción hace que se genere un diálogo entre el cliente y el servidor. Desde el punto de vista del modelo de programación, la lógica asociada al inicio y gestión de dicho diálogo puede ser ejecutada tanto en el cliente como en el servidor (e incluso en ambos). El tipo de aplicaciones web interactivas es el que más se utiliza actualmente en Internet y donde el número de tecnologías disponibles ha evolucionado más en los últimos años. Las tecnologías implicadas en este tipo de aplicaciones varían mucho en función de si son ejecutadas en el lado del cliente o en el lado del servidor. En el lado del cliente encontramos lenguajes y tecnologías para la creación de aplicaciones interactivas como HTML (por ejemplo, en la forma de formularios que rellena el usuario y envía al servidor), controles ActiveX (ejecución de comportamientos asociados a certificados), objetos embebidos de tipo Flash (animaciones interactivas visualmente atractivas), applets o AJAX (carga dinámica de contenidos), entre otros. En el lado del servidor es posible utilizar lenguajes embebidos en código HTML (como PHP, ASP o JSP), enlaces a ejecutables (tipo CGI o SSI), objetos (Servlets) e incluso lenguajes que separan la presentación de la lógica de negocio (ASP.Net de Microsoft). 16

5 RA-MA 1 n SELECCIÓN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIÓN 1.3 lenguajes de programación en entorno servidor Se entiende por lenguaje de programación correspondiente a un entorno servidor a aquel cuyo código, bien sea como objeto precompilado o bien como código interpretado, es ejecutado por un software específico en el componente que actúa como servidor. Existen múltiples alternativas a la hora de ejecutar código en el servidor. Una de ellas es utilizar lenguajes de scripting (SSI, LiveWire, ASP, PHP, etc.), cuya característica principal es que el código es interpretado y que se intercala con una plantilla de código HTML con la estructura básica de la página que se envía al cliente. Otra alternativa es el uso de enlaces a programas y componentes ejecutables (CGI, JSP, EJB, etc.), de tal forma que el código ejecutado por el servidor está almacenado en unidades precompiladas y ejecutadas de forma independiente, que generan las páginas enviadas al cliente. Otras técnicas de programación en el lado del servidor incluyen el uso de estrategias híbridas basadas en técnicas de respaldo (denominadas code-behind), como ASP.Net de Microsoft, en el que algunos elementos de código se intercalan con la lógica de presentación mientras que se mantiene la funcionalidad de dichos elementos en ficheros o librerías independientes en el servidor Lenguajes de scripting Se entiende por lenguaje de scripting (o embebido) aquel que se intercala con el código HTML que forma una aplicación web. La idea básica es crear una serie de plantillas HTML en las que se insertan instrucciones de programación en diferentes lenguajes que son ejecutadas por un servidor para determinar las partes dinámicas de las páginas web. Para que estas porciones de código sean ejecutadas, el agente que actúa de servidor (servidor web) debe tener instalado un módulo (scripting engine) que sea capaz de reconocer e interpretar el lenguaje en el que se programa dicho código. Existen diversos lenguajes de scripting que pueden utilizarse para la creación de aplicaciones web dinámicas. Entre ellos destacan PHP, ASP, Perl, Python y JSP: PHP (Hypertext Processor): es uno de los lenguajes más extendidos actualmente. Cuenta con una comunidad de desarrolladores muy importante debido a sus características de gratuidad, código abierto, la posibilidad de ser portado y ejecutado en diferentes plataformas, etc. Se define como un lenguaje imperativo de tipos dinámicos, con la posibilidad de utilizar construcciones orientadas a objetos. Es soportado por la gran mayoría de servidores web actuales. ASP (Active Server Pages): se trata de una tecnología propietaria y de código cerrado para el lado del servidor de Microsoft. Su última versión es la 3.0 y data del año 2002, año a partir del cual se empezó a sustituir progresivamente por la versión ASP.Net. Aunque puede ser ejecutado en otros servidores web, ASP está diseñado especialmente para ser utilizado con IIS (Internet Information Server). El lenguaje utilizado con ASP es Visual Basic en su versión de scripting (VBScript), aunque también pueden usarse otros (JScript). n n Perl: fue inicialmente concebido como un lenguaje de manipulación de cadenas de caracteres basado en un estilo de programación por bloques, como C o AWK. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de código delimitados por llaves, estructuras de control y subrutinas actualmente orientado a la generación dinámica de páginas web. Fue uno de los primeros lenguajes en ser utilizados para la programación web (para crear aplicaciones CGI). Es de código abierto y cuenta con una comunidad bastante numerosa de seguidores. 17

6 Desarrollo web en entorno servidor RA-MA Python: es un lenguaje de scripting independiente de plataforma y orientado a objetos, preparado para realizar cualquier tipo de programas, desde aplicaciones Windows a servidores de red, o incluso páginas web. Es un lenguaje interpretado, lo que significa que no necesitamos compilar el código fuente para poder ejecutarlo. Esto ofrece ventajas, como la rapidez de desarrollo, e inconvenientes, como una menor velocidad. En los últimos años el lenguaje se ha hecho muy popular gracias a la cantidad de librerías, tipos de datos y funciones incorporadas en el propio lenguaje o la sencillez y velocidad con la que se crean los programas. Además, Python es un lenguaje gratuito, es decir, no necesita de ningún software de pago adicional para su ejecución incluso para propósitos empresariales. JSP (Java Server Pages): el funcionamiento de Java como lenguaje de script es similar al de PHP o ASP: se trata de porciones de código Java intercalado con código HTML estático. Sin embargo, la forma de interpretarlo es diferente. Una vez que el módulo encargado de ejecutar la página JSP llega a una porción de código Java, lo transforma a un Servlet (porción de código Java cargado en la memoria de un servidor web) y lo ejecuta obteniendo el código que ha de enviarse al cliente. La diferencia con otros lenguajes es que el servlet queda cargado en memoria por si llegara otra petición a la misma página JSP, con lo que el rendimiento se ve mejorado notablemente. Existen muchos otros lenguajes de scripting en el lado del servidor enfocados a entornos más específicos y con características particulares, como ColdFusion Markup Language, Lua, Ruby, SMX, Lasso, WebDNA o Progress WebSpeed Aplicaciones CGI y derivados Una de las formas más simples de generar páginas dinámicas es delegar la creación de las mismas a un programa externo, que reciba ciertos parámetros de entrada y devuelva como resultado el contenido que debe visualizar el cliente. El estándar CGI (Common Gateway Interface), especificado en la RFC3875, define precisamente este comportamiento, estableciendo los vínculos que hay que establecer con una aplicación independiente o fichero ejecutable. Puesto que el programa externo no depende del código a generar, el lenguaje elegido puede ser cualquiera (como C o C++). La localización del script o fragmento de programa a ejecutar se indica en la URL que forma la petición HTTP del cliente. Como hemos dicho, CGI es la forma más simple de publicar contenido dinámico en la Web; sin embargo, esta forma de crear aplicaciones web presenta ciertas desventajas, siendo la principal de ellas el escaso rendimiento a la hora de responder a múltiples peticiones CGI simultáneamente puesto que para cada una se tiene que crear un proceso nuevo en el servidor con los costes de memoria y uso de procesador que conlleva. Respecto a este problema han surgido algunas alternativas como son el uso de extensiones para cada uno de los lenguajes en los que se programe el CGI pero como parte integrante del servidor web (módulos NSAPI o ISAPI por ejemplo), o el uso de FastCGI como forma de crear un único proceso que atienda a todas las peticiones CGI. Otra de las alternativas que se han propuesto como solución a los problemas de CGI es el uso de plataformas independientes de ejecución de código. El principio de estas plataformas es equivalente al uso de extensiones para servidores web. Es el caso de la programación con Java en el lado del servidor. En este contexto, la arquitectura de un servidor que es capaz de ejecutar programas Java (Servlets, JavaBeans, etc.) está formada por el propio servidor web en sí mismo y la Máquina Virtual de Java (JVM), que es capaz de ejecutar un programa especial Java (llamado Servlet container) encargado de gestionar datos de sesión y Servlets. Otra de las alternativas que un desarrollador tiene a su disposición cuando programa con Java es usar los denominados Enterprise Java Beans (EJB), que son componentes programados en Java que implementan la lógica de negocio de la aplicación utilizando las características de la plataforma J2EE. Su especificación detalla cómo los servidores de aplicaciones proveen objetos desde el lado del servidor que son, precisamente, los EJB. El uso de EJB está especialmente indicado en los casos en los que se requiera mantener la transaccionalidad de las peticiones hechas por un cliente en un entorno web. 18

7 RA-MA 1 n SELECCIÓN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIÓN Aplicaciones híbridas de código repartido Como alternativa a los lenguajes de scripting (interpretados) y a las aplicaciones CGI y derivadas (ejecutadas por un programa o módulo independiente del servidor web), en los últimos años ha surgido una tecnología intermedia que podríamos denominar como híbrida. La solución más representativa es la plataforma de Microsoft.Net Framework a través de ASP.Net. ASP.Net es una tecnología totalmente orientada a objetos que puede ser escrita en cualquier lenguaje soportado por el entorno.net Framework (VB.Net; C# y JScript.Net). Desde el punto de vista del rendimiento, la aplicación se precompila en una sola vez al lenguaje nativo y, luego, en cada petición tiene una compilación Just in Time, es decir, se compila desde el código nativo, lo que permite mucho mejor rendimiento. Las páginas de ASP.Net, conocidas oficialmente como Web Forms (formularios web), son el principal medio de construcción para el desarrollo de aplicaciones web desde el punto de vista de Microsoft. Los formularios web están contenidos en archivos con una extensión ASPX que son los que el cliente solicita a través de una URL al servidor. Estos ficheros ASPX contienen código HTML o estático y también etiquetas propias de la plataforma.net. Estas etiquetas definen Controles Web que se procesan del lado del servidor y Controles de Usuario donde los desarrolladores colocan todo el código estático y dinámico requerido por la página web. Adicionalmente, el código dinámico que se ejecuta en el servidor puede ser colocado en una página dentro de un bloque <% -- código dinámico -- %> que es muy similar a otras tecnologías de scripting como PHP, JSP y ASP. Esta circunstancia es otra de las razones por las que se considera la programación con ASP.Net como híbrida. En algunos entornos de alto rendimiento y seguridad esta práctica es, generalmente, desaconsejada excepto para propósitos de enlace de datos, pues requiere más llamadas cuando se genera la página. 1.4 Integración con los servidores Web Hasta ahora hemos comentado que para el desarrollo de aplicaciones web en entornos cliente/servidor pueden utilizarse diferentes modelos, tecnologías y lenguajes. En cualquier caso, en muchas ocasiones, la posibilidad de responder a una petición hecha por un cliente depende de las capacidades que tenga el servidor web y los módulos o extensiones que tenga instalados. Empezando por la funcionalidad básica de un servidor web, su cometido principal es proveer de contenido estático a un cliente que ha realizado una petición a través de un navegador. Para ello, carga un archivo y lo sirve a través de la Red al navegador del solicitante. Este es el funcionamiento habitual cuando lo que se implementa en el servidor es una aplicación web estática (HTML) o dinámica (DHTML), es decir, que el servidor se convierte en un instrumento que proporciona un lugar para guardar y administrar los recursos HTML, que pueden ser accesibles por los usuarios de la Red a través de navegadores. Para que el servidor pueda entender la petición del cliente, éste tiene que realizar una petición formal. Es decir, la petición tiene que constar de unos elementos concretos y especificados en un orden determinado. Las direcciones de las peticiones suelen ser de tipo URL (Localizador Uniforme de Recurso), que contiene una dirección, la referencia a un cierto protocolo (HTTP, FTP, etc.) y la descripción de un recurso concreto en forma de ruta al objeto que queremos descargar. Opcionalmente podemos incluir un campo adicional (puerto) indicando el número de puerto por el que el servidor está escuchando las peticiones del cliente. 19

8 Desarrollo web en entorno servidor RA-MA Con respecto a las peticiones de los clientes es importante destacar que existen distintos modos o métodos para intercambiar información entre cliente y servidor y que deberemos tenerlo en cuenta en el desarrollo de aplicaciones web en el entorno del servidor. Método GET: es un método de invocación en el que el cliente le solicita al servidor web que le devuelva la información identificada en la propia URL. Lo más común es que las peticiones se refieran a un documento HTML o a una imagen, aunque también se puede referir a un programa de base de datos. En tal caso, el servidor ejecuta ese programa y le devuelve al cliente el resultado generado tras esa petición. Método POST: mientras que el método GET se utiliza para recuperar información, el método POST se usa habitualmente para enviar información a un servidor web. Estos casos suelen darse al enviar el contenido de un formulario de autenticación, así como entradas de datos o especificar parámetros para algún tipo de componente ejecutado en el servidor. Como ya se ha comentado anteriormente, la potencia de los servidores web aparece en el momento en que queremos desarrollar aplicaciones web interactivas y con una cierta complejidad. En ese caso, podemos utilizar varias tecnologías implementadas en módulos específicos en el servidor para aumentar su potencia más allá de su capacidad de entregar páginas HTML. Dichas tecnologías suelen instalarse como extensiones en el software del servidor e incluyen soporte para scripts CGI, proporcionan seguridad SSL, permiten la ejecución de scripts, interactúan con la máquina virtual de Java, etc. 1.5 Herramientas de programación La selección de un entorno de desarrollo para la programación web debe tener en cuenta los diferentes escenarios, modelos y configuraciones que intervienen en este contexto. Las aplicaciones web están formadas por un conjunto de páginas HTML, scripts de lenguajes web, programas escritos en diferentes lenguajes, bases de datos y documentos de diferentes formatos y pueden residir en varias ubicaciones o sitios web, es decir, en diferentes servidores. El proceso de desarrollo, sin embargo, no tiene por qué realizarse en el mismo equipo en el que finalmente se despliegue y ejecute la aplicación web que se está desarrollando. El mismo razonamiento es aplicable al proceso de pruebas en el que se simulen las peticiones al servidor web desde un cliente determinado. Para el proceso de desarrollo deberemos tener en cuenta, en el caso del servidor, el conjunto de tecnologías y lenguajes seleccionados, el tipo de servidor, los módulos y extensiones que tiene configurado, los permisos de acceso y ejecución o la localización de los datos utilizados por la aplicación web. Desde el punto de vista del cliente habrá que tener en cuenta, entre otros, la versión y tipo de navegador, la resolución gráfica o el sistema de permisos del navegador en el equipo cliente. A la hora de seleccionar las herramientas que un desarrollador tiene a su disposición es necesario hacer una primera clasificación de los instrumentos involucrados en función de sus capacidades: Navegadores. Son las aplicaciones que se ejecutan en el entorno del cliente y que permiten visualizar los documentos escritos en lenguaje HTML y capturar las interacciones del usuario. Editores de documentos. Este grupo está formado por editores de texto que permiten escribir código HTML directamente, sin ninguna ayuda ni facilidad adicional. n n Entornos de programación. Son entornos integrados que nos permiten editar, compilar y ejecutar los programas generados a partir de diferentes lenguajes usados en el desarrollo de las aplicaciones web. 20

9 RA-MA 1 n SELECCIÓN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIÓN Herramientas de tratamiento de imágenes. La mayoría de las páginas web muestran contenido gráfico de una u otra manera, por ello, es necesario el uso de este tipo de herramientas para adecuar las características de las imágenes a su transmisión por la Red y su posterior visualización. Herramientas para la creación y administración de bases de datos. Se trata de herramientas para la carga de datos y el mantenimiento posterior de los datos almacenados. En el ámbito del desarrollo de aplicaciones web las herramientas más importantes son los llamados entornos de programación, que son programas, aplicaciones o simples utilidades destinadas a la programación web, haciendo mucho más fácil para el programador su tarea. Desde el punto de vista de las herramientas que se pueden utilizar para la construcción de programas o scripts, podemos emplear una gran variedad de utilidades que van desde simples editores de texto hasta los entornos integrados que facilitan enormemente la construcción de aplicaciones web en lenguajes específicos Marcadores de texto Los marcadores de texto, o text markers, son simples editores de texto, aunque dirigidos al ámbito de la programación. Al escribir el programa, y dependiendo del lenguaje de programación utilizado, el editor de texto nos ayuda a identificar mejor la sintaxis del lenguaje, cambiando de color las etiquetas, realizando tabulaciones en el texto, etc. Algunas de ellas son: Arachnophilia. Es un robusto editor de texto, ideal para programar sitios web en diferentes lenguajes. Soporta HTML, JavaScript, C++, CGI, Perl, Java, entre otros. También incluye un cliente inteligente de FTP para subir automáticamente los archivos modificados. Notepad++. Es un editor gratuito de código fuente. Soporta varios lenguajes de programación y se ejecuta en Windows. UltraEdit. Completo editor de texto para programación. Soporta múltiples formatos con colores configurados para cada lenguaje. Es uno de los múltiples editores de pago que podemos encontrar en el mercado Herramientas genéricas Dentro de los entornos de programación existen herramientas que ofrecen funcionalidades avanzadas aparte del reconocimiento de la sintaxis del lenguaje. Estas aplicaciones están mucho más desarrolladas que los marcadores de texto y ofrecen capacidades tales como la sugerencia de estructuras o funciones predeterminadas o la posibilidad de validar la corrección del código escrito. A continuación describimos algunas de estas herramientas a modo de ejemplo: Microsoft FrontPage. Es una herramienta de construcción y edición de páginas web para el sistema operativo Windows. Si bien tuvo bastante éxito hace unos años, actualmente muchos desarrolladores consideran que el código HTML generado por esta aplicación es un poco descuidado y muchas veces reiterativo, especialmente en versiones antiguas. Forma parte del paquete ofimático Microsoft Office y es de pago. Eclipse. Se trata de un entorno de programación gratuito escrito en Java que permite desarrollar aplicaciones en varios lenguajes (C, Java, PHP ). Una de sus principales características es que permite la extensión de sus funcionalidades mediante la instalación de múltiples módulos para diferentes propósitos específicos. n n Dreamweaver. Es un editor de código HTML profesional de pago para el diseño visual y la administración de sitios y páginas web. También incluye numerosas herramientas y funciones de edición de código: referencias HTML, CSS y JavaScript, un depurador JavaScript y editores de código (la vista de código y el inspector de código) que permiten editar JavaScript, XML y otros documentos de texto directamente en Dreamweaver. 21

10 Desarrollo web en entorno servidor RA-MA Herramientas específicas En muchas ocasiones, la utilización de un lenguaje de programación determinado exige que el desarrollador tenga instalada una plataforma de desarrollo concreta. Tal es el caso de la programación en Java que requiere la instalación de la Máquina Virtual de Java (JVM) o de el entorno.net Framework de Microsoft, necesaria para la programación con ASP.Net. Las herramientas que mostramos a continuación se encuentran dentro de la categoría de herramientas específicas para una tecnología concreta. Microsoft Visual Studio. Es el entorno de desarrollo más conocido para el diseño de aplicaciones en los sistemas operativos de Microsoft. Está destinado al desarrollo de aplicaciones web con lenguajes como Visual Basic o C++ y permite la publicación de la aplicación web que se está desarrollando directamente desde su interfaz. NetBeans IDE. Es una aplicación de código abierto diseñada para el desarrollo de aplicaciones fácilmente portables entre distintas plataformas haciendo uso de la tecnología Java. Se trata de un entorno de desarrollo gratuito optimizado para el desarrollo de aplicaciones con Java. ACTIVIDADES 1.1 (( Los modelos de programación por capas presentados en este capítulo se centran en la asignación de funcionalidades a nivel software. Proponemos que el alumno complemente estos modelos investigando las diferentes ventajas y desventajas que pueden existir en el caso de realizar una asignación de responsabilidades en diferentes nodos hardware. (( La arquitectura de un servidor web varía en función de la plataforma sobre la que se vaya a utilizar y las capacidades que se requieren. Algunos de los servidores web más conocidos son Apache, de la Apache Foundation, o Internet Information Server de Microsoft. Proponemos que el alumno busque la última versión de estos servidores y describa tanto su arquitectura básica como los mecanismos de extensión que ofrecen para el soporte de diferentes tecnologías de programación en entorno del servidor. (( Los lenguajes del entorno del servidor presentados han ido evolucionando históricamente incluyendo cada vez más funcionalidades. Proponemos que el alumno elija uno de esos lenguajes y realice una descripción detallada de su evolución, indicando cuáles son las influencias recibidas de otros lenguajes y sobre qué otros lenguajes ha influido. ( ( Al igual que los servidores cuentan con extensiones, las herramientas de programación web también pueden ser extendidas. Busque información sobre uno de los editores mencionados y amplíe su información indicando los métodos en los que pueden ser extendidos. 22

11 RA-MA 1 n SELECCIÓN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIÓN 2 RESUMEN DEL capítulo Para poder abordar la creación de aplicaciones web es necesario conocer antes el contexto en el que se desarrollan estas aplicaciones. Así, podemos ver que el modelo arquitectónico en el que se basan es el denominado cliente/servidor, donde un cliente, a través de un navegador, realiza peticiones a un servidor, que será el encargado de gestionar su petición y devolver una respuesta adecuada. Las aplicaciones desarrolladas en este contexto pueden ser muy sencillas (aplicaciones web estáticas) o muy complejas (aplicaciones web dinámicas e interactivas). La selección de una u otra tecnología, o lenguaje, dependerá principalmente del modelo de programación escogido, es decir, del reparto de funcionalidades entre el cliente y el servidor. Los lenguajes utilizados en el entorno del servidor se agrupan en lenguajes de scripting (interpretados como PHP, ASP, Perl o Python), lenguajes para aplicaciones ejecutadas de forma independiente del servidor web (CGI y derivados) o lenguajes que optan por una programación híbrida (ASP.Net). Finalmente, para el desarrollo óptimo de aplicaciones web se suelen utilizar herramientas específicas que ayudan al desarrollador en su labor. 23

12 Desarrollo web en entorno servidor RA-MA 2 test de conocimientos 1 Cuál de los siguientes lenguajes no puede utilizarse como lenguaje de scripting? a) PHP. b) Perl. c) HTML. d) JSP. 2 Cuál de las siguientes estrategias representa una estrategia de programación válida en entornos cliente/servidor? a) Fat Client/Thin Server. b) Programación en dos capas. c) Uso de servidores de objetos. d) Todos los anteriores. 3 Cuál de las siguientes herramientas no permite la validación de la sintaxis de código? a) UltraEdit. b) Microsoft Visual Studio. c) NetBeans IDE. d) Ninguno los anteriores. 4Señale la respuesta correcta con respecto a CGI: a) Es un lenguaje de programación del lado del servidor. b) Es un estándar que indica la forma en la que un servidor debe ejecutar un programa externo. c) Puede programarse en HTML. d) Es una herramienta de carácter genérico. 5Señale la respuesta correcta con respecto a la integración de código con servidores web: a) Las peticiones a una aplicación web pueden hacerse siguiendo un formato informal (en lenguaje natural). b) Las peticiones de tipo POST se utilizan para recuperar información del servidor. c) El código de una aplicación web estática no requiere la ejecución de ningún programa externo por parte del servidor. d) Ninguna de las anteriores. 24

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Procesamiento del lado del servidor La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante la interpretación de un script en el

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web Arquitectura 1.- Aplicaciones Web Definición Contenidos 1.- Aplicaciones Web 2.- Arquitectura de aplicaciones Web Lo que distingue una aplicación Web de una mero sitio Web reside en la posibilidad que

Más detalles

DESARROLLO WEB EN ENTORNO CLIENTE

DESARROLLO WEB EN ENTORNO CLIENTE DESARROLLO WEB EN ENTORNO CLIENTE CAPÍTULO 1: Selección de arquitecturas y herramientas de programación Juan Manuel Vara Mesa Marcos López Sanz David Granada Emanuel Irrazábal Jesús Javier Jiménez Hernández

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable 1. Introducción. El Sistema de Administración de Información de un Negocio Franquiciable (SAINF)

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV Página 1 de 6 1. OBJETIVO El presente documento tiene la finalidad de citar los beneficios de la migración de la herramienta de análisis de riesgo, mantenimiento e inspección que en lo sucesivo se denominará

Más detalles

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y Capítulo VI Conclusiones En este capítulo abordaremos la comparación de las características principales y de las ventajas cada tecnología Web nos ofrece para el desarrollo de ciertas aplicaciones. También

Más detalles

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas: SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas

Más detalles

Internet Information Server

Internet Information Server Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en

Más detalles

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web.

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web. Sesión 01: Introducción a los lenguajes web COMPUTACION E INFORMATICA WEB DEVELOPPER III Competencias a Conseguir: - Introducción general a la programación web. - Conocer y diferenciar el concepto de páginas

Más detalles

Crear un servidor Web en IIS

Crear un servidor Web en IIS Crear un servidor Web en IIS Qué es un servidor web? Un servidor web es un programa que se ejecuta continuamente en un computador, manteniéndose a la espera de peticiones de ejecución que le hará un cliente

Más detalles

Capítulo I. Marco Teórico

Capítulo I. Marco Teórico 1 Capítulo I. Marco Teórico 1. Justificación Hoy en día existe una gran diversidad de aplicaciones que corren sobre la World Wide Web (WWW o Web), y cada una orientada a un fin en particular, el cuál depende

Más detalles

CAPÍTULO 3 VISUAL BASIC

CAPÍTULO 3 VISUAL BASIC CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

CÓMO CREAR UNA PÁGINA WEB

CÓMO CREAR UNA PÁGINA WEB CÓMO CREAR UNA PÁGINA WEB v.2 Índice 1 Introducción 3 2. Diseño gráfico 3 3. El Lenguaje HTML 3 4. Alojamiento y publicación 5 5. Promoción 8 6. Otras utilidades 9 6.1 Estadísticas 9 6.2 Contadores y Formularios

Más detalles

Workflows? Sí, cuántos quiere?

Workflows? Sí, cuántos quiere? Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUIA DISPONIBLE EN: http://preparadorivan.blogspot.com/ - http://preparadormssi.50webs.com/inicio.html La World Wide Web o la Web, es una de las múltiples

Más detalles

PROGRAMACIÓN PÁGINAS WEB CON PHP

PROGRAMACIÓN PÁGINAS WEB CON PHP PROGRAMACIÓN PÁGINAS WEB CON PHP Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte cliente con JavaScript y la programación de la parte servidor con la tecnología

Más detalles

Novedades en Q-flow 3.02

Novedades en Q-flow 3.02 Novedades en Q-flow 3.02 Introducción Uno de los objetivos principales de Q-flow 3.02 es adecuarse a las necesidades de grandes organizaciones. Por eso Q-flow 3.02 tiene una versión Enterprise que incluye

Más detalles

Edición de Ofertas Excel Manual de Usuario

Edición de Ofertas Excel Manual de Usuario Edición de Ofertas Excel Manual de Usuario Alfonso XI, 6 28014 Madrid F(+34) 91 524 03 96 www.omie.es Ref. MU_OfertasExcel.docx Versión 4.0 Fecha: 2012-11-26 ÍNDICE 1 INTRODUCCIÓN 3 2 CONSIDERACIONES DE

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014

RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014 RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014 FAMILIA PROFESIONAL: INFORMATICA Y COMUNICACIONES MATERIA: 28. DESARROLLO WEB EN ENTORNO SERVIDOR CURSO: 2º DE CFGS DESARROLLO DE APLICACIONES

Más detalles

CFGM. Servicios en red. Unidad 2. El servicio DHCP. 2º SMR Servicios en Red

CFGM. Servicios en red. Unidad 2. El servicio DHCP. 2º SMR Servicios en Red CFGM. Servicios en red Unidad 2. El servicio DHCP CONTENIDOS 1 1. Introducción 1.1. Qué es el servicio DHCP 2.1. Características generales del servicio DHCP 2.2. Funcionamiento del protocolo DHCP 2.3.

Más detalles

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

AGREGAR COMPONENTES ADICIONALES DE WINDOWS INSTALACIÓN DE IIS EN WINDOWS XP El sistema está desarrollado para ejecutarse bajo la plataforma IIS de Windows XP. Por esta razón, incluimos la instalación de IIS (Servidor de Web) para la correcta ejecución

Más detalles

Gestor de Contenidos CMS. Prof: Ing. Henrry Servitá

Gestor de Contenidos CMS. Prof: Ing. Henrry Servitá Gestor de Contenidos CMS Que es un CMS? CMS son las siglas de Content Management System, que se traduce directamente al español como Sistema Gestor de Contenidos. Como su propio nombre indica, es un sistema

Más detalles

Tema 3. 3.3 Tecnologías de Desarrollo

Tema 3. 3.3 Tecnologías de Desarrollo Tema 3 3.3 Tecnologías de Desarrollo HTML pronto pasa a ser insuficiente para todas las posibilidades de la Red No se puede interactuar con el servidor Aparecen los primeros scripts para propocionar dichar

Más detalles

ASP.NET. Prof. Gina Huertas Camacho

ASP.NET. Prof. Gina Huertas Camacho ASP.NET Prof. Gina Huertas Camacho I. INTRODUCCION A ASP.NET Temario Introducción a ASP.NET Aplicaciones Web ASP.NET Servidor Web eventos Evalua.NET Interactua con otros estudiantes Aprende a programar

Más detalles

Introducción a la extensión de scripting en gvsig 2.0

Introducción a la extensión de scripting en gvsig 2.0 Introducción a la extensión de scripting en gvsig 2.0 2012 gvsig Association Este documento se distribuye con la licencia Creative Commons 1 2 Índice de contenido 1 Introducción... 3 Instalación de la

Más detalles

QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A)

QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A) APRENDERAPROGRAMAR.COM QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A) Sección: Divulgación Categoría: Herramientas Informáticas Fecha

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW):

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW): INFORMÁTICA IE MÓDULO INTERNET Términos a conocer y conceptos básicos World Wide Web (WWW): Digamos, simplemente, que es un sistema de información, el sistema de información propio de Internet. Sus características

Más detalles

CONSTRUCCIÓN DE PORTALES

CONSTRUCCIÓN DE PORTALES Curso «Los portales de internet». Fac. Documentación. Universidad de Murcia. 29 CONSTRUCCIÓN DE PORTALES Juan Antonio Pastor Sánchez 1. Introducción La Gestión de los contenidos informativos de los portales

Más detalles

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información

Más detalles

ENTORNO DE DESARROLLO MICROSOFT.NET 2010

ENTORNO DE DESARROLLO MICROSOFT.NET 2010 ENTORNO DE DESARROLLO MICROSOFT.NET 2010 UNIDAD 2 Estructura de contenidos: 1. Conociendo ASP 2. Sitio Web y Proyecto Web 3. WebForm 4. Características de los webforms 5. Entorno del.net 6. Controles básicos

Más detalles

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA AREA DEL TEMA: INGENIERÍA DE SOFTWARE OBJETIVO GENERAL Desarrollar aplicaciones web utilizando

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

INSTALACIÓ N A3ERP. Informática para empresas INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

INSTALACIÓ N A3ERP. Informática para empresas INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS Página 1 de 20 INSTALACIÓ N A3ERP INTRODUCCIÓN La instalación de a3erp v9 ha sufrido una trasformación importante respecto a sus versiones anteriores. Cualquier instalación exige la existencia de un pc

Más detalles

INTRODUCCION. Tema: Protocolo de la Capa de aplicación. FTP HTTP. Autor: Julio Cesar Morejon Rios

INTRODUCCION. Tema: Protocolo de la Capa de aplicación. FTP HTTP. Autor: Julio Cesar Morejon Rios INTRODUCCION Tema: Protocolo de la Capa de aplicación. FTP HTTP Autor: Julio Cesar Morejon Rios Qué es FTP? FTP (File Transfer Protocol) es un protocolo de transferencia de archivos entre sistemas conectados

Más detalles

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto Introducción: Sobre casi cualquier tema del quehacer humano que se aborde, existen

Más detalles

UNIVERSIDAD DE SALAMANCA

UNIVERSIDAD DE SALAMANCA UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA

Más detalles

Internet Servicios WEB (WWW)

Internet Servicios WEB (WWW) Universidad de Cantabria Internet Servicios WEB (WWW) Arquitectura de Aplicaciones WEB Febrero-2006 Ricardo Sáez Marta Zorrilla Internet- Arquitectura aplicaciones 1 Cliente/Servidor & Intranet/Internet

Más detalles

ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009)

ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009) JOOMLA! ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009) Es necesario comentar que este manual ha sido diseñado en su mayor parte por comunidadjoomla.org. Este manual es una

Más detalles

5.1. Qué es Internet? controla todo el sistema, pero está conectado de tal manera que hace

5.1. Qué es Internet? controla todo el sistema, pero está conectado de tal manera que hace 5. Internet 5.1. Qué es Internet? Internet es una red mundial de equipos que se comunican usando un lenguaje común. Es similar al sistema telefónico internacional: nadie posee ni controla todo el sistema,

Más detalles

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor. Sesión 03: Lenguajes web del servidor Competencias a Conseguir: - Conocer el entorno de trabajo a nivel de servidores web. - Instalación del localhost (Servidor Local). - Repaso general de PHP y ejercicios

Más detalles

Qué es una página web?, qué conoces al respecto?, sabes crear una página

Qué es una página web?, qué conoces al respecto?, sabes crear una página Semana 13 13 Empecemos! Bienvenidos a una nueva sesión, llena de aprendizajes! En semanas anteriores estudiamos lo que son bases de datos, estructuras de datos y métodos de ordenamientos, todo lo cual

Más detalles

PRESENTACIÓN DEL PRODUCTO

PRESENTACIÓN DEL PRODUCTO PRESENTACIÓN DEL PRODUCTO esernet, s.l. Sebastián Elcano, 32 Planta 1 Oficina 22 28012 Madrid Teléfono: 91 433 84 38 -- Fax. 91 141 21 89 www.esernet.com -- esernet@esernet.com 1. Introducción 2. Descripción

Más detalles

Introducción a las redes de computadores

Introducción a las redes de computadores Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes

Más detalles

INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD. Estructura de contenidos: http://www.ucv.edu.pe/cis/ cisvirtual@ucv.edu.pe. 1.

INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD. Estructura de contenidos: http://www.ucv.edu.pe/cis/ cisvirtual@ucv.edu.pe. 1. INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD 1 Estructura de contenidos: 1. Programación Web 2. Sistema De Información 3. Sistema Web 4. Requisitos Para Sistemas Web Con Asp 5. Internet Information Server

Más detalles

Análisis y diseño del sistema CAPÍTULO 3

Análisis y diseño del sistema CAPÍTULO 3 Análisis y diseño del sistema CAPÍTULO 3 36 CAPÍTULO 3 Análisis y diseño del sistema En este capítulo se pretende realizar un análisis detallado de los requerimientos del software a desarrollar para la

Más detalles

Qué necesito saber para tener mi sitio web en Internet?

Qué necesito saber para tener mi sitio web en Internet? Qué necesito saber para tener mi sitio web en Internet? Introducción Antes es importante tener en cuenta que Es importante considerar lo siguiente: Definir claramente tu actividad en Internet Establecer

Más detalles

Capítulo I. Definición del problema y objetivos de la tesis. En la actualidad Internet se ha convertido en una herramienta necesaria para todas

Capítulo I. Definición del problema y objetivos de la tesis. En la actualidad Internet se ha convertido en una herramienta necesaria para todas Capítulo I Definición del problema y objetivos de la tesis 1.1 Introducción En la actualidad Internet se ha convertido en una herramienta necesaria para todas las personas ya que nos permite realizar diferentes

Más detalles

Internet Information Server

Internet Information Server Internet Information Server Internet Information Server 5.0 es un servidor web, que incluye los servicios de HTTP, HTTPS, FTP, SMTP (correo saliente) y NNTP (grupos de noticias). Además es capaz de ejecutar

Más detalles

Unidad Didáctica 12. La publicación

Unidad Didáctica 12. La publicación Unidad Didáctica 12 La publicación Contenido 1. Desarrollar y explotar 2. Definición del Sitio 3. Alojar nuestra primera página Web 4. Configurar la conexión FTP U.D. 12 La publicación 1. Desarrollar y

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

Invocación por protocolo de aplicaciones nativas desde páginas Web

Invocación por protocolo de aplicaciones nativas desde páginas Web Invocación por protocolo de aplicaciones nativas desde páginas Web Qué es la invocación por protocolo? Es un funcionamiento universal que los sistemas operativos mantengan una serie de asociaciones entre

Más detalles

CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB

CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB Objetivos Generales: Al término de esta acción formativa los participantes alcanzarán los siguientes objetivos: Preparar profesionales para el desarrollo

Más detalles

Windows Server 2003. Windows Server 2003

Windows Server 2003. Windows Server 2003 Windows Server 2003 Windows Server 2003 Es un sistema operativo de la familia Windows de la marca Microsoft para servidores que salió al mercado en el año 2003. Está basada en tecnología NT y su versión

Más detalles

APLICACIONES WEB GOOGLE ANAYLITICS

APLICACIONES WEB GOOGLE ANAYLITICS APLICACIONES WEB GOOGLE ANAYLITICS Elena Berti Rebecca Thompson 2º DAW ÍNDICE Qué es una Aplicación Web Consideraciones técnicas Estructura de las Aplicaciones Web Ventajas Inconvenientes Diferencia entre

Más detalles

Visión General de GXportal. Última actualización: 2009

Visión General de GXportal. Última actualización: 2009 Última actualización: 2009 Copyright Artech Consultores S. R. L. 1988-2009. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento explícito de

Más detalles

Capas del Modelo ISO/OSI

Capas del Modelo ISO/OSI Modelo ISO/OSI Fue desarrollado en 1984 por la Organización Internacional de Estándares (ISO), una federación global de organizaciones que representa aproximadamente a 130 países. El núcleo de este estándar

Más detalles

INSTALACIÓN A3ERP INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

INSTALACIÓN A3ERP INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS INSTALACIÓN A3ERP INTRODUCCIÓN La instalación de a3erp v9 ha sufrido una trasformación importante respecto a sus versiones anteriores. Cualquier instalación exige la existencia de un pc al que le asignaremos

Más detalles

FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIMEDIA DAM 350 HORAS

FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIMEDIA DAM 350 HORAS FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIMEDIA DAM 350 HORAS Resultados de aprendizaje y criterios de evaluación 1. Identificar la estructura y organización

Más detalles

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...

Más detalles

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición

Más detalles

Programación páginas web con ASP.NET 3.5 (C#)

Programación páginas web con ASP.NET 3.5 (C#) Horas de teoría: 40 Horas de práctica: 40 Programación páginas web con ASP.NET 3.5 (C#) Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte cliente con JavaScript

Más detalles

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B)

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B) APRENDERAPROGRAMAR.COM GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B) Sección: Cursos Categoría: Tutorial básico del programador web: HTML desde cero Fecha

Más detalles

Desarrollo Web en Entorno Servidor

Desarrollo Web en Entorno Servidor Desarrollo Web en Entorno Servidor Tema 1: Introducción 1. Tipos de páginas Web. 2. Instalación del software. (XAMPP) 1 Tipos de páginas Web. Páginas estáticas. Páginas dinámicas. 2 Tipos de páginas Web.

Más detalles

INTERNET Y WEB (4º ESO)

INTERNET Y WEB (4º ESO) INTERNET Y WEB (4º ESO) 1. CLASIFICACIÓN DE LAS REDES Internet se define comúnmente como la Red de redes, o la Red global. En cualquier caso, puede considerarse como la unión de entidades más pequeñas

Más detalles

SUPLEMENTO EUROPASS AL TÍTULO

SUPLEMENTO EUROPASS AL TÍTULO SUPLEMENTO EUROPASS AL TÍTULO DENOMINACIÓN DEL TÍTULO Técnico Superior en Desarrollo de Aplicaciones Web --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Más detalles

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información

Más detalles

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O Fundamentos de las aplicaciones Web Página Web Sitio Web Servidor Web Aplicación Web HTTP y HTML Página Web Una página web

Más detalles

WINDOWS 2008 5: TERMINAL SERVER

WINDOWS 2008 5: TERMINAL SERVER WINDOWS 2008 5: TERMINAL SERVER 1.- INTRODUCCION: Terminal Server proporciona una interfaz de usuario gráfica de Windows a equipos remotos a través de conexiones en una red local o a través de Internet.

Más detalles

Creación y administración de grupos locales

Creación y administración de grupos locales Creación y administración de grupos locales Contenido Descripción general 1 Introducción a los grupos de Windows 2000 2 Grupos locales 5 Grupos locales integrados 7 Estrategia para utilizar grupos locales

Más detalles

MANUAL DE INSTALACIÓN PLATAFORMA PROGRESA AUTOR: ASAC COMUNICACIONES DEPARTAMENTO DE DESARROLLO NOVIEMBRE DE 2007

MANUAL DE INSTALACIÓN PLATAFORMA PROGRESA AUTOR: ASAC COMUNICACIONES DEPARTAMENTO DE DESARROLLO NOVIEMBRE DE 2007 MANUAL DE INSTALACIÓN PLATAFORMA PROGRESA AUTOR: ASAC COMUNICACIONES DEPARTAMENTO DE DESARROLLO NOVIEMBRE DE 2007 INDICE 1 INTRODUCCIÓN...2 2 REQUISITOS...3 3 INSTALACIÓN...4 3.1 INSTALACIÓN DEL MICROSOFT.NET

Más detalles

La publicación. Pere Barnola Augé P08/93133/01510

La publicación. Pere Barnola Augé P08/93133/01510 La publicación Pere Barnola Augé P08/93133/01510 FUOC P08/93133/01510 La publicación Índice Introducción... 5 1. El dominio... 7 2. Alojamiento web... 9 3. FTP... 11 3.1. Cliente FTP... 11 3.1.1. Cómo

Más detalles

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora Plataforma e-ducativa Aragonesa Manual de Administración Bitácora ÍNDICE Acceso a la administración de la Bitácora...3 Interfaz Gráfica...3 Publicaciones...4 Cómo Agregar una Publicación...4 Cómo Modificar

Más detalles

Configuración de Apache

Configuración de Apache Configuración de Apache Cuando se ha instalado el servidor, hay que configurarlo. Apache incluye por defecto una configuración que arranca el servidor en el puerto TCP por defecto, que es el puerto 80,

Más detalles

CFGM. Servicios en red. Unidad 5 Servicio FTP. 2º SMR Servicios en Red

CFGM. Servicios en red. Unidad 5 Servicio FTP. 2º SMR Servicios en Red CFGM. Servicios en red Unidad 5 Servicio FTP CONTENIDOS 1.1. Cómo funciona el servicio FTP? 1.2. Características principales del servicio FTP 2. El cliente FTP 2.1. Uso del navegador web como cliente FTP

Más detalles

DIPLOMADO EN SEGURIDAD INFORMATICA

DIPLOMADO EN SEGURIDAD INFORMATICA DIPLOMADO EN SEGURIDAD INFORMATICA Modulo 9: Soporte Computacional Clase 9_3:Protocolos de comunicación y conectividad de arquitecturas multiplataforma. Director Programa: César Torres A Profesor : Claudio

Más detalles

(PHP y APACHE), y el programa de comunicación Skype, para controlar de manera

(PHP y APACHE), y el programa de comunicación Skype, para controlar de manera Capítulo 4. Llamada Telefónica En este capítulo se explicará la manera en que se configuraron las herramientas web (PHP y APACHE), y el programa de comunicación Skype, para controlar de manera dinámica

Más detalles

ANEXO I. Módulo profesional. Lengua extranjera

ANEXO I. Módulo profesional. Lengua extranjera ANEXO I Módulo profesional. Lengua extranjera CAPACIDADES TERMINALES CRITERIOS DE EVALUACIÓN Comunicarse oralmente con un interlocutor en A partir de una conversación telefónica simulada: lengua extranjera

Más detalles

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos Plataforma Moodle Accediendo a los contenidos Formatos ----------------------------------------------------------------------- 2 Glosarios -----------------------------------------------------------------------

Más detalles

Un primer acercamiento a la CMDB.

Un primer acercamiento a la CMDB. Un Versión primer 1.2 acercamiento a la CMDB. 20/07/2005 Un primer acercamiento a la CMDB. Versión 1.1 1.2 18/02/05 20/02/05 Fecha Jose Autores Carlos Manuel García Viejo García Lobato http://ars.viejolobato.com

Más detalles

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes

Más detalles

Programación páginas web. Servidor (PHP)

Programación páginas web. Servidor (PHP) Programación páginas web. Servidor (PHP) Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte servidor con la tecnología PHP y el servidor de bases de datos MySQL.

Más detalles

Fuente: http://www.kzgunea.net

Fuente: http://www.kzgunea.net APRENDE A NAVEGAR SERVICIOS DE INTERNET Internet es como el mercado del pueblo en día de feria. En el mercado los puestos se organizan por secciones: por un lado la fruta, por otro las hortalizas, por

Más detalles

GedicoPDA: software de preventa

GedicoPDA: software de preventa GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente

Más detalles

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Entre los más conocidos editores con interfaz de desarrollo tenemos: Herramientas de programación Para poder programar en ensamblador se precisa de algunas herramientas básicas, como un editor para introducir el código, un ensamblador para traducir el código a lenguaje

Más detalles

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS 4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia

Más detalles

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3

Más detalles

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación.

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación. Unidad II Metodología de Solución de Problemas 2.1 Descripción del problema (enunciado). Este aspecto nos indica describir de manera objetiva la realidad del problema que se esta investigando. En la descripción

Más detalles

Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP

Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP Departamento de Lenguajes y Sistemas Informáticos Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP Curso 001-00 ASP, CFM, JSP y PHP (I) Diferente tecnologías con un mismo propósito: proporcionar

Más detalles

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas... .NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS Definiciones...2 C# y Java.....3 Similitudes...4 Ventajas...4 Definiciones Sobre J2EE J2EE (Java 2 Platform Enterprise Edition)

Más detalles