La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET.

Presentaciones similares


Presentación del tema: "1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET."— Transcripción de la presentación:

1 1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET I Unidad 1: Programación para ejecución en el Servidor

2 2  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Contenidos Presentación del curso. Aspectos generales sobre el modelo de desarrollo orientado al lado del cliente: Programación para ejecución en el cliente. Aspectos generales sobre el modelo de desarrollo orientado al lado del servidor: Programación para ejecución en el servidor. Creación de Layout de pantalla, Modelamiento de datos.

3 3  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Pequeña consulta inicial ¿Mantiene bases de datos que quisiera ver en la Web? –¿El resto del mundo necesita realmente ver esos datos? ¿O quizás se siente un poco desilusionado pensando que no podremos vivir sin su gigante archivo de grabaciones de Los Beatles? ¿Necesita su sitio constantes actualizaciones, por ejemplo en, nuevos productos, calendario de eventos, o una gran sección de What's new? ¿Vende cosas en la Web? ¿Es el equivalente electrónico a un ratón de biblioteca, del tipo que guarda antiguos National Geographics y Enquirers para futura referencia? ¿Tienes montones de documentos de texto que necesita en un servidor? ¿Le gusta pasar horas navegando como nerd en el Web, en vez de diseñar el sitio en el que se supone que está trabajando? ¿Tiene su sitio banners de propaganda? ¿Usa su sitio figuras que necesitan cálculo, como totales de productos o números de inventario?

4 4  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Tecnologías del Servidor En los dos cursos de Implementación de Aplicaciones para la Internet se estudian varios lenguajes de programación usados en la actualidad para hacer páginas Web: 1.PHP 2.ActionScript de Macromedia Flash en el primer curso, y 1.JSP 2.ASP en el segundo.

5 5  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Cuál tecnología usar? La controversia respecto a cuál tecnología usar en el lado del servidor tiene muchas características de guerra santa debido a que se mezcla con el problema de cuál sistema operativo/arquitectura usar. De esta forma, es un elemento más en la eterna batalla entre el mundo Unix – Linux y el mundo Microsoft.

6 6  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Plataforma e independencia del servidor PHP, JSP y ASP sirven para hacer, más o menos, el mismo tipo de aplicaciones Web. Sin embargo, en el fondo tienen bastantes diferencias: –PHP está diseñado para ser simple de programar y rápido en alcanzar objetivos por personas con poco conocimiento sobre programación. Puede ejecutarse en plataformas Windows y Linux, ya que para ambas existe el intérprete. –JSP sigue la filosofía de la arquitectura JAVA de "escribe una vez ejecuta donde quieras". La implantación de ASP está limitada para arquitecturas basadas en tecnología Microsoft. –Así, JSP se puede ejecutar en los sistemas operativos y servidores Web más populares, como por ejemplo Apache, Netscape o Microsoft IIS, mientras que ASP sólo tiene soporte nativo para los servidores IIS y Personal Web Server, que son los dos servidores Web para sistemas Microsoft, el primero con tecnología NT (XP, 2000 y 2003) y el segundo para sistemas Windows 98 y similares.

7 7  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy El antepasado común: CGI CGI - acrónimo de “Common Gateway Interface” - es un protocolo que puede utilizarse para comunicarse dinámicamente entre las páginas Web y un programa. Es ejecutado en el servidor. Un script CGI puede ser escrito en cualquier lenguaje que pueda leer de STDIN, escribir en STDOUT y leer variables de entorno como virtualmente cualquier lenguaje de programación, incluyendo C, Perl, o incluso scripts del shell.

8 8  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Esquema de funcionamiento

9 9  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Estructura de un script CGI La secuencia típica de un script CGI es: 1.Leer el formulario de entrada del usuario desde STDIN. 2.Hacer lo que se desea con los datos. 3.Escribir la respuesta HTML a STDOUT.

10 10  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Leyendo el Formulario de Entrada Cuando el usuario envía un formulario, el script recibe los datos como un conjunto de pares nombre-valor: nombres definidos en las etiquetas INPUT, etiquetas SELECT o TEXTAREA, y los valores son cualquier cosa que el usuario haya escrito o seleccionado. Los usuarios también pueden enviar archivos con formularios. Este conjunto de pares nombre-valor se envía como una sola larga cadena, la cual debe ser procesada. Existen muchas rutinas que lo hacen.

11 11  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Formato de una cadena larga "nombre1=valor1&nombre2=valor2&nombre3=valor3" Así que solamente divide en los ampersands (&) y signos de igual (=). Entonces, deben hacerse dos cosas más para cada nombre y valor: 1.Convertir todos los caracteres "+" en espacios, y 2.Convertir todas las secuencias "%xx" en el carácter cuyo valor ascii sea "xx", en hexadecimal. Por ejemplo, convierte "%3d" en "=". Esto es necesario porque la cadena larga original es código-URL, para permitir signos de igual, ampersands (&), y otros en la entrada del usuario.

12 12  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Obtención de una cadena larga "nombre1=valor1&nombre2=valor2&nombre3=valor3 " La obtención de la cadena larga depende del método HTTP que la forma haya usado: –Para envíos GET, está en la variable de entorno QUERY_STRING. –Para envíos POST, leerlos de STDIN. El número exacto de bytes a leer está en la variable de entorno CONTENT_LENGTH.

13 13  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Método GET GET es usado para obtener un archivo u otro recurso, posiblemente con parámetros especificando más exactamente lo que se necesita. En el caso de una entrada por forma, GET se incluye completamente en el URL. GET es como el navegador baja la mayoría de los archivos: como archivos HTML e imágenes. Puede ser usado también en la mayoría de los envíos si no hay muchos datos. El límite varía de navegador a navegador.

14 14  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Método GET (2) El método GET es idempotente, lo cual significa que el efecto lateral de muchas peticiones GET idénticas es el mismo que para una sola petición GET. En particular, los navegadores y proxies pueden obtener respuestas GET del caché, así que dos remisiones de formas idénticas podrían no llegar al script CGI. No debe usarse GET si se quiere registrar cada petición, de otra manera almacena los datos de cada petición.

15 15  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Método POST POST es usado para enviar un pedazo de datos al servidor para ser procesado, cualquier cosa que esto signifique. El nombre POST puede venir de la idea de postear una nota en un grupo de discusión o de noticias. Cuando una forma HTML se remite usando POST, los datos de la forma se amarran al final de la petición POST en su propio objeto. Esto no es tan rápido ni tan fácil como al usar GET, pero es mucho más versátil. Por ejemplo, puede enviarse un archivo completo usando POST. El tamaño de los datos no está limitado como en GET.

16 16  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Ventajas de cada método Para el programador CGI, GET y POST trabajan casi idénticamente y son igualmente fáciles de usar. Algunas ventajas de POST son que no se está limitado sobre los datos que se desea remitir, y puede contarse con que el script sea llamado cada vez que la forma sea remitida. Una ventaja de GET es que la remisión completa de la forma puede ser encapsulada en un URL, como hiperenlaces o marcadores. (AutoPOST hace esto con POST).AutoPOST

17 17  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Enviando la Respuesta al Usuario Primero, escribir la línea Content-type: text/html mas otra línea en blanco a STDOUT. Después de eso, escribir la página de respuesta HTML en STDOUT, y se enviará al usuario cuando el script termine de ejecutarse. Eso es todo. Si: se está generando código HTML en plena navegación. El HTML fue diseñado para ser suficientemente simple para generarse así.

18 18  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Regresando Otra Respuesta No-HTML de un script CGI La mayoría de los scripts CGI regresan datos HTML, pero puede regresarse cualquier tipo de datos deseado. Solamente se usará el tipo MIME correcto en la línea "Content-type:", seguida por la línea en blanco requerida, seguida por los datos de los recursos que estás enviando de regreso. En el caso de los archivos HTML, esos datos forman el texto HTML.

19 19  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Regresando Imagen, Audio ó Vídeo En el caso de imágenes, audio o video son datos binarios. Por ejemplo, para responder con un archivo gif, utilice: Content-type: image/gif GIF89a&%*$@#-- contenido binario del archivo GIF aquí -- $(*&%(*@#...... Su archivo HTML puede cargar una imagen generada por script con

20 20  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Tipos MIME Son cadenas de caracteres estándar de caso sensitivo que identifican el tipo de datos usado a través de Internet para muchos propósitos. Comienzan con el tipo general de datos, como text, image, o audio, seguido por un slash (/), y terminando con el tipo específico de datos como html, gif, or jpeg. Los archivos HTML se identifican con text/html, y los GIFs y JPEGs se identifican con image/gif e image/jpeg.

21 21  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Seguridad con scripts CGI Piense en esto: un script CGI es un programa que cualquiera en el mundo puede ejecutar en su máquina. De acuerdo con esto, busque agujeros de seguridad cuando escribas su script. Sobre todo, no confíe en la entrada del usuario. En particular, no incluya la entrada del usuario en un comando sin verificar cuidadosamente esa entrada, pues le permite a un hacker manejar un camión virtual a través de su agujero de seguridad. Es fácil para un hacker enviar cualquier variable de forma a su script con cualquier valor (aún caracteres no imprimibles). Su seguridad no debe descansar en campos teniendo ciertos valores, ya sea que existan o no.

22 22  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Poniendo el script en el Servidor Diferentes servidores Web se configuran de manera diferente. Algunos permiten poner scripts CGI en el mismo directorio que sus páginas Web, con nombres de archivo terminando con ".cgi". Otros servidores obligan a poner todos los scripts CGI en un directorio específico, usualmente llamado "cgi-bin". Su Web master tiene la respuesta.

23 23  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Permisos para el script en el Servidor Necesita fijar los permisos adecuados para el archivo de programa. En Unix y Linux, el servidor Web corre bajo algún nombre de usuario como cualquier otro proceso. Su programa CGI debe ser ejecutable para ese nombre de usuario, además de poder ser leído si es un script Perl o un shell script. En Unix, deberá fijar los permisos correctos con "chmod 750 *.cgi" o "chmod 755 *.cgi", si su servidor no tiene accesos de grupo a sus archivos. Intente ambos, o pregunte a su Web master.

24 24  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Variables de Entorno CGI útiles Los scripts CGI tienen acceso a cerca de 20 variables de entorno, como QUERY_STRING y CONTENT_LENGTH. La lista completa está en NCSA.lista completa Algunas variables de entorno a destacar son: –REQUEST_METHOD El método HTTP con el que este script fue llamado. Generalmente "GET", "POST", o "HEAD". –HTTP_REFERER El URL de la forma que fue remitido. No siempre se usa, así que no confíe mucho en él. No invada la privacidad de la gente con él tampoco.

25 25  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Variables de entorno (2) PATH_INFO –Información extra de "ruta". Es posible pasar información extra al script en el URL, después del nombre de archivo del script CGI. –Por ejemplo, llamar al URL http://www.myhost.com/mypath/myscript.cgi/path/info/her e http://www.myhost.com/mypath/myscript.cgi/path/info/her e fijará a PATH_INFO a "/path/info/here". –Comúnmente usado para datos tipo ruta, pero puede usarse para cualquier propósito. SERVER_NAME –Su nombre de servidor Web o dirección IP al menos para esta petición. SERVER_PORT –Su puerto de servidor Web al menos para esta petición.

26 26  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Variables de entorno (3) SCRIPT_NAME –El URL local del script que está siendo ejecutado. –El estándar CGI no es claro sobre si el slash (/) de inicio se incluye. –Puede soportar ambos casos con esta línea de Perl, que garantiza un slash de inicio: $ENV{'SCRIPT_NAME'}=~ s#^/?#/# ; Así que el URL del script que está siendo ejecutado es, en Perl, "http://$ENV{'SERVER_NAME'}:$ENV{'SERVER_PORT'}$ENV {'SCRIPT_NAME'}" El URL completo del script con el que fue invocado también puede tener PATH_INFO y QUERY_STRING al final.

27 27  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es PHP? PHP - acrónimo de “Personal Home Page Tools” - es un lenguaje interpretado de alto nivel embebido en páginas HTML y ejecutado en el servidor. No es un script CGI escrito en otro lenguaje de programación como C, pues para crear una salida en HTML se escribe el código HTML con cierto código PHP embebido (introducido) en el mismo, que producirá la salida deseada. Es un pre-procesador de páginas HTML que está motivado y dirigido expresamente a construir páginas dinámicas. Un ejemplo de ello es que los argumentos CGI son importados directamente al espacio de nombres global de cualquier programa PHP: puede correr como un CGI o como un plug-in del servidor Web.

28 28  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es PHP? (2) Ha crecido en soporte y en funciones y ahora viene "de fábrica" con varias decenas de bibliotecas para funciones matemáticas, de bases de datos, etc. En este momento se encuentra en una fase de consolidación (PHP5) tras unos cuantos años de éxito, y la fase expansiva ha sido más bien dejada atrás para madurar en aspectos más relacionados con la integración de sus partes entre sí. El código PHP incluye etiquetas especiales de comienzo y final que permitirán entrar y salir del modo PHP. Lo que le distingue de la tecnología Javascript, que se ejecuta en la máquina cliente, es que el código PHP es ejecutado en el servidor. El servidor Web puede ser configurado incluso para que procese todos los archivos HTML con PHP.

29 29  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Importante extensión: Zend Potente motor de scripts para proporcionar altas prestaciones, así como soporta otros servidores Web, además de Apache, que corren PHP como módulo nativo. (http://www.zend.com/) Disponible desde PHP3.

30 30  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Seguridad en PHP PHP es un potente lenguaje e interprete. Tanto incluido en el servidor Web como módulo o ejecutado ó como un binario CGI, puede acceder a archivos, ejecutar comandos y abrir comunicaciones de red en el servidor. Todas estas características hacen que lo que se ejecute en el servidor Web sea inseguro por defecto. PHP ha sido diseñado específicamente para ser un lenguaje mas seguro para escribir programas CGI que Perl o C, y con la correcta selección de las opciones de configuración del tiempo de compilación y ejecución, se consigue la exacta combinación de libertad y seguridad que se necesita. Ya que existen diferentes modos de utilizar PHP, existen multitud de opciones de configuración que permiten controlar su funcionamiento. Una gran selección de opciones garantiza que se pueda usar PHP para diferentes usos, pero también significa que existen combinaciones de estas opciones y configuraciones del servidor que producen instalaciones inseguras. Cuando PHP es usado como modulo Apache, hereda los permisos de usuario de Apache (normalmente "nobody").

31 31  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy.NET vs J2EE

32 32  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy La ventaja Java La tecnología JSP usa Java como lenguaje de script mientras que ASP usa C#, VBScript o Jscript. Java es un lenguaje mas potente y escalable que los lenguajes de Script. Las páginas JSP son compilados en Servlets por lo que actúan como una puerta a todos los servicios Java de Servidor y librerías Java para aplicaciones http. Java hace el trabajo del desarrollador más fácil. Por ejemplo, ayuda a proteger el sistema contra las "caídas" mientras que las aplicaciones ASP sobre sistemas NT son más susceptibles a sufrirlas, también ayuda en el manejo de la memoria protegiendo contra fallos de memoria y el duro trabajo de buscar los fallos de perdida de punteros de memoria que pueden hacer mas lento el funcionamiento de una aplicación.

33 33  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es JSP? JSP -acrónimo de “Java Server Pages”, que en castellano significa Páginas de Servidor Java - es la tecnología Java orientada para la creación de páginas Web con programación en el servidor en Java. Con JSP pueden crearse aplicaciones Web que se ejecuten en variados servidores Web, de múltiples plataformas, ya que Java es en esencia un lenguaje multiplataforma. Las páginas JSP están compuestas de código HTML/XML mezclado con etiquetas especiales para programar scripts de servidor en sintaxis Java. Por tanto, las JSP podrán escribirse con el editor HTML/XML habitual.

34 34  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Motor JSP El motor de las páginas JSP está basado en los servlets de Java: programas en Java destinados a ejecutarse en el servidor, aunque el número de desarrolladores que pueden afrontar la programación de JSP es mucho mayor, dado que resulta más sencillo aprender que los servlets. En JSP se crean páginas de manera parecida a como se crean en ASP o PHP: –Se generan archivos con extensión.jsp que incluyen, dentro de la estructura de etiquetas HTML, las sentencias Java a ejecutar en el servidor. –Antes de que sean funcionales los archivos, el motor JSP lleva a cabo una fase de traducción de esa página en un servlet, implementado en un archivo class (Byte codes de Java). –Esta fase de traducción se lleva a cabo habitualmente cuando se recibe la primera solicitud de la página.jsp, aunque existe la opción de precompilar en código para evitar ese tiempo de espera la primera vez que un cliente solicita la página.

35 35  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Estrategia J2EE

36 36  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es ASP? ASP - acrónimo de “Active Server Page” - es una tecnología propietaria de Microsoft. Se trata de usar lenguajes de guiones (scripts), basados en Basic ( VBScript ) ó en Java ( C# ). Se utiliza casi exclusivamente en los servidores Web de Microsoft: Internet Information Server (IIS) y Personal Web Server (PWS). Los scripts ASP se ejecutan, por lo tanto, en el servidor y puede utilizarse conjuntamente con HTML y Javascript para realizar tareas interactivas y en tiempo real con el cliente. Con ASP se pueden realizar fácilmente páginas de consulta de bases de datos, funciones sencillas como obtener la fecha y la hora actual del sistema servidor, cálculos matemáticos simples, etc.

37 37  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Principio El principio de la tecnología ASP es el VBScript, pero existe otra diversidad de lenguajes de programación que pueden ser utilizados como lo es C#, Perl, JScript, etc. El ASP es una tecnología dinámica funcionando del lado del servidor, lo que significa que cuando el usuario solicita un documento ASP, las instrucciones de programación dentro del script son ejecutadas para enviar al navegador únicamente el código HTML resultante. La ventaja principal de las tecnologías dependientes del servidor radica en la seguridad que tiene el programador sobre su código, ya que éste se encuentra únicamente en los archivos del servidor que al ser solicitado a través del Web, es ejecutado, por lo que los usuarios solamente tienen acceso a la página resultante en su navegador.

38 38  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es ASP.NET? ASP.NET es un marco de trabajo de programación generado en Common Language Runtime (CLR) que puede utilizarse en un servidor para generar eficaces aplicaciones Web. Ofrece varias ventajas importantes acerca de los modelos de programación Web anteriores: 1.Mejor rendimiento. ASP.NET es un código compilado que se ejecuta en el servidor. A diferencia de sus predecesores, ASP.NET puede aprovechar las ventajas del enlace anticipado, la compilación just-in-time, la optimización nativa y los servicios de caché desde el primer momento. Esto supone un incremento espectacular del rendimiento antes de siquiera escribir una línea de código. 2.Compatibilidad con herramientas de primer nivel. El marco de trabajo de ASP.NET se complementa con un diseñador y una caja de herramientas muy completos en el entorno integrado de programación (Integrated Development Environment: IDE) de Visual Studio. La edición WYSIWYG, los controles de servidor de arrastrar y colocar y la implementación automática son sólo algunas de las características que proporciona esta eficaz herramienta.

39 39  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es ASP.NET? (2) 3.Eficacia y flexibilidad. Debido a que ASP.NET se basa en Common Language Runtime, la eficacia y la flexibilidad de toda esa plataforma se encuentra disponible para los programadores de aplicaciones Web. La biblioteca de clases de.NET Framework, la Mensajería y las soluciones de Acceso a datos se encuentran accesibles desde el Web de manera uniforme. ASP.NET es también independiente del lenguaje, por lo que puede elegir el lenguaje que mejor se adapte a la aplicación o dividir la aplicación en varios lenguajes. Además, la interoperabilidad de Common Language Runtime garantiza que la inversión existente en programación basada en COM se conserva al migrar a ASP.NET. 4.Simplicidad. ASP.NET facilita la realización de tareas comunes, desde el sencillo envío de formularios y la autenticación del cliente hasta la implementación y la configuración de sitios. Por ejemplo, el marco de trabajo de página de ASP.NET permite generar interfaces de usuario, que separan claramente la lógica de aplicación del código de presentación, y controlar eventos en un sencillo modelo de procesamiento de formularios de tipo Visual Basic. Además, Common Language Runtime simplifica la programación, con servicios de código administrado como el recuento de referencia automático y el recolector de elementos no utilizados.

40 40  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es ASP.NET? (3) 5.Facilidad de uso. ASP.NET emplea un sistema de configuración jerárquico, basado en texto, que simplifica la aplicación de la configuración al entorno de servidor y las aplicaciones Web. Debido a que la información de configuración se almacena como texto sin formato, se puede aplicar la nueva configuración sin la ayuda de herramientas de administración local. Esta filosofía de "administración local cero" se extiende asimismo a la implementación de las aplicaciones ASP.NET Framework. Una aplicación ASP.NET Framework se implementa en un servidor sencillamente mediante la copia de los archivos necesarios al servidor. No se requiere el reinicio del servidor, ni siquiera para implementar o reemplazar el código compilado en ejecución. 6.Escalabilidad y disponibilidad. ASP.NET se ha diseñado teniendo en cuenta la escalabilidad, con características diseñadas específicamente a medida, con el fin de mejorar el rendimiento en entornos agrupados y de múltiples procesadores. Además, el motor de tiempo de ejecución de ASP.NET controla y administra los procesos de cerca, por lo que si uno no se comporta adecuadamente (filtraciones, bloqueos), se puede crear un proceso nuevo en su lugar, lo que ayuda a mantener la aplicación disponible constantemente para controlar solicitudes.

41 41  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy ¿Qué es ASP.NET? (4) 7.Posibilidad de personalización y extensibilidad. ASP.NET presenta una arquitectura bien diseñada que permite a los programadores insertar su código en el nivel adecuado. De hecho, es posible extender o reemplazar cualquier subcomponente del motor de tiempo de ejecución de ASP.NET con su propio componente escrito personalizado. La implementación de la autenticación personalizada o de los servicios de estado nunca ha sido más fácil. 8.Seguridad. Con la autenticación de Windows integrada y la configuración por aplicación, se puede tener la completa seguridad de que las aplicaciones están a salvo.

42 42  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Estrategia.NET

43 43  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Mantenimiento Las aplicaciones que usan JSP tiene un mantenimiento más fácil que las que usan ASP. Los lenguajes de script están bien para pequeñas aplicaciones, pero no encajan bien para aplicaciones grandes. Java es un lenguaje estructurado y es más fácil de construir y de proporcionar mantenimientos grandes como aplicaciones modulares. La tecnología JSP hace mayor énfasis en los componentes que en los scripts, esto hace que sea más fácil revisar el contenido sin que afecte a la lógica o revisar la lógica sin cambiar el contenido. La arquitectura “Enterprise Java Beans“ (EJB) encapsula la lógica de acceso a BD, seguridad, integridad transaccional y aislamiento de la aplicación. Debido a que la tecnología JSP es abierta y multiplataforma, los servidores Web, plataformas y otros componentes pueden ser fácilmente actualizados o cambiados sin que afecte a las aplicaciones basadas en la tecnología JSP.

44 44  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Conclusiones Es importantísimo dejar de pensar que el asunto de desarrollar aplicaciones Web es: leer de la base de datos, mostrar un formulario, leer los datos del formulario, escribir a la base de datos. No se puede seguir en esa línea mucho tiempo. Es mejor apuntar más alto, a formas de desarrollar las aplicaciones de más alto nivel. Un buen punto de partida es olvidarse de la base de datos y pensar en formas de más alto nivel de acceder los datos, como bases de datos orientadas a objetos o puentes objeto-relacional. Otra forma es abordarlo como un problema XML/XSL: utilizar servicios Web. Es importante evitar que toda la inteligencia de la aplicación esté tan cerca de la interfaz, porque a fin de cuentas se termina cometiendo errores similares a cuando se mezcla materialización y contenido de los documentos.

45 45  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Fuentes de información Guía para el Desarrollo de Sitios Web - Gobierno de ChileGuía para el Desarrollo de Sitios Web - Gobierno de Chile Colección de ayuda combinada de Visual Studio.NET Documentación de.NET Framework SDK O’Relly ASP.NET Reference (en la ayuda de DreamWeaver) “Introducción al diseño de Aplicaciones Web con Active Server Pages” ASP.pdf Microsoft Internet Information Server (IIS): “Using Active Server Pages with Microsoft® Internet Information Server” (ASPWP.pdf)

46 46  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Textos sobre Java y JSP (en biblioteca de la sede) “Servlets y Javaserver pages”, Hall, Marty. Código de biblioteca: 7959 “Java 2 Iniciación y referencia” Sanchez Allende, Jesus; y otros. Código de biblioteca : 17620 “Introducción a la programación con Java TM”, Arnow, David M. Código de biblioteca : 9142 “Programación concurrente en Java: Principios y patrones de diseño”, Lea, Doug. Código de biblioteca: 9146

47 47  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Bibliografía CGI - Web http://maestrosdelweb.com/editorial/cgiintro/ http://hoohoo.ncsa.uiuc.edu/cgi/intro.html http://www.jmarshall.com/easy/cgi/spanish/ http://cgi.resourceindex.com/ http://builder.cnet.com/webbuilding/0-3882-8- 5263480-2.html?tag=st.bl.3882-8-5263480- 8.txt.3882-8-5263480-2http://builder.cnet.com/webbuilding/0-3882-8- 5263480-2.html?tag=st.bl.3882-8-5263480- 8.txt.3882-8-5263480-2 http://www.eekim.com/software/cgihtml/cgihtml.ht mlhttp://www.eekim.com/software/cgihtml/cgihtml.ht ml http://www.cgiscript.net/ http://www.scriptarchive.com/ http://www.needscripts.com/

48 48  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Bibliografía PHP - Web http://www.solotuweb.com/area.asp?area=P HPhttp://www.solotuweb.com/area.asp?area=P HP http://www.weberdev.com/CodeExamples.ph phttp://www.weberdev.com/CodeExamples.ph p http://www.php.net/ http://www.php.org/ http://www.e-learningcenter.com/php.htm

49 49  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy JSP en Internet Introducción a J2EE Beans (Básico) JavaBeans Enterprise Integración de XML y los JavaBeans Desarrollo de Aplicaciones Web con JSP y XML Introducción a los Servicios Web en Java Introducción a la Tecnología JavaServer Faces Integración de JSF, Spring e Hibernate para crear una Aplicación Web del Mundo RealIntegración de JSF, Spring e Hibernate para crear una Aplicación Web del Mundo Real

50 50  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Bibliografía JSP http://jakarta.apache.org/tomcat/ http://developer.java.sun.com/developer/onlineTrai ning/JSPIntro/exercises/SetupTomcat/index.htmlhttp://developer.java.sun.com/developer/onlineTrai ning/JSPIntro/exercises/SetupTomcat/index.html http://www.netbeans.org/ http://www.desarrolloweb.com/articulos/831.php?m anual=27http://www.desarrolloweb.com/articulos/831.php?m anual=27 http://www.tejedoresdelweb.com/307/article- 1883.htmlhttp://www.tejedoresdelweb.com/307/article- 1883.html http://www.desarrolloweb.com/articulos/499.php?m anual=15http://www.desarrolloweb.com/articulos/499.php?m anual=15 http://www.desarrolloweb.com/asp http://www.desarrolloweb.com/php

51 51  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Textos en Internet (inglés) The J2EE homepage: –http://java.sun.com/j2eehttp://java.sun.com/j2ee The Microsoft.NET homepage: –http://www.microsoft.com/nethttp://www.microsoft.com/net The Advanced C#/.NET Tutorial: –http://my.execpc.com/~gopalan/dotnet/net_tutorial.html Visual C# Dev Center: –http://msdn2.microsoft.com/en-us/vcsharp/default.aspx Descarga de Edición Express (gratis para desarrollo): –http://msdn.microsoft.com/vstudio/express/visualcsharp/ Comparaciones ASP.NET vs J2EE –http://www.theserverside.com/tt/articles/article.tss?l=J2EE-vs- DOTNET –http://msdn2.microsoft.com/en-us/library/aa478961.aspxhttp://msdn2.microsoft.com/en-us/library/aa478961.aspx –http://www.gotdotnet.com/team/compare/petshop.aspxhttp://www.gotdotnet.com/team/compare/petshop.aspx

52 52  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy JSP / Servlets (en inglés) JSP at Sun Microsystems –java.sun.com/products/jsp Servlets at Sun Microsystems –java.sun.com/products/servlet J2EE at Sun Microsystems –java.sun.com/j2ee

53 53  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Bibliografía ASP (español) http://www.netveloper.com/index.aspx http://es.gotdotnet.com/quickstart/aspplus/ http://asp.com-e.net/ http://www.asptutor.com/asp/default.asp http://asp.programacion.net/ http://www.entraenlared.com/asp/ http://www.soloasp.com.ar/ http://www.maestrosdelweb.com/editorial/a spintro/http://www.maestrosdelweb.com/editorial/a spintro/

54 54  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy Bibliografía ASP (inglés) http://msdn.microsoft.com/library/default.as p?URL=/library/en- us/dnasp/html/asptutorial.asphttp://msdn.microsoft.com/library/default.as p?URL=/library/en- us/dnasp/html/asptutorial.asp http://samples.gotdotnet.com/quickstart/asp plus/http://samples.gotdotnet.com/quickstart/asp plus/ http://www.w3schools.com/asp/ http://www.asp.net/Tutorials/quickstart.aspx http://www.learnasp.com/learnasp/ http://www.aspfree.com/


Descargar ppt "1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET."

Presentaciones similares


Anuncios Google