Curso de Programación en PHP avanzada (Programa detallado)

Objetivo:

  • Ampliar el conocimiento del lenguaje PHP y de sus estructuras.
  • Comprender el funcionamiento de la programación orientada a objetos en PHP.
  • Estructurar de manera adecuada nuestro código, separando el diseño de la funcionalidad y controlar versiones en diferentes idiomas.
  • Implementar funcionalidades habituales en la programación web tales como web services, single sign-ons o llamadas ajax entre otros.
  • Localizar y utilizar librerías de terceros para utilizar en nuestros desarrollos.

Dirigido a:

Este curso está dirigido a personas que, teniendo unas nociones básicas de PHP, deseen ampliar sus conocimientos.

Requisitos:

Es necesario que el alumno cuente con conocimientos básicos de PHP para que pueda comprender la mecánica de los códigos propuestos.

Del mismo modo, es recomendable para la comprensión de los contenidos del curso, que el alumno cuente con unos conocimientos básicos de HTML y de bases de datos MySQL.

Para la realización del curso es necesario que el alumno tenga instalado el siguiente software en su equipo:

  • Editor de texto plano (Recomendamos Notepad++).
  • Servidor web (Recomendamos Apache).
  • Módulo de PHP para el servidor web.
  • Servidor MySQL o MariaDB

Todo el software es gratuito y en las primeras unidades de los cursos se proveen los enlaces de descarga al mismo y se explica mediante vídeos cómo instalarlo y configurarlo.

Programa del curso

1.- Introducción y software necesario

Objetivo

Al finalizar esta unidad el alumno conocerá el entorno de trabajo y el software que emplearemos durante todo el desarrollo del curso.

Contenido

  1. Introducción y software necesario
    1. Uso profesional de PHP
    2. Versiones de PHP
    3. El servidor de desarrollo
    4. Editor de texto para PHP
    5. Cliente de MySQL
    6. Hemos aprendido 
  2. Ejercicios
    1. Ejercicio 1: Descarga e instala XAMPP
    2. Ejercicio 2: Descarga e instala Notepad++
    3. Ejercicio 3: Descarga e instala phpMyAdmin

2.- Programación orientada a objetos

Objetivo

Al finalizar esta unidad el alumno será capaz de definir clases y crear objetos. Del mismo modo, será capaz de crear clases que hereden de otras clases y conocerá el ámbito de las variables y funciones contenidas en las mismas.

Contenido

  1. Programación orientada a objetos
    1. Clases y objetos
    2. Ámbito de los métodos y propiedades de una clase
    3. Constructores y destructores
    4. Herencia de clases
    5. Hemos aprendido 

3.- Extensiones y librerías

Objetivo

Al finalizar esta unidad el alumno será capaz de buscar, instalar y activar extensiones de PHP, así como de utilizar librerías de terceros en sus desarrollos.

Contenido

  1. Extensiones y librerías
    1. Extensiones
    2. Librerías
    3. Hemos aprendido

4.- Tratamiento de imágenes

Objetivo

Al finalizar esta unidad el alumno será capaz de realizar un procesamiento de imágenes completo, aplicando todo tipo de transformaciones a sus recursos gráficos y generando archivos de imagen o salidas por pantalla en diferentes formatos (JPEG, PNG, GIF o BMP).

Contenido

  1. Tratamiento de imágenes
    1. La biblioteca GD
    2. Generar un recurso de imagen
    3. Exportar nuestro recurso de imagen
    4. Funciones de tratamiento de imágenes
    5. Procesar archivos de imagen enviados mediante un upload
    6.  Caché de las imágenes
    7. Hemos aprendido

5.- Archivos en formato PDF

Objetivo

Al finalizar esta unidad el alumno será capaz de generar todo tipo de documentos en formato PDF utilizando la librería FPDF.

Contenido

  1. Archivos en formato PDF
    1. Introducción
    2. La librería FPDF
    3. Descarga e instalación
    4.  Generando nuestro primer PDF
    5. Configurando el entorno
    6. Añadiendo contenido
    7. Estilos de celda
    8. Recursos gráficos
    9. Configuración de página
    10. Cabecera y pie de página
    11. Hemos aprendido

6.- Single Sign-On

Objetivo

Al finalizar esta unidad el alumno será capaz de crear un sistema de autenticación entre dos aplicaciones web independientes para que el usuario pueda identificarse en ambas con una solo login.

Contenido

  1. Single Sign-On
    1. ¿Qué es SSO?
    2. Proveedor de identidad: Crear el enlace
    3. Proveedor de servicio: Implementar el endpoint
    4. Securizando el SSO
    5. Otras opciones de implementación
    6. Hemos aprendido

7.- Web services

Objetivo

Al finalizar esta unidad el alumno será capaz de crear un web service utilizando REST API. Del mismo modo también será capaz de crear aplicaciones web que consuman web services de terceros.

Contenido

  1. Web services
    1.  ¿Qué es un web service?
    2. Crear un web service básico
    3. REST
    4. Hemos aprendido

8.- Lógica de negocio y presentación

Objetivo

Al finalizar esta unidad el alumno será capaz de separar por completo la lógica de negocio de la presentación en sus aplicaciones web, utilizando tanto soluciones propias como motores de plantillas ya existentes.

Contenido

  1. Lógica de negocio y presentación
    1. Separando la lógica de negocio de la presentación
    2. Motor de plantillas predesarrollado: Smarty
    3. Hemos aprendido 

9.- Modelo Vista Controlador

Objetivo

Al finalizar esta unidad el alumno será capaz de estructurar el código de sus aplicaciones web utilizando el patrón Modelo Vista Controlador.

Contenido

  1. Modelo Vista Controlador
    1. Ciclo de vida del patrón MVC
    2. Estructura de la aplicación web
    3. Controlador
    4. Modelo
    5. Vista
    6. Hemos aprendido