a MVC | evieplus Academy | Bilgi Teknolojileri Platformu

MVC

MVC Nedir?

MVC, ilgili program mantığını birbirine bağlı üç öğeye bölen kullanıcı arabirimleri geliştirmek için yaygın olarak kullanılan bir yazılım tasarım modelidir (design pattern).

MVC modeli, modern kullanıcı arayüzlerini geliştirmek için yaygın olarak kullanılır. Masaüstü veya mobil için programların yanı sıra web uygulamaları tasarlamak için temel parçaları sağlar.

Nesne yönelimli programlama (OOP) yöntemiyle çok stabil çalışır. Çünkü farklı modeller, görünümler ve denetleyiciler nesneler olarak değerlendirilebilir ve bir uygulama içinde yeniden kullanılabilir.

Model - View - Controller Nedir?

Model:
Model bileşeni, kullanıcının birlikte çalıştığı tüm verilerle ilgili mantığa karşılık gelir. Bu, View ve Controller bileşenleri arasında aktarılan verileri veya iş mantığı ile ilgili diğer verileri temsil edebilir. Örneğin bir müşteri nesnesi, müşteri bilgilerini veritabanından alacak, işleyecek ve veriyi veritabanına geri güncelleyecek veya verileri işlemek için kullanacaktır.
View:
View bileşeni, uygulamanın tüm UI (User Interface - Kullanıcı Arayüzü) mantığı için kullanılır. Örneğin Müşteri görünümü, son kullanıcının etkileşimde bulunduğu metin kutuları, açılır menüler vb. Gibi tüm UI bileşenlerini içerecektir.
Controller:
Controller’lar tüm iş mantığını ve gelen istekleri işlemek, Model bileşenini kullanarak verileri işlemek ve son çıktıyı oluşturmak için View’lar ile etkileşim kurmak için Model ve View bileşenleri arasında bir arayüz görevi görür. Örneğin Müşteri Controller’i, Müşteri View’ından gelen tüm etkileşimleri ve girdileri yönetecek ve Müşteri Modelini kullanarak veritabanını güncelleyecektir. Müşteri verilerini görüntülemek için aynı Controller kullanılacaktır.

MVC'nin Tarihi Nedir?

MVC mimarisi ilk kez 1979'da Trygve Reenskaug tarafından tartışıldı.

MVC modeli ilk olarak 1987 yılında Smalltalk programlama dilinde tanıtıldı.

MVC ilk kez 1988 tarihli bir makalede genel bir kavram olarak kabul edildi.

Son zamanlarda, MVC modeli modern web uygulamalarında yaygın olarak kullanılmaktadır.

MVC’nin Avantajları Nelerdir?

  • Kolay kod bakımı, genişletmesi ve büyütmesi kolaydır
  • MVC’deki Model bileşeni kullanıcıdan ayrı olarak test edilebilir
  • Yeni müşteri türleri için daha kolay destek sağlar
  • Çeşitli bileşenlerin geliştirilmesi paralel olarak gerçekleştirilebilir
  • Bir uygulamayı üç birime bölerek karmaşıklığı azaltır
  • Test odaklı geliştirme için en iyi desteği sunar
  • Büyük web tasarımcıları ve geliştirici ekipleri tarafından desteklenen web uygulamaları için stabil çalışır
  • Tüm sınıflar ve nesneler birbirinden bağımsızdır, böylece onları ayrı ayrı test edebilirsiniz
  • Bir Controller’daki ilgili eylemlerin birlikte mantıksal olarak gruplandırılmasına izin verir

MVC’nin Dezavantajları Nelerdir?

  • Bu modeli okumak, değiştirmek, birim testi yapmak ve yeniden kullanmak zordur
  • Resmi doğrulama desteği yoktur
  • Veriler arttıkça karmaşıklık ve verimsizlik oluşabilir
  • Modern kullanıcı arayüzlerinde MVC kullanmak zordur
  • Paralel programlama yapmak için birden fazla programcıya ihtiyaç vardır
  • Birden fazla teknoloji bilgisi gereklidir

Popüler MVC Framework'ler Hangileridir?