Son zamanlarda / uzak web geliştirme için standart MVC kurulum hareket üzerine ben geliştirmeye çalışıyorum, ve ben StackOverflow benim fikirler atmak için zaman olduğunu düşündüm.
Bir bootstrapper ilk nesne oluşturur, en genel akım aynıdır. Aradaki fark, bu daha sonra bir Sevice tutulur olmasıdır.
Yerine denetleyici sevk Sonra, bu görünümü yükler.
Görünümü daha sonra komutlar ve sorgular çağırır. Komutları genellikle formla ilgili (genellikle, veritabanı satır güncellenmesi) işlevselliği temsil eder ve sorgular normalde ModelPeers ne olacağını vardır. Bu (Sevice yoluyla) oluşturulduğu zaman, onlar potansiyel karmaşık bağımlılık enjeksiyon bir çok ihtiyaç kurtulur onlara geçti ServiceManager var.
Modeller kendilerini sadece tek bir satırda / silmek / güncelleme oluşturmak yapardı.
Yani bir görünüm gibi görünecektir:
ListUsers.php
<?php $users = $this->ServiceManager->get('Query\User')->getNewestUsers(10); ?>
<?php foreach($users as $user): ?>
....
<?php endforeach; ?>
UpdateUser.php
<?php $this->ServiceManager->get('Command\User')->update(); ?>
<form>...</form>
Biraz katmanlı ihlal olduğunu biliyorum, ama daha fazla bir şey ViewVariableSetters gibi hareket kontrolörler bir grup olan çok daha temiz görünüyor.
Tüm işlevselliği Komutanlıkları ve sorgular ve uzak büyük denetleyicileri içine kapsüllü olduğu için o da her şey çok daha test edilebilir hale getirir. Teknik olarak, bir denetleyici ya da ViewVariableSetter olabilir, ama çok az parası ile çok daha fazla kod eklemek istiyorum gibi görünüyor.
Herhangi bir görüş takdir, ve ben bir şey açıklamak eğer bana bildirin lütfen olacaktır.