Question:
Date: 16-02-2015 05:00:51
(In Spanish)
Frabrica de IoC[Resolved]
Hola a todos, soy medio nuevo con php y quisiera, ya que estoy empezando, empezar con buenas prácticas. Quisiera, por favor, si alguien sabe cómo podría implementar los patrones Repository, Specification e IoC. He encontrado blogs que enseñan el Repository pero crean una clase Repositoy por cada tabla en la base de datos, y eso es un poco antiproducente, la ideal sería poder utilizar la herencia donde creamos un BaseRepository con las funciones principales, todos los demás heredan de este e implementan los métodos específicos. Sé que este patrón es para aislar la lógica de acceder a los datos del resto del proyecto pero como dato de rigor estoy utilizando el ORM de Propel. Cualquier ayuda será bienvenida. Muchas gracias. Votes: 1 - Answers: 6 - Views: 25 Share on: Google Facebook Twitter LinkedIn LinkAnswers:
-
Date: 18-02-2015 09:04:32 Muy interesante tu pregunta, aquí te adjunto un link donde puedes ver como implementar algunos patrones en PHP:
Patrones explicados:
* Factory
* Singleton
* Strategy
http://www.phptherightway.com/pages/Design-Patterns.html
Saludos, Votes: 1 - Link answer -
Date: 19-02-2015 07:59:52 Muchas gracias Fernando por tu respuesta pero lo que en este momento estoy buscando es: Repositoy , Specification e IoC Votes: 0 - Link answer
-
Date: 19-02-2015 08:28:55 Jaime, aquí lo que buscas:
* Repository
http://stackoverflow.com/questions/16176990/proper-repository-pattern-design-in-php
http://code.tutsplus.com/tutorials/the-repository-design-pattern--net-35804
* Specification
Libro: php architect's guide to php design patterns Link libro en google
* IoC
http://www.sitepoint.com/inversion-of-control-the-hollywood-principle/
Al margen de los links, todos los patrones estan explicados en el libro "php architect's guide to php design patterns"
PDF: http://treinamentoinfoco.com.br/wp-content/uploads/2014/01/PHP.Architectnanobooks.PHP_.Architects.Guide_.to_.PHP_.Design.Patterns.2005.LotB_.pdf Votes: 0 - Link answer -
Date: 25-08-2015 07:04:52 Otro enlace con información sobre patrones de diseño:
http://designpatternsphp.readthedocs.org/en/latest/ Votes: 0 - Link answer -
Date: 25-08-2015 07:13:07 En symfony utilizando Doctrine es una buena practica que tu clase repository extienda la clase EntityRepository ejemplo:
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace AppBundle\Repository; use Doctrine\ORM\EntityRepository; use AppBundle\Entity\Post; /** * This custom Doctrine repository contains some methods which are useful when * querying for blog post information. * See http://symfony.com/doc/current/book/doctrine.html#custom-repository-classes * * @author Ryan Weaver <weaverryan@gmail.com> * @author Javier Eguiluz <javier.eguiluz@gmail.com> */ class PostRepository extends EntityRepository { public function findLatest($limit = Post::NUM_ITEMS) { return $this ->createQueryBuilder('p') ->select('p') ->where('p.publishedAt <= :now')->setParameter('now', new \DateTime()) ->orderBy('p.publishedAt', 'DESC') ->setMaxResults($limit) ->getQuery() ->getResult() ; } }
mas información en la documentación:
http://symfony.com/doc/current/book/doctrine.html#custom-repository-classes Votes: 2 - Link answer -
To actively participate in the community first must authenticate, enter the system.Sign In