30/10/2015, 11:53
|
| Colaborador | | Fecha de Ingreso: septiembre-2009 Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 4 meses Puntos: 214 | |
Respuesta: Framework, para POO Saludo
Pues en ese caso, ataquemos a Factory.
Ej
Vamos a generar códigos para diferentes tipos de artículos para una tienda.
Así por ej tendremos artículos de Aseo, de Miscelanea, etc.
También necesitaremos un generador de códigos genérico,
que solo se encargue de informarnos cual es el artículo a usar.
Y finalmente necesitaremos un pivot (Factory) entre el genérico
y el artículo que manejaremos.
Llevando este ejemplo a clases, sería.
1. Crear una clase abstracta para el genérico.
2. Crear las clases para cada tipo de artículo, las cuales extenderán de la clase abstracta.
3. Crear la clase pivot (Factory) que comunicará el punto 1 con el punto 2
para poder hacer uso de distintos tipos de artículos.
Llevando esto a código
Código PHP:
Ver originalabstract class GenericCodeComponent { public function getCode() { } } //Aseo class CleanLinessCodeComponent extends GenericCodeComponent { public function getCode() { return 'CleanLiness-1'; } } //Miscelanea class MiscellaneousCodeComponent extends GenericCodeComponent { public function getCode() { return 'Miscellaneous-2'; } } class GenericCodeComponentFactory { public static function createGenericCodeComponent($type) { $baseClass = 'GenericCodeComponent'; $baseComponent = 'CodeComponent'; $targetClass = $type.$baseComponent; return new $targetClass; else return 'Type '.$type.' not found.'; } } $components = array('CleanLiness','Miscellaneous'); foreach ($components as $component) echo '</br>'.GenericCodeComponentFactory::createGenericCodeComponent($component)->getCode();
Ese es un ejemplo, y como se puede apreciar, solo son clases
que extienden unas de otras, y una final que se encarga de fabricarlas.
Y es válido para cualquier framework, así que adelante, es cuestión
de adaptar esto en tu caso a CodeIgniter, pero ya no te será tan
complicado, pues ellos ya manejan el paradigma POO.
__________________ "Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
Última edición por mortiprogramador; 30/10/2015 a las 16:06 |