Symfony: tutorial 0: preparando el espacio de trabajo

Herramientas para desarrollar en Symfony

Como buen apasionado del desarrollo de aplicaciones web, estaba espectante esperando la nueva versión de Symfony 4. Ahora tenemos una nueva versión orientada a microservicios, en la que te vas construyendo tu propio framework poco a poco, con los componentes que necesites. Esto quiere decir que no te instalas el framework completo cuando empiezas a trabajar, sino que poco a poco vas añadiendo los componentes.

Gracias a Composer vas acoplando los componentes, ya sean del propio Symfony, o sean componentes externos al framework. Esto hace a su vez que la curva de aprendizaje no sea tan pronunciada para los novatos.

Lo poco que he podido curiosear me ha encantado. Estoy como un niño con juguete nuevo. Tanto así, que he decidido hacer una serie de tutoriales para principiantes, y no tan principiantes.

Herramientas

Comencemos por preparar el entorno de trabajo. Voy a citar las herramientas que uso, y por supuesto también recomiendo para estos trabajos. No puedo extenderme mucho porque si no las conoces, deberás de invertir tiempo para instarlártelas. Si ya tienes las tuyas, y se adapatan bien a este tipo de desarrollos, úsalas:

  • Sistema operativo: recomiendo GNU/Linux (Ubuntu, Ubuntu Mate o derivado de Debian), es lo que uso tanto en lo personal como en lo profesional. Tanto para escritorio de trabajo como para entorno de servidor 😉
    https://ubuntu-mate.org/
  • Navegador: también recomiendo lo que yo uso, el Firefox Developer Edition, que cada día va mejor y más rápido, con muchas herramientas para avanzar mejor en los desarrollos web:
    https://www.mozilla.org/es-ES/firefox/developer/
  • Entorno de desarrollo, IDE o editor: cómo no, el Atom Editor: https://atom.io/ con los paquetes para desarrollar aplicaciones web funciona muy bien.
  • PHP: imprescindible ya que es requisito de Symfony tener la versión 7:
    http://php.net/
  • Composer con su Packagist: si no conoces Composer es imprescindible que te pongas al día con esto. Composer es el manejador de dependencias que vamos a usar en la serie de tutoriales. Por explicar un poco, Composer es una herramienta que te ayuda a añadir, actualizar y borrar los componentes de tu aplicación web. Esto antaño era un trabajo complicado bajando ficheros comprimidos de cada cosa, enlazando todo a nuestra manera, etcétera. Todo esto se ha terminado, si no conoces Composer no sigas, debes antes conocerlo:
    https://getcomposer.org/
    https://packagist.org/

Si ya estas preparado vamos adelante, agárrate que vienen curvas, trataré de ir al grano.

Hola mundo

Insisto, si el paso anterior no está claro no sigas. Si no tienes las herramientas instaladas no sigas. Debes empaparte de qué son, para qué sirven y cómo funcionan antes de seguir.

Con todo lo anterior funcionando en tu PC, instalarte un proyecto nuevo es tan sencillo como ejecutar desde línea de comandos:

composer create-project symfony/skeleton symfony-tutorial-0

Esperas a que todo se configure y entras dentro del directorio nuevo:

cd symfony-tutorial-0

Para la serie de turoriale vamos a tratar de ir construyendo ejemplos sobre webs así que instalamos el servidor:

composer require server --dev

..y lo arrancamos:

php bin/console server:start

Ya sólo nos queda acceder con el navegador a:

http://localhost:8000

..para ver el nuevo proyecto ya arrancado y listo para programar.

symfony-tutorial-0

Sólo nos queda poner el clásico ¡Hola mundo! en el fichero para verlo en la web. Para esto tenemos que crear el primer controlador, pero como vamos a preferir usar las anotaciones en nuestros proyectos para manejar las URLs que haya, añadimos el paquete de anotaciones así:

composer require annotations

Ahora creamos finalmente nuestro controlador para la página de inicio en src/Controller/MyIndexController.php

<?php

namespace App\Controller;

use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;

class MyIndexController
{
    /**
     * @Route("/")
     */
    public function home()
    {
        return new Response(
            '<html><body>¡Hola mundo Symfony 4!</body></html>'
        );
    }
}

Fíjate que gracias a las anotaciones podemos organizar las URLs fácilmente.

Ahora sí que podemos dar por terminado nuestro hola mundo Symfony. En muy pocos minutos ya tienes arrancado un proyecto en tu PC listo para comenzar a trabajar. En el próximo tutorial seguiremos avanzando sobre el resto de componentes.

Un saludo.

Compartir..

Dejar un comentario

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

cinco × 1 =