No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Repaso final

11/14
Recursos

Aportes 12

Preguntas 4

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Repaso:

Todo arranca en el index.php, este se encarga de llamar a nuestra clase Request, esta clase a su vez, se encarga de cargar el controlador necesario de manera dinámica dependiendo de lo que el usuario haya pasado por la URL, ya que logró identificar cuál es el controlador que tiene que llamar, simplemente lo llama, y esta clase está esperando que dicho controlador retorne una instancia de Response para poder mandar la vista.

Response por su parte, dependiendo de lo que hayas establecido en el controlador, se encarga de buscar cuál es la vista que tiene que envíar y cargarla en una variable, para posteriormente imprimir esa variable dentro del template y así cargar de manera dinámica las páginas que van a conservar una estructura HTML en común siempre. Obviamente nuestro controlador retornará una instancia de Request indicando cuál es la vista que queremos.

Y para facilitar todavía más las cosas, podemos usar helpers que se encarguen del “trabajo sucio”, así hacemos código más legible y bonito 😄

Me encanta la metodología de esta serie de cursos en la que explican el porqué de cada cosa. Yo no era muy fan de PHP pero con esta ruta si que me ha gustado bastante!

Me parece una mala práctica capturar excepciones genéricas porque silenciamos errores… puede estar pasando cualquier cosa con nuestro sistema y no vamos a saber que es lo que se rompió hasta que quitemos ese bloque try/catch… Es bueno capturar excepciones, pero tenemos que saber que excepción es la que estamos capturando para poder tratarla específicamente, si el sistema se rompe por algo que no sabemos que es, pues hay que dejar que se rompa para poder arreglarlo, no silencien errores, captúrenlos.

Modelo-Vista-Controlador de Laravel

Agregue una pequeña validación para comprobar que la clase existe, si no es el caso, redirige a un controlador especifico para la página de error 404.

    public function send(){
        $controller = $this->getController();
        $method = $this->getMethod();

        if (class_exists($controller)) {
            $controller = new $controller;
        }else{
            $controller = "App\Http\Controllers\Notfoundcontroller";
        }
        // Disparar y ejecutar un controlador 
        $response = call_user_func([
            new $controller, 
            $method
        ]); 
        // Validación extra para asegurar que la respuesta sea una instancia de la clase que estamos esperando 
        try {
            if ($response instanceof Response) {
                $response->send();
            } else {
                throw new \Exception("Error Processins Request");
            }
        } catch (\Exception $e) {
            echo "Details {$e->getMessage()}";
        }
    }

Excelente resumen, muy practico… por la excelente clase…

Tenía mucho tiempo sin entender precisamente como era el flujo de este tipo de frameworks hasta ahora, de verdad este curso me ha ayudado a despejar muchas dudas.

No sé si en algún punto de los cursos más avanzados se explique más a profundidad cuestiones como los “namespaces” o la cuestión del “use” que creo que para alguien que viene completamente desde cero podría ser confuso no saber cual es su origen o su uso realmente.

Excelente, aunque agregaría que durante el desarrollo es fundamental loguear también el stacktrace.

Buen resumen final.

Excelente

Excelente repaso

tengo el siguiente error The requested resource / was not found on this server.