Hoy en este nuevo videotutorial de Laravel, voy a hablarles de los Service Providers.
Para configurar diferentes implementaciones, en la clase anterior agregamos un condicional (IF) que nos permitía asignar un repositorio diferente para el entorno de pruebas y otro para los otros entornos:
En la clase anterior les expliqué cómo podemos hacer que nuestros sistemas sean más flexible con el uso de interfaces.
En teoría, una interfaz, en la programación orientada a objetos, nos permite que podamos crear diferentes implementaciones de una clase o componente, por ejemplo diferentes implementaciones de un repositorio.
Otros tutoriales por lo general se detienen aquí, porque en la práctica no es tan sencillo, pero sí es posible y yo hoy se los demostraré con el siguiente videotutorial, donde vamos a crear un repositorio de secciones que va a usar colecciones (arrays) en vez de bases de datos y Eloquent. Pero antes de comenzar veremos un par de conceptos importantes:
Una interfaz en la vida diaria es una manera común de usar cierto tipo de objetos, por ejemplo esperamos que todos los autos, sin importar su marca, modelo, año o tipo, tengan ciertos elementos como son un volante, pedales para el acelerador y el freno, etc.
En informática este tipo de conceptos se aplica a ciertos dispositivos que aunque puedan ser diferentes entre sí comparten interfaces comunes como son los puertos de acceso (USB, HDMI, etc.)
En la programación orientada a objetos las interfaces nos permiten crear objetos aún más flexibles, dado que si un controlador necesita un repositorio, podemos solicitar una interface en vez de una implementación en concreta, vean el siguiente ejemplo:
Vamos a refactorizar nuestro módulo de secciones una vez más, y esta vez será una refactorización más fuerte porque vamos a eliminar la carpeta de modelos de Laravel (models/), y vamos a crear una nueva estructura para nuestra aplicación basada en PSR-4. Para ello comenzaremos una refactorización donde extraeremos lógica de nuestros controladores y modelos a otras capas, comenzando así a liberar de responsabilidades a nuestras clases, cumpliendo con el Singe Responsability Principle, que es la base de los principios básicos de la programación orientada a objetos, conocidos como SOLID.
En este nuevo videotutorial vamos a aprender cómo paginar los items del módulo de secciones con Laravel y, por supuesto, crearemos una nueva prueba funcional con Codeception.
La paginación puede ser un feature muy difícil de lograr con otros frameworks como Codeigniter, o peor aún si estamos trabajando con PHP plano. Pero con Laravel es muy fácil y uno de mis features favoritos.
Básicamente con Eloquent, el ORM de Laravel o si usamos Fluent, el constructor de queries de Laravel simplemente tenemos que hacer lo siguiente:
En esta segunda parte, les voy a explicar cómo convertir el código repetitivo que hicimos en la clase pasada sobre filtros en Laravel, en un código mucho más fácil y rápido de implementar e incluso de reusar en otros módulos. Esto lo haremos con una refactorización basada en el principio DRY (don’t repeat yourself – no te repitas).
Aprenderemos también cómo crear un modelo «Base» de Eloquent donde podremos escribir métodos que puedan ser usados en múltiples modelos, además les explicaré cómo llamar a métodos en PHP de manera dinámica (con nombres variables), entre otros trucos avanzados de PHP orientado a objetos. Espero disfruten este nuevo videotutorial de Laravel:
Hoy vamos a aprender cómo eliminar una sección con Laravel, también seguiremos aprendiendo a escribir pruebas funcionales con Codeception, veremos un nuevo método «dontSeeRecord» y utilizaremos un formulario para hacer el llamado al método «destroy» de nuestro Resource controller (usando DELETE como método dentro del form).
También les hablaré un poco del principio DRY (Don’t repeat yourself o «No te repitas«) que nos explica que debemos evitar la duplicación de código tanto como sea posible, para ello haremos 3 pequeñas refactorizaciones en nuestro controlador, en la vista (donde aprenderemos a usar «@include» para incluir partials dentro de Blade) y en la prueba (donde aprenderemos cómo escribir métodos personalizados en Codeception)
En este nuevo videotutorial de Laravel, aprenderemos cómo actualizar un registro usando Eloquent, también aprenderemos a utilizar Form::model para completar los campos de los formularios en Blade, usaremos rutas con nombres en Laravel (named routes), y por supuesto vamos a probar nuestro módulo creando otra prueba funcional con Codeception.
En este nuevo video tutorial, aprenderemos cómo mostrar el detalle de un registro con Laravel, escribiremos el código para el controlador, la vista con Blade y por supuesto escribiremos una prueba funcional con Codeception, para continuar con el proceso de desarrollo orientado a pruebas (Behavior Driven Development).
Styde usa cookies para guardar tus preferencias y para seguimiento anónimo AceptarLeer más
Privacy & Cookies Policy
Privacy Overview
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.