Zend Framework modüler yaklaşım, arkasında iyi bir mantığı var mı?

1 Cevap php

Zend framework oldukça hızlı büyüyor hepimizin kabul ve Zend Framework modüler yapısını çalışırken modüllerin somut bootstraping olmak eğer hepimiz, sürpriz olmuştu - modüllerinin tüm önyükleme dosyaları başında olursa olsun yürütülür biz kullanıyorsanız, / bu modülü erişen ya da değil. Gibi Hatırladığım kadarıyla modül önyükleme ana Bootstrap plugin gibi idam olur. Ama diğer taraftan ben çok sofistike ve desen tasarımı büyük saygı ile yazılmış ZF uygulanmasını bulabilirsiniz.

Yani gidiş ve Modül Lazy Load / Bootsrap'i tökezleyerek önce, ben önyükleme yönü üzerinde objektif bir düşünce var istiyorum

-- So does the initial module bootstraping in ZF have a solid logic behind it or should it be changed to something like lazy/on demand bootstrapping?

Ben soru oldukça örtülü olduğunu biliyorum, bu yüzden bana biraz daha vereyim

modüler bir app mesela biz ayrı bir başlangıç ​​(ayrı bir düzeni gibi) her modül için yapılandırmaları ve önyükleme bir "ilk yapılandırmaları yapmak için bir yer" için bir paradigma sahip olmak istiyorsak, doğru mu? Biz Zend Dokümantasyon söylüyor şekilde başlatma / yapılandırmaları yerleştirmek eğer ben bir şey yönetici ön yükleme talep Ama, o zaman bizim uygulama yükler her istek için her modül önyükleme sınıfta kurulmuş tüm ilklenmeleri. (Ben hala sadece bir misafir ve kulüpler ) olsa arka planda, idam olacak - bu oldukça fazla sistemi bozuyor edilir.

bildiğim kadarıyla gördüğünüz gibi fikir akabilir iki yolu vardır

  1. to have in the module bootstrap things that are only complementary to the whole system (pretty much don't see what it can be)
  2. Bir yardım Eylem MaDuLe kayışları boostrapping ile uğraşan Bootstrap sınıfını eklentisi ya uzanan önyükleyicisini yolu modülleri değiştirmek

Ve benim ilk soru ilk seçeneği takip için herhangi bir mantığı yok oldu ve 2. seçenek iyi bir seçim olacaktır olurdu?

1 Cevap

Evet. Bu gönderme sürecine dayanıyor. Sen bir sen bootstraping zamanında ihtiyaç hangi söyleyemem. Modül özyüklenirler bir avantajı vardır - Eğer ana bootstrap için modül kodu eklemek gerekmez - bu modülleri daha "kendi kendine yeten" yapar.

Modül bağlıdır

  • istek
  • Seçilen güzergah
  • ex için eğer. _forward () çağrıldı

Ama, her modül için yolları eklemek kendi disatcher vb enjekte Ve bu tüm istek nesnesi oluşturmadan önce yapılması gerektiğini isteyebilirsiniz. Başında başlatılan tüm özyüklenirler neden bulunuyor.

İdeal durumda, sizin önyükleme tekrarlayan kodu içeren ya da herhangi bir ciddi yük eklemek gerekir. Db adaptör veya bakış gibi nesnelerin hiçbir kopya vardır böylece diğer başlatılan göbeğini kaynakları ile retieve yapabilirsiniz.