Desarrollo de Aplicaciones Web II - Sesión 01 - Introducción

Post on 25-May-2015

4.172 views 1 download

Transcript of Desarrollo de Aplicaciones Web II - Sesión 01 - Introducción

Clase No. 1

Agosto 5 de 2009

Docente

Didier Fabián Granados M.

difagram@gmail.com

Ingeniero de Sistemas e Informática

Universidad Nacional de Colombia, sede Medellín

Especialista en Desarrollo de Software

Universidad EAFIT

Ingeniero Desarrollador

Ceiba Software House S.A.

Metodología

Clases teórico-prácticas.

Se describirán los contenidos teóricos a nivel general, utilizando

técnicas de modelamiento (UML).

Demostraciones prácticas por parte del profesor de los temas vistos en

clase.

Las prácticas se fundamentarán en los lenguajes de programación Java,

.NET o PHP, según sea el caso.

Receso de 20 minutos entre los dos bloques de dos

horas de clase (a las 19:40, a no ser que de común

acuerdo se lleguen a dar 3 horas seguidas).

Exposiciones y talleres prácticos en grupo.

Dos exámenes parciales, cada uno del

Primer parcial: 30 de septiembre.

Segundo parcial: 2 de diciembre.

Aclaraciones

Fechas definidas por la institución, son

inamovibles, excepto en casos de fuerza mayor.

Abarcarán los temas vistos hasta la fecha de cada

examen.

Proyecto de semestre ( )

En grupos de mínimo 2 y máximo 3 personas.

Desarrollo de una aplicación Web avanzada en Java, .NET o PHP (según

el criterio de cada grupo), utilizando programación orientada a objetos,

arquitectura por capas, manejo de bases de datos y que cuente con las

siguientes características:

Autenticación y autorización.

Validaciones tanto del lado del servidor como

del lado del cliente.

Manejo de sesiones.

Manipulación de registros.

Reportes (opcional).

Proyecto de semestre ( )

Presentación de 4 entregas parciales:

Revisión cero (No calificable): Agosto 26.

Primera revisión (5%): Septiembre 9.

Definición general del problema y solución a implementar.

Diagrama de clases inicial.

Prototipos funcionales (HTML, Wireframes).

Segunda revisión (5%): Octubre 14.

Diagrama de clases refinado.

Casos de uso (diagrama y descripciones).

Diseño de la BD (Modelo entidad – relación).

Proyecto funcional (10%): Noviembre 25

Entrega de código fuente de la aplicación.

Entrega de scripts de base de datos.

Sustentación en clase.

Exposición en grupo ( )

También en grupos de mínimo 2 y máximo 3 personas.

Tema: Sistemas de Gestión de Contenidos (CMS).

Nombre del sistema

Lenguaje de programación en el cual fue desarrollado.

Base de datos que utiliza.

Requisitos para instalación, uso y comercialización.

Ventajas y desventajas.

Posibilidades de extensión con componentes propios o de terceros.

Reconocimiento en el mercado.

15 minutos de exposición por grupo.

Seguimiento ( )

Informes de lectura.

Talleres prácticos en clase.

Nombre.

En qué empresa trabaja (si lo hace), desde hace cuánto y en

qué área.

Experiencia en programación.

Conocimiento sobre el tema de Aplicaciones Web.

Expectativas sobre el curso.

1. Repaso e Introducción al Curso.

2. La Web y las Bases de Datos.

3. Programación Orientada a Objetos.

4. Manejo de Sesiones y Cookies.

5. Arquitectura de una Aplicación Web.

6. XML.

7. AJAX.

8. Introducción a las Aplicaciones Web

Móviles.

La rápida expansión de Internet ha supuesto una

transformación en las necesidades de información de las

organizaciones.

En particular esto afecta a la necesidad de que:

1. La información sea accesible desde cualquier lugar dentro de las

organizaciones e incluso desde el exterior.

2. Esta información sea compartida entre todas las partes

interesadas, de manera que todas tengan acceso a la información

completa (o a aquella parte que les corresponda según su

función) en cada momento.

Movimiento creciente de cambio

Del típico programa de escritorio a una aplicación Web en línea.

Navegador

Estación

de trabajo

Servidor de

aplicaciones

Base de

datos

Internet

¿Y entonces… qué es una Aplicación Web?

Son aquellas aplicaciones que los usuarios pueden utilizar

accediendo a un servidor Web a través de Internet o de una

intranet mediante un navegador.

Es un producto o aplicación de software

que se codifica en un lenguaje

soportado por los navegadores Web,

entre ellos HTML, JavaScript, Java, etc., en

la que se confía la ejecución al

navegador.

Las alternativas básicas para el desarrollo de aplicaciones.

Todo lo que se codifica, se procesa en el navegador del cliente.

Tecnologías más utilizadas

(X)HTML.

Hojas de estilo en cascada (CSS).

Javascript.

VB Script.

Applets de Java.

Flash - ActionScript.

Silverlight.

Todo lo que se codifica, se procesa en un servidor de

aplicaciones y es devuelto en HTML puro al cliente.

Se posibilita la interacción con las bases de datos y otros

componentes internos y externos.

Tecnologías más utilizadas

Java

JSP, Servlets, Struts, JSF, EJB

ASP .NET

Visual Basic .NET, C#

PHP

Python

Perl – CGI

Bases de datos

Oracle

8i, 9i, 10g, 11g.

SQL Server

2000, 2005, 2007.

IBM DB2

MySQL

PostgreSQL

Informix

Otras más…

Servidores de Aplicaciones

Internet Information Services

Apache

Apache Web Server para PHP

Apache Tomcat para Java.

Oracle Application Server

8i, 9i, 10g, 11g.

IBM Application Server.

Compatibilidad entre navegadores

Lógica particular que cada navegador posee, por no seguir los

estándares o tenerlos muy bien implementados.

CSS

Javascript (DOM).

Otros inconvenientes

Conexión a Internet por parte del cliente.

Configuraciones del servidor de aplicaciones.

Tamaño de los recursos.

Problemas de concurrencia.

Para desarrolladores en .NET

MSDN – Microsoft Development Network

http://msdn.microsoft.com

Para desarrolladores en Java

Java Developer Network

http://developer.sun.com

Para desarrolladores e PHP

Sitio Oficial de PHP

http://www.php.net

Y el infaltable Google…