Comentarios sobre Curso PHP5 Profesional - UML, Patrones de Diseño, PHP5 POO y Zend Framework - Online
-
Objetivos del curso
Este curso entrega los conceptos teóricos y prácticos de la orientación a objetos, como técnica enfocada al diseño con UML y Patrones de Diseño. Desarrollar aplicaciones con la última versión del lenguaje que más expectativas ha generado en Internet: PHP5. El conocimiento del lenguaje se verá enriquecido con el uso de herramientas como PDO con Mysql, pensado para ser un conjunto de componentes reutilizable y el patrón de Arquitectura MVC, implementando una capa de abstracción que separa la lógica de la presentación y finalmente desarrollar aplicaciones web empresariales haciendo uso de Zend Framework.
-
Curso dirigido a
Profesionales del área de ingeniería informática con la intención de especializarse y comprender las características fundamentales de la orientación a objetos, además representar modelos de software orientado a objetos a través de diagramas UML. Además con la intención de especializarse en el desarrollo de aplicaciones web con PHP5 a través de un enfoque actualizado, con un nivel más cercano a la Ingeniería de Software y finalmente con la intención de especializarse en el desarrollo de aplicaciones para Internet implementando el desarrollo en 3 capas MVC con Zend Framework.
-
Contenido
- Introducción al paradigma, análisis y diseño orientado a objetos
- Introducción UML
- Introducción Programación Orientada a Objetos
- Conceptos básicos: objeto, atributo, método, miembro, mensaje, clase, comunicaciones y eventos.
- Características de la Programación Orientada a Objetos: Abstracción, Encapsulamiento, Principio de Ocultación, Herencia, Polimorfismo
- Principios de Diseño (DOO)
- Utilización de diagramas UML para el análisis de requisitos: casos de uso y secuencia.
- Diagramas de análisis UML: clases, paquetes, actividad, etc.
- Diseño y Paradigma Orientado a Objetos
- Diagramas UML de diseño: clases, sequencia, despliegue, componentes, paquetes etc
- Patrones de Diseños: Composite, Decorator, Factory Method, Singleton, Facade, Observer, Iterator
- Introducción PHP5
- Historia de PHP.
- Características de PHP 5.
- Interfaces de Desarrollo.
- Cómo obtener e instalar el software necesario.
- Principios de Diseño (DOO).
- Introducción a los Objetos
- Cómo Pensar en Objetos
- Lenguaje PHP 5
- Tipos de entidades PHP: Clases, Clases Abstractas, Interfaces.
- Definición de clases.
- Declaración de atributos y métodos concretos.
- Uso de comentarios.
- Variables, identificadores, Tipos de datos, Constantes
- Variables predefinidas GET, POST, COOKIE, SESSION, etc
- Operadores: Aritméticos, lógicos y de comparación.
- Control de flujo: if-else-else if, switch-case-break-default, while, do-while, for, foreach
- Instanciación mediante el operador new.
- Manejo de strings y su API.
- Arreglos y su API array.
- Funciones
- Programación Orientada a Objetos PHP 5
- Introducción
- Las Bases
- Auto carga de Objetos
- Constructores y Destructores
- Visibilidad (private, protected, public)
- Alcance del operador de resolución (::)
- La palabra reservada ‘Static’
- Constantes De la Clase
- Herencia: Generalización versus Especialización
- Herencia: Extensión de Clases.
- Herencia: Clases Abstractas
- Interfaces de Objetos
- Sobrecarga
- Interacción de Objetos
- Polimorfismo en herencia, interfaces, sobre escritura de métodos y sobrecarga
- Patrones de Diseño (Singleton, Factory, Decorator y Observer)
- Métodos mágicos
- La palabra reservada ‘Final’
- Clonado de Objetos
- Comparación de Objetos
- Reflección
- Type Hinting
- Agrupaciones de objetos Standard PHP Library SPL
- Jerarquía de Interfaces SPL
- ArrayObject, DirectoryIterator, SplObjectStorage, SplFileObject, ArrayIterator, Countable etc.
- Colecciones concretas
- Interfaz Iterator.
- Manejo de Excepciones
- Conceptos Generales
- Clases Exception
- Bloques try-catch
- Relanzar excepciones
- Crear nuevas excepciones, herencia y throw
- PDO (interfaces para acceder a bases de datos en PHP)
- Introducción PHP Data Object.
- Constantes predefinidas
- Conexiones y Conexión Manager
- Transacciones y de auto-commit
- Declaraciones preparadas y procedimientos almacenados
- Errores y manejo de errores
- PDOStatement
- PDOException
- PDO Drivers
- Conexión y operaciones en Mysql
- MVC – Modelo, Vista y Controlador
- Introducción
- Cómo se representan
- Modelo: La lógica de datos
- Vista: Presentación de los datos, la interfaz gráfica de usuario
- Controlador: Este responde a eventos, usualmente acciones del usuario
- Desarrollar un sistema de ABM (Altas, Bajas y Modificaciones) con Mysql
- Introducción Zend Framework
- Que es un Framework
- Por qué ZF.
- Simplicidad.
- Web 2.0
- Arquitectura
- Componentes ZF
- Instalación y Bootstrap
- Generación de código RAD con Zend Tool
- Línea de comandos usando Zend Tool
- Configuración de Zend Application
- Bootstrap de arranque
- Zend Config
- Zend Controller
- Despachador de peticiones
- Modelo, Vista y Controlador
- Controlador y Acción
- Clase Action Controller
- Objetos Response y Request
- Parámetros del request
- Controller Plugins
- Action Helper
- Action Forward y redirect
- Action View Helper
- Vista
- Zend View
- View Helper
- Parámetros de vistas
- Formularios y Validaciones
- Zend Form (Objeto Formulario)
- Zend Element (Objeto Elemento)
- Decoradores
- Clases de Validaciones
- Clases de Filtros
- Modelo (Base de Datos)
- Adaptadores
- Instanciar Adaptador
- Establecer una conexión: cadena de conexión (URL), clases Zend_Db y Factory
- Sentencias SQL a través de objetos Statement
- Manejo de Resultados
- Zend Db Table como ORM
- Zend Db Select para ejecutar consultas SQL
- Table Data Gateway y Row Data Gateway
- Clases de Modelos DAO
- Desarrollo de CRUD: Funcionalidades básicas de un sistema: ABMs
- Autenticación y Sesiones
- Introducción.
- Zend Session
- Adaptadores de autenticación
- Credenciales de autorización
- Login de Usuarios
- ACL Lista de control de acceso
- Roles y recursos (privilegios)
- AJAX
- AJAX usando ZendX_JQuery
- Autocomplete
- Date Picker
- Diálogo Modal
- Etc...
- Internacionalización
- Zend Date
- Zend Locale
- Zend Translate
- Zend Currency
- Zend Mail