Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo te facilitaremos un enlace para verlo en diferido
logoImagina
Formación
Modalidades
Próximas Convocatorias
Temario
FAQ
Solicitar información
iconoCurso

Curso de Laravel 11 Avanzado

DISPONIBLE EN MODALIDAD:
aMedidaIcon
Aula Virtual Personalizada
arrowRightDark

Este curso de Laravel Avanzado está diseñado para desarrolladores web y programadores PHP, con experiencia en Laravel, que desean profundizar en el desarrollo de aplicaciones web robustas y escalables. A lo largo del curso, se explorará en detalle la estructura de proyectos Laravel, el enrutado avanzado, la creación de controladores y el uso de plantillas Blade, junto con prácticas recomendadas para mantener un código limpio y mantenible.

Además, el curso abarca técnicas avanzadas como la configuración de Vite, el desarrollo de API RESTful, y la implementación de colas y tareas programadas. También se enseñarán métodos para realizar pruebas unitarias e integradas con PHPUnit y PEST, y se proporcionarán estrategias para el despliegue seguro y eficiente de aplicaciones en producción. Al finalizar, los participantes estarán preparados para construir y mantener aplicaciones Laravel de alta calidad.

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient

Formación en Laravel 11 Avanzado bonificable para empresas

A quién va dirigido nuestro curso de Laravel 11 Avanzado

Desarrolladores web, con experiencia en PHP y Laravel, que deseen profundizar y dominar profesionalmente el desarrollo de aplicaciones web Laravel.

Objetivos de nuestro curso de Laravel 11 Avanzado

  • Profesionalizar la estructura de directorios y carpetas en proyectos Laravel
  • Dominar el enrutado en Laravel, incluyendo rutas web, API, y transmisión en tiempo real.
  • Utilizar Blade para crear plantillas y vistas de manera eficiente
  • Conocer y aplicar conceptos clave de controladores y modelos en Laravel y realiza consultas con Eloquent y QueryBuilder
  • Realizar pruebas unitarias e de integración con PHPUnit y PEST, aprende a trabajar con colas y tareas en Laravel y aplica buenas prácticas

Qué vas a aprender en nuestro curso de Laravel 11 Avanzado

Este curso de Laravel Avanzado está diseñado para desarrolladores web y programadores PHP, con experiencia en Laravel, que desean profundizar en el desarrollo de aplicaciones web robustas y escalables. A lo largo del curso, se explorará en detalle la estructura de proyectos Laravel, el enrutado avanzado, la creación de controladores y el uso de plantillas Blade, junto con prácticas recomendadas para mantener un código limpio y mantenible.

Además, el curso abarca técnicas avanzadas como la configuración de Vite, el desarrollo de API RESTful, y la implementación de colas y tareas programadas. También se enseñarán métodos para realizar pruebas unitarias e integradas con PHPUnit y PEST, y se proporcionarán estrategias para el despliegue seguro y eficiente de aplicaciones en producción. Al finalizar, los participantes estarán preparados para construir y mantener aplicaciones Laravel de alta calidad.

Requisitos de nuestro curso de Laravel 11 Avanzado

  • Tener experiencia desarrollando con PHP (8.2 o superior) y tener familiaridad con líneas de comandos, Laravel 11 y Artisan
  • Tener Visual Studio Code, PHP (8.1, 8.2 o superior), PHP MyAdmin, Composer (versión 2 o superior), NPM (versión 9 o superior),Laravel 11 instalados previamente y acceso a bases de datos MySQL (versión 5 o superior)
  • Tener un equipo Windows (10 o superior) con acceso a un usuario con permisos de instalación y conexión estable a Internet

Temario del curso de Laravel 11 Avanzado

tema 1

Estructura de directorios y carpetas de proyectos Laravel

  • Descripción de Laravel como un framework PHP
  • Archivos de configuración y su importancia
  • Personalización de la configuración
  • Configuración de rutas en Laravel
  • Enrutado RESTful vs. enrutado convencional
  • Almacenamiento de archivos y su gestión en Laravel
  • Uso de sistemas de archivos en la aplicación
  • Importancia de las pruebas en el desarrollo de software
  • Configuración de carpetas y ejecución de pruebas en Laravel
  • Descripción de carpetas como "resources," "public," y "database"
  • Mejores prácticas en la organización de proyectos Laravel
  • Estructura de carpetas recomendada
iconArrowDown
tema 2

Profundizando en el enrutado en Laravel

  • Definición de rutas para páginas web
  • Uso de parámetros en rutas web
  • Creación de rutas para servicios web y API
  • Uso de controladores en rutas API
  • Implementación de rutas de transmisión en tiempo real
  • Uso de Laravel Echo
  • Generación y caché de rutas
  • Listado de rutas disponibles
iconArrowDown
tema 3

Blade

  • Detalles sobre la sintaxis de Blade y las directivas disponibles
  • Creación y uso de plantillas en Blade
  • Ventajas de la reutilización de plantillas
  • Uso de `@yield` y `@include` en Blade
  • Ejemplos de situaciones donde se utilizan
  • Uso de estructuras de control en Blade, como `@if`, `@foreach`, etc.
  • Ejemplos de su aplicación de la aplicación de estructuras de control
  • Importancia del escapado de datos en las vistas Blade
  • Métodos para escapar contenido
  • Cómo agregar comentarios en las vistas Blade
  • Buenas prácticas en la documentación de plantillas
  • Creación y uso de componentes Blade simples
  • Reutilización de componentes en múltiples vistas
  • Creación de componentes Blade con lógica adicional en controladores
  • Casos de uso de componentes con controlador
iconArrowDown
tema 4

Vite

  • Introducción a Vite y su relación con Laravel
  • Configuración de Vite como un entorno de desarrollo
  • Características y ventajas de Vite en comparación con otros sistemas de compilación
  • Uso de Vite para actualizar vistas en tiempo real
  • Ejemplos de aplicaciones en vivo
  • Despliegue de aplicaciones Laravel con Vite
  • Consideraciones para la implementación en producción
iconArrowDown
tema 5

Controladores

  • Definición de controladores en Laravel
  • Uso de controladores para manejar solicitudes HTTP
  • Implementación de operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en controladores
  • Generación automática de controladores CRUD
  • Organización de controladores en grupos
  • Ventajas de la agrupación de controladores
iconArrowDown
tema 6

Modelos

  • Introducción a los de modelos en Laravel
  • Uso de modelos para interactuar con la base de datos
  • Establecimiento de relaciones entre modelos (uno a uno, uno a muchos, muchos a muchos)
  • Uso de relaciones en consultas de Eloquent
iconArrowDown
tema 7

Custom Request

  • Creación de solicitudes personalizadas en Laravel
  • Uso de solicitudes personalizadas para validación
  • Definición de reglas de validación personalizadas
  • Uso de reglas de validación en solicitudes personalizadas
  • Personalización de mensajes de error en solicitudes personalizadas
  • Mejores prácticas para la presentación de mensajes de error
iconArrowDown
tema 8

Migraciones

  • Ejecución de migraciones para crear tablas en la base de datos
  • Comandos relacionados con migraciones en Laravel
  • Reversión de migraciones para deshacer cambios en la base de datos
  • Restricciones al volver atrás migraciones
  • Refresco de migraciones para aplicar cambios en las tablas existentes
  • Uso de comandos de refresco de migraciones
  • Verificación del estado de las migraciones
  • Seguimiento de las migraciones aplicadas
  • Uso de seeders y factories para poblar la base de datos con datos de prueba
  • Generación de datos realistas con factories
  • Consideraciones al trabajar con migraciones en diferentes entornos (desarrollo, pruebas, producción)
iconArrowDown
tema 9

Consultas: Query Builder

  • Introducción a Query Builder y a la generación de consultas SQL
  • Ventajas de Query Builder en comparación con SQL puro
  • Inserción y actualización de registros con Query Builder
  • Ejemplos de operaciones de inserción y actualización
  • Ejecución de consultas SELECT básicas con Query Builder
  • Uso de métodos como `select`, `from`, `where`, etc.
  • Aplicación de filtros en las consultas con Query Builder
  • Uso de operadores de comparación y lógicos
  • Realización de operaciones JOIN para combinar datos de múltiples tablas
  • Ejemplos de JOINs en Query Builder
  • Agrupación de resultados de consulta con `group by`
  • Cálculos y resúmenes en consultas agrupadas
  • Ordenación de resultados de consulta con `order by`
  • Especificación de criterios de ordenación
  • Limitación de resultados de consulta con `limit` y `offset`
  • Paginación de resultados
  • Uso de subconsultas en Query Builder
  • Ejemplos de subconsultas anidadas
  • Ejecución de consultas SQL personalizadas con Query Builder
  • Flexibilidad en la construcción de consultas
iconArrowDown
tema 10

Consultas: Eloquent

  • Introducción a Eloquent como ORM en Laravel
  • Ventajas de usar Eloquent en lugar de Query Builder
  • Comparación de las diferencias entre Eloquent y Query Builder
  • Elección de la mejor opción para diferentes situaciones
  • Realización de consultas SELECT básicas con Eloquent
  • Uso de métodos como `get`, `first`, `find`, etc.
  • Inserción y actualización de registros con Eloquent
  • Uso de los métodos `create`, `save`, `update`, etc.
  • Eliminación de registros con Eloquent
  • Métodos para borrar registros
  • Aplicación de filtros en las consultas Eloquent
  • Uso de `where`, `orWhere`, `whereIn`, etc.
  • Realización de cálculos y resúmenes en consultas con Eloquent
  • Uso de métodos como `sum`, `count`, `avg`, etc.
  • Obtención de objetos relacionados a través de relaciones definidas en modelos
  • Ejemplos de relaciones como "hasOne," "hasMany," "belongsTo," etc.
  • Realización de JOINs con Eloquent para combinar datos de múltiples tablas
  • Uso de relaciones personalizadas
  • Agrupación de resultados de consulta con Eloquent
  • Cálculos y resúmenes en consultas agrupadas
iconArrowDown
tema 11

Middlewares

  • Creación de middleware personalizados en Laravel
  • Registro y asignación de middleware a rutas
  • Aplicación de middleware a nivel global, en rutas específicas o en grupos de rutas
  • Control de acceso y validación con middleware
  • Descripción de middleware predefinidos en Laravel
  • Uso de middleware como "auth," "guest," "throttle," etc.
iconArrowDown
tema 12

Autorización, roles y permisos con Spatie

  • Instalación del paquete Spatie/Permission en Laravel
  • Configuración inicial del paquete
  • Creación de roles y permisos con Spatie/Permission
  • Asignación de permisos a roles
  • Uso de middleware para verificar roles y permisos
  • Protección de rutas y acciones basada en roles y permisos
  • Uso de directivas Blade para mostrar contenido condicional basado en roles y permisos
  • Ejemplos de directivas `@can`, `@role`, etc.
iconArrowDown
tema 13

Livewire

  • Introducción a Livewire y sus características
  • Creación y uso de componentes Livewire
  • Exploración de la reactividad en Livewire
  • Actualización de componentes en tiempo real
  • Carga diferida de componentes Livewire
  • Beneficios de la carga diferida en la velocidad de la aplicación
  • Creación de componentes Livewire con ejemplos
  • Reutilización de componentes en diferentes partes de la aplicación
  • Consideraciones para elegir Livewire o un framework de frontend como React o Vue
  • Casos de uso apropiados para Livewire
iconArrowDown
tema 14

Aplicaciones modularizadas

  • Situaciones en las que se debe considerar la modularización de una aplicación
  • Beneficios de la modularización
  • Cómo estructurar directorios y archivos para módulos independientes
  • Ejemplos de una estructura de módulo
  • Configuración de rutas específicas para módulos
  • Registro de rutas en módulos
  • Creación de controladores y modelos en módulos
  • Relación entre controladores, modelos y rutas en módulos
  • Organización y uso de vistas específicas para módulos
  • Herencia de plantillas entre módulos
  • Configuraciones únicas para módulos
  • Separación de configuraciones entre módulos y la aplicación principal
  • Cómo cargar módulos dinámicamente en la aplicación
  • Ventajas de la carga dinámica de módulos
iconArrowDown
tema 15

Testing Unitario y de Integración: PHPUnit

  • Sintaxis y estructura básica de las pruebas unitarias en PHPUnit
  • Uso de funciones de aserción
  • Configuración de pruebas unitarias en Laravel
  • Creación de bases de datos de prueba
  • Uso de aserciones para verificar resultados de pruebas
  • Ejemplos de aserciones comunes
  • Uso de data providers para realizar múltiples pruebas con diferentes datos de entrada
  • Ejemplos de data providers
  • Medición de la cobertura de pruebas en la aplicación
  • Mejora de la calidad de las pruebas mediante la cobertura
  • Integración de pruebas unitarias con sistemas de integración continua/entrega continua
  • Ejemplos de configuración en herramientas de CI/CD
iconArrowDown
tema 16

Testing Unitario y de Integración: PEST

  • Sintaxis y estructura básica de las pruebas unitarias en PEST
  • Diferencias con PHPUnit en términos de sintaxis
  • Configuración de pruebas unitarias PEST en un proyecto Laravel
  • Uso de facades y métodos específicos de Laravel en PEST
  • Cómo PEST se integra con PHPUnit
  • Uso de PEST junto con pruebas existentes de PHPUnit
  • Agrupación de pruebas en suites y grupos
  • Ejemplos de organización de pruebas en PEST
  • Uso de métodos de aserción específicos en PEST, como `toHave`, `toBe`, `toReceive`, `toReceiveTimes`, etc.
  • Creación de mocks y stubs para objetos y métodos en las pruebas
iconArrowDown
tema 17

Buenas prácticas

  • Importancia de mantener la separación entre Modelo, Vista y Controlador
  • Evitar la lógica de negocios en las vistas
  • Uso de Dependency Injection para inyectar dependencias en las clases
  • Ventajas de la inversión de control
  • Uso de rutas y controladores RESTful para una API coherente
  • Estándares de diseño REST
  • Validación de datos de entrada en las solicitudes
  • Uso de reglas de validación
  • Evolución de la base de datos mediante migraciones
  • Uso de migraciones para cambios estructurales
  • Optimización de la estructura de la base de datos para un rendimiento óptimo
  • Índices, claves foráneas y normalización
  • Prácticas de seguridad en Laravel, como la protección contra ataques CSRF y XSS
  • Uso de middleware de autenticación
  • Documentación de código y API para una comprensión y colaboración eficaces
  • Herramientas de generación de documentación
  • Manejo de errores y excepciones en Laravel
  • Registro de errores y seguimiento
  • Consideraciones de escalabilidad en aplicaciones Laravel
  • Uso de caché y escalabilidad horizontal
  • Importancia de las pruebas unitarias e de integración
  • Estrategias de pruebas y herramientas
  • Proceso de mejora continua en el desarrollo de software
  • Retroalimentación y actualización constante de la aplicación
iconArrowDown
tema 18

Laravel Queues

  • Configuración de colas en Laravel para tareas en segundo plano
  • Ejecución de tareas en cola
  • Implementación de trabajadores para procesar tareas en cola
  • Configuración de trabajadores
  • Creación de trabajos para ser encolados
  • Uso de trabajos para tareas específicas
  • Manejo de reintentos y fallos en tareas en cola
  • Configuración de políticas de reintento
  • Supervisión y monitorización de colas y trabajadores
  • Uso de herramientas de monitoreo
  • Programación de trabajos en Laravel
  • Ejemplos de programación de trabajos periódicos
iconArrowDown
tema 19

Task scheduling

  • Definición de tareas programadas en Laravel
  • Configuración de tareas cron
  • Especificación de la frecuencia de ejecución de tareas programadas
  • Sintaxis de programación de tareas cron
  • Ejecución manual de tareas programadas para pruebas y debugging
  • Uso de comandos Artisan relacionados
  • Notificación de eventos y tareas programadas
  • Uso de notificaciones en tareas programadas
  • Consideraciones y mejores prácticas para ejecutar tareas programadas en entornos de producción
  • Manejo de tareas críticas y planificación en entornos de producción
iconArrowDown
tema 20

Proyecto Final

  • Definición del proyecto
  • Creación de proyecto y Estructuración de directorios y carperas
  • Estableciendo sistema de enrutado y controladores
  • Modelado de datos con Eloquent y gestión de migraciones
  • Plantillas Blade
  • Implementación del proyecto completo
  • Pruebas con Pest
  • Despligue
  • Consejos y recomendaciones a partir de este curso
iconArrowDown