"Bir eylem / sayfa başına bir sınıf" için herhangi bir desen?

0 Cevap php

MVC gerçekten iyi bir model olduğunu, ama bazen Denetleyicisinin yöntemleri içine her şeyi koymak gerçekten sıkıcı. Kontrolör sürekli büyüyen ve bu kod satırları binlerce kurtulmak zaman alır. Bazı insanlar çok Modeli içine mümkün olduğunca koymak için önerir, ama ben (Model içine denetleyici yönelik yöntemler koymayın) temiz Model tutmayı tercih ediyor.

Fikir kendi sınıfa her Denetleyicisinin eylem koymak için ...

class Post_Add {}
class Post_Remove {}
class Post_View {}

Biz class Post_Parent içine koyarak ve eylem yapıcı içine örneğinin geçiyoruz tüm eylem sınıfları için ortak tüm kod,.

Yani, harekete çağıran gibi görünecek ...

$parent = new Post_Parent();
$action = new Post_Add($parent);
$action->run();

Peki, ne var?

  • Each action is in separated class, so we can add as much private methods, vars, constants as we want.
  • All common code is separated into parent class (Post_Parent) and can be accessed from action classes. It is very good for organizing ACL etc.-

Bu fikir yaşamaya değer mi? Bunun için herhangi bir benzer tasarım desenleri var mı?

Teşekkür ederim.

0 Cevap