SORU
1 EKİM 2011, CUMARTESİ


Mimarisi MVC web uygulamaları için daha uygun?

Yeni işim için Çalışabilir MVC uygulama yapısı öğreniyorum, ve çalışırken, tam olarak benim parmak koymak olamazdı nedenlerle beni rahatsız bulundu. Çalışmalarım sırasında daha sonra üzerinden MVC ve web uygulamaları konusunda MVC: No Silver Bullet this podcast gibi makaleler geldim. Podcast adam web uygulama mimari olarak MVC karşı çok iyi bir savunma yaptı ve kafama adamcağız ne çok çivilenmiş.

Ancak, soru Eğer gerçekten MVC web uygulamaları için iyi bir uyum değil ise bile kalır, ne?

CEVAP
1 EKİM 2011, CUMARTESİ


Bu kodlama tarzı bağlıdır. İşte sırrı buİmkansız PHP klasik MVC yazmak için.

Sen-ebilmek iddia eden herhangi bir çerçeve size yalan söylüyor. Gerçeği kendileri bile -- kod uygulamak MVC çerçeveler olabilir. Ama o kadar iyi bir pazarlama saha değil, sanırım.

Klasik bir MVC uygulamak kalıcı Modeller ile başlamak için olması gerekir. Ayrıca, Model gerektiğini bildirmek Görünümü ile ilgili değişiklikler (observer pattern), hangi da imkansız senin vanilya PHP sayfa (bir şey yapabilirsin kapatmak için klasik MVC, eğer kullandığınız yuva, ama pratik için gerçek bir web sitesi).

Web geliştirme aslında MVC-ilham 4 başka çözümler var:

  • Model2 MVC: Görünüm Model verileri talep eden ve daha sonra işlemek için nasıl ve hangi bir karar. Denetleyici hem Görünüm ve Model durumu değiştirmek için sorumludur.

  • MVVM: Denetleyici Görünüm beklentileri ve Modelleri mantığı arasında çeviri sorumlu olan bir ViewModel için takas. Bu Modeli anlamak, böylece istek çevirir denetleyicisi, istekleri veri görünümü.

    En sık görünüm veya model katman üzerinde kontrolü varsa bunu kullanırsınız.

  • MVPphp çerçeveler dediğimiz ("") MVC: Model istekleri Sunucu bilgileri toplar, değiştirir, ve pasif Görünümüne geçirir.

    Bu desen keşfetmek için, this publication ile başlamak için tavsiye ederim. Ayrıntılı olarak açıklayacağım.

  • HMVC(PAC): çalıştırmak için bir kontrol yeteneği ile Model2 gelen alt denetleyicileri farklıdır. M ve V C kendi üçlüsü ile her türü idame kazanmak, ama performans biraz daha vuruş ile ödeme.

Her neyse. Sonuç: gerçekten MVC. kullanmadın

Ama eğer MVC gibi yapıları, hasta iseniz, içine bakabilirsiniz:

  • olay tabanlı mimariler
  • n-Katmanlı mimari

Ve sonra her zaman DCI paradigma var, ama PHP (olamaz çirkin kesmek olmadan PHP .. bir sınıf atama) uygulandığında bazı sorunlar var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • chickenby

    chickenby

    2 HAZİRAN 2008
  • habpsu

    habpsu

    25 Temmuz 2007
  • Rugiagialia

    Rugiagialia

    1 Ocak 2008