Estructura básica de un proyecto de Laravel

Estructura básica de un proyecto de Laravel

¡Hola a todos! ¿Cómo están? ¡Bienvenidos nuevamente al curso de Laravel 10! En esta clase, exploraremos la estructura básica de un proyecto de Laravel 10 y cómo se organiza aplicando el patrón de arquitectura Modelo-Vista-Controlador (MVC). Es importante mencionar que Laravel 10 va más allá de ser solo un framework MVC.

¡Empecemos!

Estructura de directorios de Laravel

Laravel utiliza la arquitectura MVC (Modelo, vista, controlador), para la separación lógica de modelo del negocio, con la presentación de las vistas y formularios del cliente. Presenta una estructura de Laravel por defecto para empezar a trabajar en tus proyecto de software.

Por ahora veremos la estructura de carpetas de Laravel más importantes que componen un proyecto de Laravel.

Desplegar tu proyecto Laravel a producción

Adquiere la guía en formato PDF

Estructura de directorios Laravel

El directorio Public

El directorio “Public” es el punto de entrada de la aplicación. Aquí se encuentran los archivos index.php y .htaccess que manejan las solicitudes HTTP y redirigen el tráfico a la aplicación.

Los controladores (Controller)

Los controladores (Controller), es aquí donde se crea la lógica del negocio y controles de la aplicación. Los controladores son clases que gestionan las solicitudes HTTP entrantes y coordinan las acciones de la aplicación. Cada método en un controlador suele corresponder a una acción específica que se realiza en la aplicación. Se encuentran en el directorio app/Http/Controllers.

Los modelos (Models)

Los modelos (Models) son clases que representan tablas en la base de datos y se utilizan para interactuar con los datos de la aplicación. Laravel utiliza el patrón ORM (Object-Relational Mapping) y proporciona un sistema de mapeo de objetos llamado Eloquent ORM. Cada modelo suele estar asociado a una tabla en la base de datos y permite realizar consultas y operaciones en la tabla utilizando métodos proporcionados por Eloquent así evitar escribir consultas SQL. Se encuentran en el directorio app/Models.

Las vistas (View)

Las vistas (View), es un componente fundamental en la estructura de  Laravel. Es la presentación de la aplicación al usuario final, contiene recursos como vistas, archivos de lenguaje, archivos de estilo y diseño entre otros. Las vistas en Laravel utilizan el potente motor de plantillas Blade que son nombrados con la extensión  .blade.php. Se encuentran en el directorio app/resources.

La base de datos (database)

La base de datos (Database), es el directorio donde se encuentra la base de datos y la migración de esquemas. Las migraciones son una característica poderosa de Laravel que permite controlar los cambios en la estructura de la base de datos de manera controlada y versionada lo que facilita el mantenimiento de la base de datos a lo largo del tiempo. Se encuentran en el directorio app/database.

Las rutas (route)

Las rutas (Route), determinan cómo se manejan las solicitudes HTTP entrantes y qué acciones o controladores se deben ejecutar para responder a cada solicitud (Las rutas permiten establecer una relación entre una URL específica y una acción o controlador que se debe ejecutar cuando se accede a esa URL). Se encuentran en el directorio app/routes.

Para empezar a desarrollar tu proyecto en Laravel no existe un orden específico; de hecho puedes empezar por donde más lo prefieras, empezando con las vistas y rutas terminando con la base de datos o viceversa. También, puedes comenzar desde los modelos, base de datos, seguir con los controladores y terminar con las vistas.

En este curso empezaré por la base de datos,  modelos, controlador para terminar con las vistas. Ya estamos listos para empezar a tocar código y construir nuestras aplicaciones, nos vemos en la siguiente clase Base de datos y migraciones en Laravel.

Saludos y éxitos.

Victor Peña

Victor Peña

Desarrollador de software Backend Developer, experto en Laravel Framework, PHP, JavaScript y MySQL. Creador de contenidos de emprendimiento y desarrollo de software.

2 comentarios en “Estructura básica de un proyecto de Laravel”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *