Eğer $front->setParam
kullanırken, size Front Controller bir parametre tanımlıyoruz.
Ancak bu parametre, model olarak, uygulamanın (or should not be used from), diğer tabakalar içinde mevcut değildir.
Modelin içine dahil - Zend_Registry
, diğer herhangi bir global değişken gibi, her yerde uygulamanızda edinilebilir.
Ama bunun yerine küresel değişken bir demet Registry kullanarak her yerde, birçok küresel değişken olmaz sağlar:. Registry kullanarak (which is not that good, one should say), sahip olmak daha iyi olduğunu tek bir yerde bazı küresel devlet ima bile
A couple of real life examples could be :
- Bootsreap kurulan, ancak Modeller kullanılan veritabanı bağlantısı, Mağaza
- Küresel (or any mecanism) Uygulamanın tüm katmanlarında çeviriler / yerelleştirme yapmak için kullanılacak bir adaptör saklama - Zend Framework kendisi yapar.
In the end, do I find Zend_Registry
useful ?
Bazı küresel devlet sahip gelince Evet, evet, bu yararlıdır.
But if it's usage can be avoided, it might be better : conceptually speaking, not having your classes depend on any global state is better : easier to re-use, easier to test, ...
About that, you might want to take a look at what Dependency Injection is.