Módulo 1 · Lección 1 10 min

¿Qué es Laravel y por qué usarlo?

Descubre qué es Laravel, su historia, sus ventajas frente a otros frameworks PHP y por qué se ha convertido en el favorito de los desarrolladores.

¿Qué es Laravel?

Laravel es un framework de aplicaciones web de código abierto escrito en PHP. Fue creado por Taylor Otwell y lanzado oficialmente en junio de 2011 con el objetivo de hacer el desarrollo web más elegante, expresivo y divertido. Desde entonces se ha convertido en el framework PHP más popular del mundo, con millones de proyectos en producción y una comunidad enorme y activa.

En términos simples, un framework es un conjunto de herramientas, convenciones y librerías que te permiten construir aplicaciones sin tener que reinventar la rueda cada vez. En lugar de escribir código para conectarte a la base de datos, manejar sesiones de usuario, validar formularios o enviar correos desde cero, Laravel te proporciona todas esas funcionalidades ya listas para usar.

Un poco de historia

Antes de Laravel, los desarrolladores PHP trabajaban principalmente con CodeIgniter, Zend Framework o CakePHP. Taylor Otwell empezó a trabajar en Laravel porque sentía que ninguno de los frameworks existentes cubría todas sus necesidades de forma elegante. Quería un framework que tuviera:

  • Un sistema de autenticación completo integrado.
  • Soporte para localizaciones (i18n).
  • Un ORM (Object-Relational Mapper) potente y fácil de usar.
  • Una forma sencilla de manejar rutas.

El resultado fue Laravel, que tomó muchas ideas prestadas de frameworks de otros lenguajes como Ruby on Rails y ASP.NET MVC, pero las adaptó al ecosistema PHP de una manera única y muy bien pensada.

¿Por qué usar Laravel?

Hay muchas razones por las que Laravel se ha convertido en la opción preferida de tantos desarrolladores. Repasemos las más importantes:

1. Sintaxis elegante y expresiva

Laravel está diseñado para que el código sea legible y parezca casi inglés natural. Compara esto con escribir SQL puro o manejar PDO directamente:

// Sin Laravel (PHP puro con PDO)
$stmt = $pdo->prepare('SELECT * FROM users WHERE active = ? AND age > ?');
$stmt->execute([1, 18]);
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);

// Con Laravel (Eloquent ORM)
$users = User::where('active', true)->where('age', '>', 18)->get();

La diferencia es enorme. El código de Laravel es más corto, más legible y mucho menos propenso a errores.

2. El patrón MVC bien implementado

Laravel sigue el patrón Model-View-Controller (MVC), que separa claramente las responsabilidades de tu aplicación:

  • Model: representa tus datos y la lógica de negocio.
  • View: se encarga de lo que el usuario ve (HTML, CSS).
  • Controller: actúa como intermediario, recibe las peticiones del usuario y decide qué hacer.

Esta separación hace que tu código sea más organizado, más fácil de mantener y más fácil de testear.

3. Eloquent ORM — interacción con bases de datos sin dolor

Uno de los componentes más queridos de Laravel es Eloquent, su ORM (Object-Relational Mapper). Eloquent te permite interactuar con tu base de datos usando objetos PHP en lugar de escribir SQL directamente.

// Crear un nuevo usuario
$user = new User();
$user->name = 'Ana García';
$user->email = 'ana@ejemplo.com';
$user->save();

// O de forma más concisa
User::create([
    'name' => 'Ana García',
    'email' => 'ana@ejemplo.com',
    'password' => bcrypt('micontraseña'),
]);

// Buscar un usuario por ID
$user = User::find(1);

// Obtener todos los usuarios activos
$activeUsers = User::where('active', true)->get();

4. Sistema de migraciones de base de datos

Laravel incluye un sistema de migraciones que te permite versionar los cambios de tu base de datos igual que versionas tu código con Git. Nunca más tendrás que decirle a un compañero “acuérdate de agregar esta columna a la tabla de usuarios”.

// Una migración para crear la tabla de artículos
Schema::create('articles', function (Blueprint $table) {
    $table->id();
    $table->string('title');
    $table->text('body');
    $table->foreignId('user_id')->constrained();
    $table->timestamps();
});

5. Artisan CLI — productividad en la terminal

Laravel incluye una poderosa herramienta de línea de comandos llamada Artisan. Con Artisan puedes generar código automáticamente, ejecutar migraciones, limpiar cachés y mucho más:

# Crear un controlador
php artisan make:controller ArticleController

# Ejecutar migraciones
php artisan migrate

# Arrancar un servidor de desarrollo
php artisan serve

# Ver todas las rutas de la aplicación
php artisan route:list

6. Blade — el motor de plantillas

Las vistas en Laravel se escriben con Blade, un motor de plantillas que te permite mezclar HTML con lógica PHP de forma limpia y sin complicaciones:

@extends('layouts.app')

@section('content')
    <h1>Bienvenido, {{ $user->name }}</h1>

    @if($user->isAdmin())
        <p>Tienes acceso de administrador.</p>
    @endif

    @foreach($articles as $article)
        <article>
            <h2>{{ $article->title }}</h2>
            <p>{{ $article->excerpt }}</p>
        </article>
    @endforeach
@endsection

7. Ecosistema y paquetes oficiales

Laravel no es solo el framework base. Viene acompañado de un ecosistema de paquetes oficiales que cubren las necesidades más comunes:

  • Laravel Sanctum / Passport: autenticación de APIs.
  • Laravel Cashier: integración con Stripe y Paddle para pagos.
  • Laravel Horizon: gestión de colas con Redis.
  • Laravel Scout: búsqueda full-text.
  • Laravel Socialite: autenticación con redes sociales (Google, GitHub, Facebook…).
  • Laravel Telescope: herramienta de debugging y monitoreo.

8. Comunidad enorme y documentación excelente

La documentación oficial de Laravel (laravel.com/docs) es considerada una de las mejores en el mundo del desarrollo web. Es completa, bien escrita, tiene ejemplos prácticos y se actualiza con cada nueva versión.

Además, la comunidad es enorme: hay miles de tutoriales, cursos en video, paquetes de terceros y foros donde encontrar ayuda. Laracasts (laracasts.com) es el recurso en video más popular para aprender Laravel.

¿Para qué tipos de proyectos es ideal Laravel?

Laravel es una excelente opción para:

  • APIs REST: Laravel tiene excelente soporte para construir APIs que alimenten aplicaciones móviles o de front-end.
  • Aplicaciones web tradicionales: blogs, tiendas, sistemas de gestión, plataformas educativas.
  • Aplicaciones SaaS: por sus capacidades de autenticación, manejo de suscripciones y multi-tenancy.
  • Proyectos que escalan: Laravel está diseñado para crecer, con soporte nativo para cachés, colas de trabajo y más.

Laravel vs otros frameworks PHP

CaracterísticaLaravelSymfonyCodeIgniter
Curva de aprendizajeMediaAltaBaja
EcosistemaMuy ricoRicoLimitado
ORM integradoSí (Eloquent)Doctrine (separado)Limitado
CLI incluidoArtisanConsoleLimitado
Popularidad#1 en PHP#2 en PHPMenor

Conclusión

Laravel es mucho más que un framework; es un ecosistema completo que te permite desarrollar aplicaciones web modernas de manera rápida, organizada y con código de alta calidad. Si ya conoces PHP y quieres dar el siguiente paso, Laravel es sin duda la mejor elección.

En las próximas lecciones aprenderás a instalarlo y a crear tu primera aplicación desde cero. ¡Vamos allá!

Quiz

Pon a prueba lo aprendido

Responde las preguntas para comprobar que has entendido los conceptos clave.

1. ¿En qué lenguaje de programación está escrito Laravel?

2. ¿Qué patrón arquitectónico sigue Laravel por defecto?

3. ¿Quién creó Laravel?