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

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

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

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

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

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

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

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

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

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

VISIÓN GENERAL HERRAMIENTAS COMERCIALES

VISIÓN GENERAL HERRAMIENTAS COMERCIALES VISIÓN GENERAL El servidor de MS SQL se ha convertido en un estándar en muchas partes de la América corporativa. Puede manejar volúmenes de datos grandes y se integra bien con otros productos de Microsoft.

Más detalles

Conocer la sintaxis del lenguaje de programación C# Aproximación al lenguaje de programación Visual Basic Script y JScript

Conocer la sintaxis del lenguaje de programación C# Aproximación al lenguaje de programación Visual Basic Script y JScript (40 HORAS) COSTE: Bonificable a través de los créditos de formación de la FTFE. OBJETIVOS DEL CURSO Unidad didáctica 1. Introducción al desarrollo de aplicaciones Web y requisitos de ASP.net Conocer los

Más detalles

Simulador de Protocolos de Red a tráves de WEB

Simulador de Protocolos de Red a tráves de WEB Simulador de Protocolos de Red a tráves de WEB Propuesta de Estudio 20071608 Director Ing. Francisco Antonio Polanco Montelongo Resumen Introducción Actualmente, el desarrollo tecnológico a alcanzado niveles

Más detalles

Tema 1: Introducción a las Aplicaciones Web. Contenidos:

Tema 1: Introducción a las Aplicaciones Web. Contenidos: Tema 1: Introducción a las Aplicaciones Web. Contenidos: 1. Esquema de funcionamiento. 1.1. Modelo Cliente/Servidor. 1.1.1. Componentes de un Servidor (WAMP, LAMP). 1.1.2. Navegadores. 1.2. Conceptos.

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

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

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

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

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

Unidad V: Programación del lado del servidor

Unidad V: Programación del lado del servidor Unidad V: Programación del lado del servidor 5.1 Introducción al lenguaje La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante

Más detalles

El servidor Web. Arquitectura y funcionamiento

El servidor Web. Arquitectura y funcionamiento El servidor Web. Arquitectura y funcionamiento ÍNDICE INTRODUCCIÓN Qué es un servidor? Y un servidor Web? FUNCIONAMIENTO DE UN SERVIDOR WEB Arquitectura Tipos de servidores Web Servidores basados en procesos

Más detalles

Capítulo III. Análisis y diseño.

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

Novedades en Crystal Reports XI

Novedades en Crystal Reports XI Novedades en Crystal Reports XI Introducción Introducción Esta sección proporciona información de alto nivel sobre los componentes, las funciones y las ventajas que ofrece la última versión de Crystal

Más detalles

Lógica de negocio. Dsfg dsfg sdfg. Sdfgdfg dfg Dsf gsdfg sdfg. Dfg. Sdfgdfg dfg. Dfg. Dsf gsdfg sdfg.

<HTML> <IMG src= logo.gif > </HTML> Lógica de negocio. Dsfg dsfg sdfg. Sdfgdfg dfg Dsf gsdfg sdfg. Dfg. Sdfgdfg dfg. Dfg. Dsf gsdfg sdfg. Sdfgdfg dfg Dsf gsdfg sdfg Dsfg dsfg sdfg Sdfgdfg dfg Dfg Dsf gsdfg sdfg Dsfg dsfg sdfg Sdfgdfg dfg Dfg Dfg Índice Programación web Copyright 2001-2003 Víctor ROBLES FORCADA vrobles@fi.upm.es http://laurel.datsi.fi.upm.es/~ssoo/dsw/

Más detalles

JSP(JAVA SERVER PAGES)

JSP(JAVA SERVER PAGES) JSP(JAVA SERVER PAGES) Introducción En la actualidad, la mayoría de los sitios Web quieren mostrar contenido dinámico basado en el usuario y en la sesión. La mayor parte del contenido, tal como imágenes,

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

Programación con PHP y MySql Instituto CBTech 5/14

Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 6/14 Qué es una aplicación web? Una aplicación web es un sistema informático que los usuarios utilizan accediendo

Más detalles

Características de OpenCms

Características de OpenCms Características de OpenCms Se basa en Java y Xml OpenCms está totalmente desarrollado en java bajo el estándar servlet. Por lo tanto, se puede integrar fácilmente en entornos hardware y software existentes,

Más detalles

Uso de los Servicios Web en la nueva arquitectura de N-Capas del Sistema Económico Integral Rodas XXI.

Uso de los Servicios Web en la nueva arquitectura de N-Capas del Sistema Económico Integral Rodas XXI. Ponencia para Evento de Redes. Autor: Rubén Rivera Rodríguez, Citmatel Resumen Uso de los Servicios Web en la nueva arquitectura de N-Capas del Sistema Económico Integral Rodas XXI. Las nuevas tendencias

Más detalles

CMS JOOMLA. Características

CMS JOOMLA. Características CMS JOOMLA Joomla es un sistema gestor de contenidos dinámicos (CMS o Content Management System) que permite crear sitios web de alta interactividad, profesionalidad y eficiencia. La administración de

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

Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos

Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos Objetivos del curso Patrimonio Cultural Desarrollo de Herramientas de Administración y Acceso Adquirir visión generalizada de las tecnologías de desarrollo utilizadas en Sistemas de gestión del Patrimonio

Más detalles

Elaboración de un Formulario Web utilizando ASP.NET desde cero.

Elaboración de un Formulario Web utilizando ASP.NET desde cero. Elaboración de un Formulario Web utilizando ASP.NET desde cero. Realizado por: Fabricio.A.Santillana.V. 2-718-1147 TABLA DE CONTENIDO Pág. Introducción...3 Objetivos...4 Contenido...5 1. Introducción a

Más detalles

Tema 5. Tecnologías web. Antonio Sanz ansanz@unizar.es. Comercio Electrónico

Tema 5. Tecnologías web. Antonio Sanz ansanz@unizar.es. Comercio Electrónico Tema 5 Tecnologías web Antonio Sanz ansanz@unizar.es Comercio Electrónico Índice Gestión de un proyecto web Historia i de Internet t y la WWW Arquitecturas cliente/servidor Gestión de un proyecto web Introducción

Más detalles

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria Arquitectura de Aplicaciones Empresariales Aplicaciones empresariales Temario Aplicaciones Empresariales Arquitectura Aplicaciones Empresariales Layering Negocio Persistencia Presentación Ejemplos Aplicaciones

Más detalles

MS_20488 Developing Microsoft SharePoint Server 2013 Core Solutions

MS_20488 Developing Microsoft SharePoint Server 2013 Core Solutions S MS_20488 Developing Microsoft SharePoint Server 2013 Core Solutions www.ked.com.mx Av. Revolución No. 374 Col. San Pedro de los Pinos, C.P. 03800, México, D.F. Tel/Fax: 52785560 Introducción En este

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

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

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

Más detalles

abacformacio@abacformacio.com

abacformacio@abacformacio.com Programación de 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

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

De principiante a Desarrollador Web. casivaagustin@gmail.com

De principiante a Desarrollador Web. casivaagustin@gmail.com De principiante a Desarrollador Web casivaagustin@gmail.com Que Veremos? La Internet y la Web El desarrollo Web La vida de un proyecto Web Tecnologías Del lado del cliente Del lado del Server Herramientas

Más detalles

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012 TFC J2EE Aplicación Web para la gestión de facturación de una empresa de cerrajería Sara Gutiérrez Melero ITIG Junio de 2012 Consultor: Jose Juan Rodriguez Índice 1. Introducción Objetivos Planificación

Más detalles

Historia de revisiones

Historia de revisiones GVA Glosario Versión 1.2 Semana 4 Historia de revisiones Fecha Versión Descripción Autor 20/08/2014 1.0 Comienzo del documento Nicolás Fiumarelli 30/08/2014 1.1 Correcciones y agregados Martín Santagata

Más detalles

Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 de un portal de revistas electrónicas

Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 de un portal de revistas electrónicas Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 INDICE 4...219 4.1 Introducción...219 4.2 Arquitectura Física...219 4.2.1 Arquitectura Cliente/Servidor...219

Más detalles

Qué es una aplicación web

Qué es una aplicación web Departamento de Lenguajes y Sistemas Informáticos Qué es una aplicación web Programación en Internet Curso 2006-2007 Índice Introducción Cliente Servidor Transferencia páginas web Entornos web Ventajas

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

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

Programación páginas web JavaScript y PHP

Programación páginas web JavaScript y PHP Programación páginas web JavaScript y 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

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

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran:

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran: Desarrollo de aplicaciones y servicios web Cinxgler Mariaca Minda Cinxgler@udistrital.edu.co Presidente Capítulo de Computadores Rama IEEE Universidad Distrital Francisco José de Caldas Resumen: Este articulo

Más detalles

Confección y publicación de páginas Web

Confección y publicación de páginas Web 2014 Confección y publicación de páginas Web Docente: Manuel Fernández Catalán 0 ÍNDICE 1 Presentación... 2 2 Objetivos... 2 3 Tecnología... 2 4 Metodología y evaluación... 3 5 Material didáctico... 3

Más detalles

DESARROLLO WEB EN ENTORNO SERVIDOR

DESARROLLO WEB EN ENTORNO SERVIDOR DESARROLLO WEB EN ENTORNO SERVIDOR CAPÍTULO 7: Programación de servicios Web Marcos López Sanz Juan Manuel Vara Mesa Jenifer Verde Marín Diana Marcela Sánchez Fúquene Jesús Javier Jiménez Hernández Valeria

Más detalles

aplicaciones web: ASP, CFM, JSP y PHP

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 2001-2002 Sergio Luján Mora ASP, CFM, JSP y PHP (I) Diferente tecnologías con un

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

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

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

GALA ASP.NET. L1. Evolución Aplicaciones Web. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h

GALA ASP.NET. L1. Evolución Aplicaciones Web. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h L1. Evolución Aplicaciones Web L1. Arquitectura L1. Introducción al Desarrollo de Aplicaciones Web Arquitectura cliente servidor ASP Navegadores y web server Compilación asp Código embebido Lenguaje de

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

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 301127- Programación de sitios web Act 4: Lección Evaluativa 1

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 301127- Programación de sitios web Act 4: Lección Evaluativa 1 Qué es PHP? PHP: HyperText Preprocessor. Es un lenguaje de tipo scripting, que actualmente está siendo utilizado como una de las mejores alternativas para desarrollar aplicaciones en la Web. Un lenguaje

Más detalles

COLEGIO DE BACHILLERES ELABORADO POR: ING. IVETT ZARZA HIDALGO Y LIC. CLAUDIA HERNÀNDEZ ALPÍZAR PROFA. DE INFORMATICA Y DE CECAT-INFORMATICA

COLEGIO DE BACHILLERES ELABORADO POR: ING. IVETT ZARZA HIDALGO Y LIC. CLAUDIA HERNÀNDEZ ALPÍZAR PROFA. DE INFORMATICA Y DE CECAT-INFORMATICA Visual Basic.NET es la última versión del sistema de desarrollo Visual Basic. Antes de empezar a crear aplicaciones en Visual Basic.NET, le será útil conocer y entender algunos conceptos básicos de.net.

Más detalles

Internet - Web. Internet - Web. Internet. Internet. Diseño de Sitios Web Desarrollo de Paginas Web. Qué es la Internet? - Qué es la Web?

Internet - Web. Internet - Web. Internet. Internet. Diseño de Sitios Web Desarrollo de Paginas Web. Qué es la Internet? - Qué es la Web? Desarrollo de Paginas Web Internet - Web Internet - Web Qué es la Internet? - Qué es la Web? Internet: Una red de computadoras a nivel mundial Web: Una forma de organizar la información existente en Internet

Más detalles

Desarrollador de Aplicaciones Empresariales con Visual Studio 2008. Fabricante: Microsoft Grupo: Desarrollo Subgrupo: Microsoft Visual Studio 2008

Desarrollador de Aplicaciones Empresariales con Visual Studio 2008. Fabricante: Microsoft Grupo: Desarrollo Subgrupo: Microsoft Visual Studio 2008 VS0800e Desarrollador de Aplicaciones Empresariales con Visual Studio 2008 Fabricante: Microsoft Grupo: Desarrollo Subgrupo: Microsoft Visual Studio 2008 Formación: elearning Horas: 450 Introducción En

Más detalles

1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones. Módulo Profesional: Servicios en Red. Código: 0227. Resultados de aprendizaje y criterios de evaluación. 1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

Más detalles

Administración de sitios Web. Capítulo 8. Servidores Web: Internet Information Server

Administración de sitios Web. Capítulo 8. Servidores Web: Internet Information Server 1 of 9 4/15/2010 9:47 PM Anterior Administración de sitios Web Capítulo 8. Servidores Web: Internet Information Server Siguiente En este punto, nos centraremos en las tareas de administración del servidor

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

Parte 3 - Consultas SQL + Servicios Web + Índices

Parte 3 - Consultas SQL + Servicios Web + Índices Parte 3 - Consultas SQL + Servicios Web + Índices 12450 Estructuras de Datos y de la Información 2 Prácticas Laboratorio - Curso 2008-2009 3.1 Consultas SQL: Ernesto Arroyo Jesús Bisbal Philippe Roussel

Más detalles

AUTORES CIENTÍFICO-TÉCNICOS Y ACADÉMICOS Desarrollo de sitios web dinámicos Ramón Jesús Millán Tejedor www.ramonmillan.com à1. Introducción El sitio web es el medio más barato para darse a conocer rápidamente

Más detalles

Recuperación de Información en Internet Tema 2: La web

Recuperación de Información en Internet Tema 2: La web Recuperación de Información en Internet Tema 2: La web P.O.P. Língua e usos profesionais Miguel A. Alonso Jorge Graña Jesús Vilares Departamento de Computación Facultad de Informática Universidade da Coruña

Más detalles

7.1 Java vs.net, la lucha se acrecienta

7.1 Java vs.net, la lucha se acrecienta 7.1 Java vs.net, la lucha se acrecienta Java fue capaz de introducir una cuña en el negocio de herramientas de Microsoft cuando fue introducida al mercado por primera vez a mediados de los '90 porque ofrecía

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

Tema 4: Tecnologías Web Java

Tema 4: Tecnologías Web Java Tema 4: Tecnologías Web Java Introducción Aplicación web Aplicación que corre en al menos un servidor y a la que el usuario accede desde un cliente de propósito general (ej.: navegador en un PC, teléfono

Más detalles

Master Microsoft Visual Studio.NET Curso elearning tutorizado en castellano

Master Microsoft Visual Studio.NET Curso elearning tutorizado en castellano C/Comandante Zorita 4 28020 Madrid/ info@ceticsa.es 902 425 524 / 91 700 01 17 Master Microsoft Visual Studio.NET Curso elearning tutorizado en castellano VS100e Plan de formación on line Microsoft desarrollador

Más detalles

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010)

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Tecnologías de programación en la Web Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus & Andrés Marín López jaf, amarin@it.uc3m.es Tecnologías de programación en la Web p.

Más detalles

INTRODUCCIÓN AL WEB. Pag. 1 de 10

INTRODUCCIÓN AL WEB. Pag. 1 de 10 INTRODUCCIÓN AL WEB La World Wide Web o simplemente WWW o Web es uno de los métodos más importantes de comunicación que existe en Internet. Consiste en un sistema de información basado en Hipertexto (texto

Más detalles

PROGRAMACIÓN EN INTERNET Curso 2001-2002 http://www.dlsi.ua.es/asignaturas/pi/ MICROSOFT PERSONAL WEB SERVER 4.0... 2

PROGRAMACIÓN EN INTERNET Curso 2001-2002 http://www.dlsi.ua.es/asignaturas/pi/ MICROSOFT PERSONAL WEB SERVER 4.0... 2 MICROSOFT PERSONAL WEB SERVER 4.0... 2 Introducción... 2 Qué se puede configurar... 6 Menú Avanzada... 7 1 Microsoft Personal Web Server 4.0 Introducción Personal Web Server 4.0 es un servidor de páginas

Más detalles

INTRODUCCIÓN A PHP. Javier Enciso

INTRODUCCIÓN A PHP. Javier Enciso INTRODUCCIÓN A PHP Javier Enciso AGENDA Qué es PHP? Cómo funciona PHP? Instalación QUÉ ES PHP? QUÉ ES PHP? (1/7) PHP (acrónimo de "PHP: Hypertext Preprocessor"). Lenguaje interpretado de alto nivel embebido

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

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

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

MAESTRO DE PHP PHP NIVEL 1

MAESTRO DE PHP PHP NIVEL 1 MAESTRO DE PHP MAESTRO DE PHP es el curso más completo diseñado para que aprendas desde 0 hasta poder desarrollar aplicaciones robustas utilizando Frameworks. Incluye los Cursos PHP Nivel 1 y PHP Avanzado

Más detalles

ENCUENTA - CONTABILIDAD Net. Definiciones generales

ENCUENTA - CONTABILIDAD Net. Definiciones generales ENCUENTA - CONTABILIDAD Net Definiciones generales 2013 ENCUENTA - CONTABILIDAD Net Definiciones generales Contenido 1 GENERALIDADES... 3 2 DISTRIBUCIÓN GENERAL DE LOS ELEMENTOS DEL SISTEMA... 3 3 REQUERIMIENTOS...

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

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

INTELIGENCIA DE NEGOCIOS CON SQL SERVER 2008 R2

INTELIGENCIA DE NEGOCIOS CON SQL SERVER 2008 R2 Programa de Capacitación y Certificación. INTELIGENCIA DE NEGOCIOS CON SQL SERVER 2008 R2 Contenido PERFIL DE UN ESPECIALISTA EN BASES DE DATOS.... 3 6231. MANTENIENDO UNA BASE DE DATOS DE SQL SERVER 2008

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

PLAN FORMATIVO MODALIDAD I

PLAN FORMATIVO MODALIDAD I PLAN FORMATIVO MODALIDAD I Modalidad Acción: TELEFORMACIÓN Nº de la Acción: FPTO/2014/695/202 Familia Profesional: Tipo Especialidad: IFC / INFORMÁTICA Y COMUNICACIONES NUEVA ESPECIALIDAD Area Profesional:

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

ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL

ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL MF0491_3: PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE. (IFCD0210: DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB) 180 HORAS PRESENCIALES Nº DE EXPEDIENTE: FC/2013/0064 ACCION 141 GRUPO 1 ACCIÓN FORMATIVA FINANCIADA

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

Temario del Master en Internet

Temario del Master en Internet Temario del Master en Internet HTML / XML / XHTML HTML El Lenguaje HTML Formateo básico Listas, Imágenes y Tablas Enlaces y mapas Formularios y controles Marcos XML Herramientas de Trabajo: Editores y

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

SISTEMAS DE NOMBRES DE DOMINIO

SISTEMAS DE NOMBRES DE DOMINIO SISTEMAS DE NOMBRES DE DOMINIO La historia del sistema de nombres de dominio, DNS, se remonta a la década de los setenta, donde cada una de las computadoras conectadas a la red tenía asignada una direcció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

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

PROGRAMACIÓN PÁGINAS WEB JAVASCRIPT Y PHP

PROGRAMACIÓN PÁGINAS WEB JAVASCRIPT Y PHP PROGRAMACIÓN PÁGINAS WEB JAVASCRIPT Y PHP OBJETIVOS Estudiar la programación de la parte cliente con JavaScript y la programación de la parte servidor con la tecnología PHP y el servidor de bases de datos

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

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages).

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages). 2.3. Lenguajes de programación del lado Servidor Existe una multitud de lenguajes concebidos o no para Internet. Cada uno de ellos explota más a fondo ciertas características que lo hacen más o menos útiles

Más detalles

Tema 5: Tecnologías Web

Tema 5: Tecnologías Web Apuntes de Introducción a Internet Tema 5: Tecnologías Web Uploaded by Ingteleco http://ingteleco.webcindario.com ingtelecoweb@hotmail.com La dirección URL puede sufrir modificaciones en el futuro. Si

Más detalles