- 1970'li yıllarda GUI ve Desktop uygulamaları popülerdi ve 2 ana sorumlulukları vardı.
- Screen layout ve Logic
- Bu yüzden View ve Logic bir birine sıkı bir şekilde bağlıydı. View veya Logicde birşeyler yaptığımızda her ikisini de kontrol etmemiz gerekiyordu ve paralel olarak geliştirme yapılamıyordu.
-View ve Logic bir birine sıkı bir şekilde bağlı ve bizim bunları ayırmamız gerekiyor. Bu ayrımada Separated Presentation denilir. Separed Presentationun amacı Domain Objeleri ile ekranda gördüğümüz GUI objeleri arasında net bir ayrım yapmaktır.
-Presentatiın kısmı View ve Contollerdan oluşur. Logic yada Domain element denilen kısımda Model olarak adlandırılır.
MVC
- Bir uygulamayı bir biriyle bağlantılı üç parçaya bölen bir arayüz tasarım desenidir. Katmanlı mimari değildir.
- Bir kullanıcıya bir form içerisinde data göstermek yada kullanıcıdan bir form vasıtasıyla data kabul etme işlerini birbirinden ayırmak için kullanılır.
- MVC tasarım deseni kodun yeniden kullanılmasına ve paralel olarak geliştirme yapabilmek için bu ana bileşenleri ayırır.
Model
- Model, MVC’de projenin iş mantığının (business logic) oluşturulduğu bölümdür. İş mantığıyla beraber doğrulama (validation) ve veri erişim (data access) işlemleri de bu bölümde gerçekleştirilmektedir.
- Model, View ve Controller hakkında hiç bir bilgiye sahip değildir.
View
- Kullanıcıların uygulama ile etkileşimde bulanabileceği yer burasıdır.
- View, MVC’de projenin arayüzlerinin oluşturulduğu bölümdür. Bu bölümde projenin kullanıcılara sunulacak olan HTML dosyaları yer almaktadır
- View’ın bir görevi de, kullanıcılardan alınan istekleri controller’a iletmektir.
- MVC'nin bazı varyasyonlarında View, Model ile doğrudan etkileşime girmez.
- Ancak başlangıçta MVC, View bölümünü güncellemek için Modeldeki tüm değişiklikleri bilmek için Observer Patterni kullanır.
Controller
- Bu bölümde View ile Model arasındaki bağlantı kurulur. Kullanıcılardan gelen istekler (request) Controller’larda değerlendirilir, isteğin detayına göre hangi işlemlerin yapılacağı ve kullanıcıya hangi View’ın döneceği (response) belirtilir.
MVC Çalışma Prensibi
Bir MVC projesinde kullanıcı, tarayıcı üzerinden (View) sayfaya istek yaptığında bu istek Controller’a iletilir. Controller isteği gerçekleştirmek üzere model ve bağlantılı bileşenleri ile gerekli sınıf ve metotları çağırır. Elde ettiği sonuçları View’e göndererek sayfanın görüntülenmesini sağlar.
Hiç yorum yok:
Yorum Gönder