Download Programación Multimedial II

Document related concepts

MySQL wikipedia , lookup

PhpMyAdmin wikipedia , lookup

Adaptive Server Anywhere wikipedia , lookup

ADOdb wikipedia , lookup

Inyección SQL wikipedia , lookup

Transcript
Programación Multimedial II
Año 2015 – Hernán Beati
Competencias Específicas de la Asignatura
El estudiante será capaz de diseñar y gestionar los flujos de información de una
organización plasmándolos en una Base de Datos, y creando posteriormente una
Aplicación Web que interactúe con esos datos, desarrollando un sistema de front-end y
back-end.
Para ello utilizará diagramas entidad-relación, el gestor MySQL y el lenguaje PHP.
Complementariamente, creará una Aplicación Mobile híbrida de complejidad media, con
acceso a datos.
Objetivos

Introducir a los alumnos en el diseño de bases de datos partiendo del planteo de un problema
real.

Establecer los principales conceptos para la integración de sistemas de bases de datos
relacionales con aplicaciones web.

Aprender a programar aplicaciones web con PHP integrado a MySQL.

Desarrollar el front-end y back-end de una aplicación web.

Crear una aplicación mobile híbrida básica con HTML5, Jquery Mobile y Phonegap Build.
-Primer Cuatrimestre. Contenidos para la primera evaluación parcial
Unidad 1: Modelo de datos
1.1 Modelo de representación Entidad-Relación
Entidades: atributos, restricciones.
Relaciones: elementos, cardinalidad, atributos, dependencias.
Unidad 2: Modelo Relacional:
2.1 Dependencias Funcionales
Conceptos. Tipos de dependencias funcionales
Uso de claves. Indices.
2.2 Normalización:
Conceptos. Definiciones
Formas normales: 1FN 2FN 3FN FNBC
2.3 Creación y diseño
Ciclo de vida de una Base de Datos.
Operaciones básicas: ABM y consulta.
Plan de trabajo. Diseño y Carga
Metodología.
-TRABAJO PRACTICO INTEGRADOR
Unidad 3: Lenguaje SQL: Definición y Manipulación de datos.
3.1 Administración del DBMS. Roles y Funciones.
Usuarios del DBMS.
3.2 Sentencias DDL del lenguaje SQL.
3.3 Sentencias DML del lenguaje SQL.
-TRABAJO PRACTICO INTEGRADOR
Unidad 4: Introducción a la programación web con PHP
4.1 Instalación de servidor local
Conceptos y configuraciones básicas de un servidor.
El primer script. Sintaxis básica de PHP. Escritura en el código fuente.
4.2 Programación básica
Variables locales. Comillas. Concatenación.
Envío de variables al servidor en links y mediante formularios.
Páginas dinámicas. Includes.
Operadores de asignación y comparación.
Unidad 5: Condicionales y validaciones. Vectores y bucles
5.1 Condicionales
Validaciones de datos con If, else, elseif.
Uso de switch.
Verificación de existencia, de no vacío, de valor aceptable.
5.2 Vectores
Información almacenada de forma ordenada.
Indice y valor. Tipos de índices.
Bucles para recorrer vectores.
Unidad 6: Creación de funciones propias
6.1 Definición de la tarea de una función
Parámetros de entrada y valor de retorno.
6.2 Funciones predefinidas de PHP
Funciones de Fecha y hora.
Funciones para manipulación de cadenas de caracteres.
Función para envío de emails.
Unidad 7: Integración de sistemas de bases de datos con aplicativos web
7.1 Cómo pensar una aplicación web
Ejemplos de páginas dinámicas, catálogos, galerías de fotos, buscadores.
Los conceptos de back-end y front-end.
7.2 Páginas PHP que muestran datos de la base
Conexión a la base.
Consultas de selección y listados dinámicos.
7.3 Páginas PHP que envían datos a la base
Consultas de inserción, borrado y actualización.
-TRABAJO PRACTICO INTEGRADOR (ABM)
Unidad 8: Manejo de sesiones y cookies
8.1 Las cookies
Creación y lectura de cookies
8.2 Las sesiones
Concepto de sesión.
Archivo e identificador de sesión.
-EXAMEN PARCIAL
UNIDADES TEMATICAS 2do CUATRIMESTRE
Unidad 9: Programación Orientada a Objetos con PHP
9.1 Conceptos y modelado básico con UML
Representando diagramas de clases.
Atributos y métodos.
Visibilidad.
9.2 Clases, objetos, métodos y propiedades
Conceptos fundamentales de la OOP aplicados a PHP.
Adaptación de clases prearmadas de phpClasses.
-TRABAJO PRACTICO INTEGRADOR (OOP)
Unidad 10: Implementar funcionalidades para aplicaciones web
10.1 Internacionalización
Crear (o adaptar) un sistema para publicar contenidos multilenguaje, escalable.
10.2 URLs amigables
Configurar el servidor web para utilizar URLs amigables (mod_rewrite de Apache).
10.3 Planificación de esquema inicial de un proyecto web Senior
Unidad 11: Taller de creación de una aplicación mobile híbrida con HTML5.
11.1 Planificación de la aplicación
Casos de uso (tareas). Contexto.
Planificación de las pantallas (articulado con la materia “Diseño Aplicado”).
Creación del HTML con Jquery Mobile.
11.2 Taller de programación JavaScript
Trabajo grupal de codificación en clase de distintas funcionalidades de la aplicación.
Compilación de la App con Phonegap Build.
-TRABAJO PRACTICO INTEGRADOR (APP)
Bibliografía:
“PHP, Creación de páginas Web dinámicas” por Beati, Hernán, de Edit. Alfaomega.
"Bases de Datos Relacionales" de Giménez, Casamayor Ródenas y Mota Herranz, de
Edit. Pearson/Prentice Hall.
"Diseño de Bases de Datos - Problemas resueltos" por de Miguel, Martínez y otros, de
Edit. Alfaomega, España.