Dependencias y código acoplado

Cuando trabajamos en programación orientada a objetos es normal encontrarse con clases y objetos que interactuan y dependen unos de otros, la idea de ello es aprovechar al máximo las virtudes de cada uno y evitar reescribir código innecesario.

Sin embargo esto nos puede llevar a código que esté innecesariamente «acoplado», es decir objetos y clases que no puedan funcionar sin la presencia de otros objetos y clases.

Esto trae varios problemas, por un lado el código es menos reusable y por otro lado es más difícil de probar y depurar.

En la lección de hoy veremos un ejemplo de esto, mientras avanzamos en la creación de algunas clases base que nos permitirán más adelante comparar código y aprender sobre la inyección de dependencias y otros conceptos más avanzados.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Creación de un nuevo proyecto con Composer y PHPUnit

¡Hola! Bienvenido al nuevo curso Crea Componentes para PHP y Laravel.

Sé que estás impaciente en aprender cómo crear componentes, subirlos a packagist, obtener miles de descargas y estrellas en GitHub y hacerte famoso, nosotros también, pero antes de comenzar, hay muchos conceptos que necesitarás aprender, puesto que no sólo son necesarios para crear un buen componente, sino que también te ayudarán muchísimo a entender mejor Laravel y otros frameworks o herramientas con las que desarrollas a diario.

Quizás aún arrugas la cara cuando oyes la palabra “Facade” o los términos “inyección de dependencias” o “pruebas unitarias” te producen dolor de cabeza. No te preocupes, después de terminado este curso esos y muchos otros paradigmas avanzados te serán familiares y tu nivel como desarrollador aumentará muchísimo.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Una semana muy importante para la comunidad de PHP

elephpant_laravel

Esta semana fue muy importante para todos los que usamos PHP. ¿Por donde comenzar?

PHP cumplió 20 años

Desde que Rasmus Lerdof, lanzó PHP como el acrónimo de «Personal Home Page Tools» hasta hoy en día que significa «PHP Hypertext Pre-processor», PHP ha cambiado muchísimo, de hecho creo que necesitamos un nuevo acrónimo, porque con PHP ya no nos encargamos de pre procesar HTML directamente, delegamos esa tarea a Smarty, Twig, Blade y otros motores de plantilla, construidos en PHP.

Ver post

Combinar HTML y PHP sin morir en el intento

combinar-html-y-php

Todos amamos las sintaxis que nos provee el motor de plantillas Blade para escribir nuestras vistas, y no es el único, hay otros motores de plantillas geniales como Twig o Smarty, escritos en y para PHP.

Pero imaginemos por un momento que tienes un proyecto que no está usando ningún framework: quizás te toque escribir código para WordPress como a mí, o editar algo de «legacy code» de un proyecto, e instalarle Smarty o algún otro template engine no es una opción viable. Ver post

Organizar código PHP con CS Fixer siguiendo los estándares PSR

Un código desordenado siempre «hablará mal de un programador». Se torna muy difícil encontrar un error dentro de un montón de líneas de código que no siguen ningún estándar o estructura lógica. Es fácil programar sin pensar que otro programador  (o tú mismo en un futuro) necesitará agregar nuevas sentencias y que gastará el doble del tiempo o más tan sólo en entender el código.

Ver post

Encapsulación y programacion orientada a objetos con PHP

php-poo-encapsulacion

Encapsulación

Se refiere a la capacidad de agrupar y condensar distintos elementos en un entorno con límites bien definidos. ¿Cómo lo relaciono a la POO? De manera automática, primero generalizamos —abstracción— y luego establecemos los límites —encapsulación. Sí, la encapsulación está ligada a la abstracción. Ver post

Abstracción con PHP y programación orientada a objetos

php-poo-abstraccion

La Programación Orientada a Objetos (Object Oriented Programming) no es un lenguaje más, sino una forma o enfoque diferente de programación; nuestros programas ya no están conformados por un conjunto de funciones, como se hizo por un largo tiempo, sino por objetos que colaboran entre sí para realizar tareas distintas.

Ver post

Envio de correos con Mailgun en laravel 5

mailgun

El envío de correos electrónicos es una funcionalidad que no puede faltar en una aplicación web, ya sea para confirmar el registro de un nuevo usuario, enviar un boletín de noticias o notificar sobre alguna transacción en la plataforma.

En la actualidad existen muchas plataformas especializadas en realizar estas actividades que permiten manejar grandes campañas de email marketing, ofreciendo ciertas métricas de gran utilidad.

Mailgun  es un servicio de email para desarrolladores que cuenta con una poderosa Api que facilita su uso y acceso desde cualquier plataforma de desarrollo.

Ver post

Uso de métodos mágicos en PHP

metodos-magicos-php

¿Alguna vez te has preguntado cómo funcionan ORMs como Eloquent? Eloquent y otros ORMs en PHP hacen uso de algo llamado Métodos mágicos

Los métodos mágicos mágicos los provee PHP y nos permiten realizar ciertas tareas orientadas a objetos.

Los métodos mágicos identifican por el uso de dos guiones bajos “__” como prefijo, y funcionan como interceptores que se llaman automáticamente cuando ocurre una condición.

Ver post

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Suscríbete a nuestro boletín

Recibe consejos útiles, promos y múltiples recursos directamente en tu correo.

Tu nombre y correo serán enviados directamente a MailChimp. No compartiremos tus datos con otras empresas.