php

Recursos de programación de php
Apart of being Technical Director at XING, I help companies with improving their legacy apps. All these projects share some similar patterns: coupled code and lack of unit testing. In this talk Carlos he'll live code, no slides. Given code from one of this projects that is written directly into the web controller with no unit testing, He'll refactor it extracting the Business Logic into Command Handlers. If we are good in time, we'll include Domain Events. Join us! It will be fun!
Un tiempecillo atrás vimos vimos cómo encarar esta kata. Hoy vamos a demostrar que con PHP también se pueden hacer cosillas funcionales ???? Más info: http://codely.tv/screencasts/finder-kata-php-colecciones-funcional
En este video, continuamos con la evolución de Application Services hacia Command Handlers. Introduciremos el concepto de Command Bus y cuáles son sus beneficios. Por último, hablaremos sobre Tactician.
En este video, vamos a ver cómo extraer dependencias como Loggers, Servicios para enviar notificaciones o similares usando un EventDispatcher.
En este video, vamos a ver las diferencias entre un Application Service y un Command Handler. También veremos cómo decorar Command Handlers para añadir funcionalidades como Logging o Transaccionabilidad.
En este video, explicaremos el principio de Tell-Don't-Ask que hemos ido usando en video anteriores pero que no hemos formulado oficialmente.
Los Application Services deben coordinar pero no contener lógica de negocio. En este video, veremos varios trucos para mover la lógica de negocio del Application Service hacia Entidades y Repositorios.
En este video, repasaremos y mejoraremos el testing unitario del caso de uso que estamos refactorizando. Tendremos que añadir un Spy para garantizar que las llamadas a las dependencias que no retornan nada son invocadas.
En este video, acabaremos de testear el servicio con un 100% de coverage.
En este video, testearemos de forma unitaria el "Use Case" que extrajimos en el video anterior del código que estaba escrito directamente en el controlador web.