MVC Nedir ?

MVC Nedir ?

Bugün yeni bir makalemiz ile sizlerleyiz, bugün sizlere biraz olsun MVC yapılarından bahsetmek isterim. MVC Genel itibariyle açılımı Model-View-Controller’dir. MVC yazılım geliştiricilerin kullandığı bir yazılım mimaridir. Yapı itibariyle karmaşık yapıların okunabilirlik düzeyinin artırabilmek için geliştirilmiştir. MVC Denilince ilk olarak Microsoft ASP.NET MVC Framework ‘u gelebilir ama bu yanlış bir kavramdır. Microsoft kurulduğunda bile MVC var olan bir mimaridir. İlk olarak 1979 Yılında Trygve Reenskaug tasarlanmıştır. Daha sonraki aşamalarda Xerox bu mimariyi Smalltalk üzerinde geliştirmeye devam etmiştir.

MVC Nedir ?

MVC yapı itibariyle katmanlardan oluşmaktadır. Bu katmanlara tek tek inceleyeceğiz.
 

Model Katmanı

Bu katmanda yazılımın en temel kısmı olan veritabanı işlemlerinin yapıldığı yapıdır. Yani veritabanınında CRUD (Create-Read-Update-Delete) işlemlerinin yönetim yapıdır.

View Katmanı

Bu katman aslında ziyaretçinin en çok kullanıdığı yerdir. View katmanı halka açık olan ve katmanların kullanıma olanak sağlayan katmandır.

Controller Katmanı

Bu katman adından da anlaşılacağı gibi yazmış olduğumuz yazılımın kontrollünü sağlayan katmandır. View ile model arasında koordinatör görevi görür. Kontroller kullanıcının veri girişini alır, sonra bazı işlemler gerçekleştirmek için model ile etkileşime geçer ve sonucu view katmanına aktarır.

Üst kısımdaki resim ile daha anlaşılabilir olacağını düşünüyorum.
MVC yapılar programlama ile ilgilenen kişilerin karşısına çokça çıkacaktır, çünkü artık günümüz yazılımcıları bu mimariyi çokca kullanmaktadır. MVC Yapısına uygun hazır framework yapılar bulunmaktadır. Bunlardan PHP Tarafında en önemlileri; Laravel,Symfony,CodeIgniter gibi sistemlerdir.
Makalemi okuduğunuz için teşekkür ederim.
Bir sonraki makalade görüşmek üzere.

Beğen  1
Yazar

2008, Yılından beri sistem ve yazılım teknolojileri ile ilgilenmekteyim. Ayrıntılı bilgi için hakkımda sayfamı inceleyebilirsiniz.

Bir Cevap Yazın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir