Syllabus

DEB-1303 PROGRAMACIÓN WEB AVANZADA

MGTI LUZ MARIA HERNANDEZ CRUZ

lmhernandez@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
8 1 4 5 Ingeniería Aplicada

Prerrequisitos
COMPETENCIAS PREVIAS:
Desarrollar aplicaciones web que involucren lenguajes de marcas, de presentación, del lado del cliente, del lado del servidor con la integración de servicios web. Crear y manipular bases de datos utilizando distintos gestores de bases de datos considerando elementos de integridad y seguridad para el tratamiento de la información. Diseñar e implementar objetos de programación que permitan resolver situaciones reales y de ingeniería.

Competencias Atributos de Ingeniería

Normatividad
No celular. Retardos después de los 10 min. Dos retardos son una Falta. Trabajos entregados después de la fecha de entrega no tendrán ponderación en la calificación. Todos los trabajos son considerados obligatorios al término de cada parcial.

Materiales
Pizarrón. Proyector digital. Pc. Entorno de desarrollo (Servidor Web, Servidor de datos, Interfaz de desarrollo). Materiales de Aprendizaje. Bibliografía Básica.

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares

Parámetros de Examen
PARCIAL 1 De la actividad 1.1.1 a la actividad 2.8.1
PARCIAL 2 De la actividad 3.1.1 a la actividad 4.4.1

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Patrones de Diseño para Desarrollo Web
          1.1. Estructura de un Patrón de Diseño
                   1.1.1. Estructura de un Patrón de Diseño
                           Patrones (326667 bytes)
                           http://es.wikipedia.org/wiki/Patr%C3%B3n_de_dise%C3%B1o
                          
          1.2. Maestro-Detalle
                   1.2.1. Maestro-Detalle
                           Maestro-Detalle (251069 bytes)
                          
          1.3. 3 Capas
                   1.3.1. 3 Capas
                           Capas (942591 bytes)
                           Programación 3 Capas con PHP (3892224 bytes)
                          
          1.4. N Capas
                   1.4.1. N Capas
                           http://geeks.ms/blogs/jkpelaez/archive/2009/05/29/arquitectura-basada-en-capas.aspx
                          
          1.5. Modelo-Vista-Controlador
                   1.5.1. Modelo-Vista-Controlador
                           http://es.wikipedia.org/wiki/Modelo_Vista_Controlador
                           http://www.desarrolloweb.com/articulos/que-es-mvc.html
                           http://librosweb.es/jobeet_1_4/capitulo_4/la_arquitectura_mvc.html
                          
2. Programación de Contenido Dinámico del lado del Servidor
          2.1. Lenguajes PHP, JSP, C#
                   2.1.1. Lenguajes PHP, JSP, C#
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo I. Pág 1 -8
                           Lenguajes PHP,ASP,JSP (436574 bytes)
                           http://es.wikipedia.org/wiki/ASP.NET
                           http://es.wikipedia.org/wiki/JavaServer_Pages
                          
          2.2. Elementos del código
                   2.2.1. Elementos del código
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo III. Pág 29 - 41
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 1. Pág 40 - 54
                          
          2.3. Sintaxis del Lenguaje
                   2.3.1. Sintaxis del Lenguaje
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo III. Pág 29-42
                           http://docencia.udea.edu.co/cci/php/dia1/clase1.htm
                           http://phpbasico.freevar.com/temas/php2_1.php
                          
          2.4. Estructuras de Datos en el Lenguaje
                   2.4.1. Estructuras de Datos en el Lenguaje
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo IV. Pág 58-61
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 7. Pág 133 - 148
                          
          2.5. Tipos de Datos y Manejo de Variables
                   2.5.1. Tipos de Datos y Manejo de Variables
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo IV. Pág 43-58
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 2. Pág 55 - 68
                           http://php.net/manual/es/language.types.php
                           http://amecsa.org/Diplomado/Modulo13/M2_VariablesConstantesTiposDeDatos.pdf
                          
          2.6. Operadores
                   2.6.1. Operadores
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 3. Pág 69 - 80
                           http://www.php.net/manual/es/language.operators.php
                           http://phpbasico.freevar.com/temas/php5_1.php
                          
          2.7. Sentencias de Control
                   2.7.1. Sentencias de Control
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo VI. Pág 77-102
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 4. Pág 81 - 84
                           http://www.php.net/manual/es/language.control-structures.php
                           http://phpbasico.freevar.com/temas/php7_1.php
                          
          2.8. Funciones
                   2.8.1. Funciones
                           Hernán Beati. PHP: Creación de página Web dinámicas. Editorial Alfaomega, Capítulo IX. Pág 173 - 191
                           Luis Miguel Cabezas Granado. Manual Imprescindible de PHP5. Editorial Anaya Multimedia. Tema 5. Pág 95 - 114
                           http://www.php.net/manual/es/language.functions.php
                          
3. Programación de Contenido del lado del Cliente
          3.1. Elementos
                   3.1.1. Elementos
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Pág 69 - 76
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO. Capítulo 3. Pág 51 - 75
                          
          3.2. Operadores
                   3.2.1. Operadores
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Pág 90 - 98
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO.Pág 71 - 75
                           http://www.php.net/manual/es/language.operators.php
                          
          3.3. Clases y Funciones
                   3.3.1. Clases y Funciones
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Capítulo 9. Pág 173-191
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Capítulo 10. Pág 195 - 218
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO. Capítulo 7. Pág135 -149
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO. Capítulo 10. Pág 201 - 212
                          
          3.4. Funciones y Eventos
                   3.4.1. Funciones y Eventos
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Pág 173 - 191
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO. Capítulo 4. Pág 77 - 87
                           http://www.todoexpertos.com/categorias/tecnologia-e-internet/desarrollo-de-sitios-web/php/respuestas/1607781/eventos-con-php
                          
          3.5. Frameworks
                   3.5.1. jQuery
                           PHP Profesional. Eric G Coronel Castillo. Empresa Editora MACRO. Capítulo 18. Pág 351 - 356
                           http://www.javierhernandez.info/2010/09/03/formularios-con-jquery-y-php/
                           http://www.imaginanet.com/blog/usando-ajax-un-simple-ejemplo-con-php-y-jquery.html
                          
                   3.5.2. Prototype
                           http://www.php.net/manual/en/about.prototypes.php
                           http://es.wikipedia.org/wiki/Prototype
                           http://es.scribd.com/doc/6516365/Taller-de-demostracion-del-uso-de-PHP-Ajax-y-Prototype-Paso-1
                          
                   3.5.3. Dojo
                           http://www.ecured.cu/index.php/Dojo_Framework
                           http://es.wikipedia.org/wiki/Dojo_toolkit
                           http://bakery.cakephp.org/articles/view/4caee867-afc0-4ec3-8ccb-2280d13e7814/lang:spa
                          
                   3.5.4. Mootools
                           http://www.desarrolloweb.com/articulos/envio-datos-json-mootools.html
                           http://aprende-web.net/librerias/mootools/mootools_1.php
                          
4. Acceso a Datos
          4.1. Modelo de Datos
                   4.1.1. Modelo de Datos
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Capítulo 11. Pág 231 - 235
                           PHP Profesional. Eric G. Coronel Castillo. Empresa Editora MACRO. Capítulo 15. Pág 319 - 327
                          
          4.2. Acceso básico a datos
                   4.2.1. Acceso básico a datos
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Pág 234 - 269
                           PHP Profesional. Eric G. Coronel Castillo. Empresa Editora MACRO. Capítulo 15. Pág 325 - 327
                          
          4.3. Sentencias preparadas y Procedimientos Almacenados
                   4.3.1. Sentencias preparadas y Procedimientos Almacenados
                           PHP Creación de páginas Web dinámicas. Hernán Beati. Editorial Alfaomega. Capítulo 13. Pág 297 - 326
                           PHP Profesional. Eric G. Coronel Castillo. Empresa Editora MACRO. Capítulo 15. Pág 329 - 335
                          
          4.4. Transacciones
                   4.4.1. Transacciones
                           PHP Profesional. Eric G. Coronel Castillo. Empresa Editora MACRO. Capítulo 16. Pág 329 - 335
                           PHP Profesional. Eric G. Coronel Castillo. Empresa Editora MACRO. Capítulo 17. Pág 339 - 347
                           http://www.php.net/manual/es/mysqlnd-ms.quickstart.transactions.php
                           http://www.php.net/manual/es/mysqlnd-ms.transaction.php
                           http://carnar.blogspot.mx/2006/11/transacciones-en-php-y-mysql.html
                          
5. Seguridad
          5.1. Introducción a la Seguridad Web
                   5.1.1. Introducción a la Seguridad Web
                           http://www.monografias.com/trabajos75/seguridad-desarrollo-aplicaciones-web/seguridad-desarrollo-aplicaciones-web.shtml
                           http://www.nexica.com/es/importancia-Segurida-en-paginas-Web
                           http://www.seguridad.unam.mx/documento/?id=17
                          
          5.2. Vulnerabilidades Convencionales y Técnicas de Explotación
                   5.2.1. Vulnerabilidades Convencionales y Técnicas de Explotación
                           Vulnerabilidades en una aplicación web (65767 bytes)
                           Vulnerabilidades en PHP (157567 bytes)
                           http://unaaldia.hispasec.com/2013/11/owasp-los-diez-riesgos-mas-criticos-en.html
                          
          5.3. Programación Segura
                   5.3.1. Programación Segura
                           https://es.wikipedia.org/wiki/Programaci%C3%B3n_segura
                           http://www.enlinux.org/programacion-segura-en-entornos-web/
                           https://www.pedroventura.com/php/consejos-para-tener-una-web-segura-en-php/
                           http://azielito.blogspot.mx/2008/03/programacion-segura-con-php-olvidate-de.html
                          
          5.4. Técnicas de Protección
                   5.4.1. Captchas, tipos de ataques
                           https://es.wikipedia.org/wiki/Captcha
                           http://computerhoy.com/noticias/software/que-son-captchas-como-funcionan-10507
                           http://www.desarrolloweb.com/articulos/poner-captcha-en-3-pasos.html
                          
                   5.4.2. Controles anti-spam, ofuscación JavaScript
                           Seguridad Web (822305 bytes)
                           http://librosweb.es/libro/ajax/capitulo_11/ofuscar_el_codigo_javascript.html
                          
                   5.4.3. Herramientas de auditoría
                           http://olea.org/~yuri/propuesta-implantacion-auditoria-informatica-organo-legislativo/ch03s04.html
                           http://insecure.org/tools/tools-es.html
                          
                   5.4.4. Cookies httponly y secure
                           http://www.e-securing.com/novedad.aspx?id=34
                           http://blog.tednologia.com/introduccion-a-cookies-con-php-y-javascript/
                           http://idesweb.es/proyecto/proyecto-prac09-php-cookies-sesiones
                          
                   5.4.5. Web Application Firewalls
                           http://wiki.elhacker.net/seguridad/web/introduccion-a-los-web-application-firewalls-waf
                           http://www.welivesecurity.com/la-es/2013/12/20/web-application-firewall-como-proteger-su-aplicacion-web-con-modsecurity/
                           http://ninjafirewall.com/pro/
                          

Prácticas de Laboratorio (20232024P)
Fecha
Hora
Grupo
Aula
Práctica
Descripción

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación