MVC app Dependency Injection ile Yardım

0 Cevap php

Zend Framework / Doktrin 2. uygulama.:

/app
    /modules
        /blog
            /controllers
                /BlogController.php
            /domain
                /entities
                /services
                    /PostService.php
                /repositories

POSTSERVICE benim denetleyicileri dışarı soyut iş ve sebat mantığı varlıklar ve EntityManager ile doğrudan ilgili, temel CRUD opterations sorumludur.

Mümkünse, ben POPOS olarak benim hizmetlerini tutmak istiyorum. Benim hizmet sınıfında EntityManager enjekte / erişmek için en iyi yolu nedir? Ben, dolayısıyla bu soru DI yeniyim. EntityManager'a benim denetleyicileri bir önyükleme kaynak olarak erişilebilir.

Should I just write a abstract class for services to access the EntityManager? Should I write a class to instantiate my services, injecting the EntityManager via the constructor/setter?... which would involve an interface for my services. Should I use a DI framework? If so, which one and how?

Veya bunu yapmak için başka, daha iyi bir yolu var mı?

Ben bağımlılık enjeksiyon okuma yaptık ama hala tam bu bağlamda bunu anlayamaz.


Update (12th Jan 2011)

Yani bu benim şimdiki çalışma çözümdür: Ben Kaynak adında bir eylem yardımcı, bu bootstrap gelen kaynak almak için bir yardımcı olduğunu, ya da ona manuel bilgi ilave edilebilir: http://pastie.org/1450851

$this->_helper->Resource('em'); // get EntityManager

Can someone please provide some insight into the performance impact of storing bootstrap resources locally within the helper class? Am I over doing it?
TODO: Refactor the resourcesMap out of the class.

And I have an action helper for loading services: http://pastie.org/1450855
TODO: Add checks before attempting to load the service.

Yukarıdaki bazı eleştiriler verin :)

0 Cevap