Bunun arkasında hiçbir gerçek sorunu olan bir soru, sadece benim hasta zihin ürün ve işler biraz garip yapmak için sürücü :)
Yani, (evet, ben bunun yerine mevcut olanı kullanarak benim kendi yaptım) bu PHP uygulama benim kendi MVC odaklı çerçevesinin üstüne kurmak var. Ve bu yüzden biz modeli (veri ve veritabanı manipülasyon) olan kitap yapılır, görünümü (veri ve render çıkışı ile dolu şablonları) ve kontrolör (, istekleri işleyen model uygun verileri alır, görünümünde veri koyar). Isteği yönlendirme ile klasik ve sıkıcı senaryo. Htaccess kuralları ile yapılır.
Dün vb benim kodunda bazı değişiklikler, hata düzeltmeleri, çift iyileştirmeler yaptım Ve ben kontrolörleri kodunu yeniden düzenlemek için güçlü bir dürtü hissettim. Onlar biraz ağır ve şişkinlik hissediyorum ve yöntemler sayısı o dosyaya gezinmek için zor ve böyle şeyler yapar. Herkes ben neden bahsettiğimi biliyor eminim.
Ben birçok sınıfları, tek bir giriş gibi istek türünü veya kayıt veya showProfile veya Killme taşıma her birine benim denetleyicisi sınıf kırma düşünüyorum.
Şimdi controller sınıf uygun denetleyici çağırır kullanıcı dostu (ya da belki SEO dostu) URL'ler ve yönlendirme sınıf bölgelerine karşılık gelen kamu yöntemleri vardır ve bu url içeriğine göre yöntem.
Ben yaklaşık () yöntemi, belirli denetleyicisi yürütmesini içine biraz yönlendirme mekanizması vardiya ve Yürütme Neler olacağını düşünüyorum değiştirin.
For example, for url = "www.example.com/users/login" now it looks like that:
$controller = new url[0]();
$method = url[1];
echo $controller->$method();
ve şimdi url için "www.example.com / login" değiştirmek istiyorsunuz ve yönlendirme kodu gibi görünecektir:
$controller = new url[0]();
controller->Execute();
Ben adresler ayrıştırmak ve benim soruya alakasız olarak onlardan yönlendirme bilgi ayıklamak parçaları atlanmış.
Ben bu değişikliği görmek ne yararlar?
- bir istek başına bir özel sınıf
- küçük resimler
- küçük kod
- kolay bakım
- (istek yeni tip) yeni özellikler eklerken çalışan kontrolör kırılma veya hata tespit sınırlı tehlikesi
Dezavantajları?
- sınıfları muhtemelen bir çok
- olası performans isabet
- ??
Ve benim sorum bu fikir hakkında ne düşünüyorsunuz hakkında ve bu hiç bir anlam ifade etmez. Ve tabii ki ben neden daha bunu yapmamalıyım neden daha fazla ilgileniyorum. Çok geç :) olacak Yani önce o korkunç fikir ve iğrençtir olacağını neden herhangi bir nedenle düşünüyorsanız eğer şimdi konuşsun lütfen
EDITED Clarification of a question:
Ben birçok küçük denetleyicileri isteğin sadece tek tip taşıma bunların her birine bu kadar yöntemlerle istekleri çok çeşitli kolları benim tek büyük denetleyici kırmaya olup olmadığını soruyorum.
Şimdi Refactored kod bu istekleri her biri için ayrı ayrı denetleyicileri oluşacak, vb "etkinleştirmek", "kayıt", "showLoginForm" "giriş" gibi isteklerini işleme denetleyicisi Kullanıcılar var.