SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Erkan BALABAN
erkan@erkanbalaban.com.tr
•MVC Nedir?
•Nasıl ortaya çıktı?
•Nasıl çalışır?
•Artıları neler?
•Ne zaman tercih edilmeli?
•Hangi dillerde kullanılır?
•Framework nedir?
•Hangi frameworkler vardır?
•Örnek uygulama : My Book Store
•Tanımlama veya template
•Nesneler ve objeler arasındaki ilişkiyi belirtir.
•Üç gruptan oluşur.
  •Creational patterns
  •Structural patterns
  •Behavioral patterns
•Uygulamanın iskeleti veya framework’ü
olarak düşünülebilir.
•Web uygulamalarında daha çok kullanılır.
•Business, navigation ve presentation
logic’i birbirinden ayırır.

Kod yazmak kolaydır, zor olan hangi kodu yazacağınıza karar vermektir.
•1979’da Trygve Reenskaug tarafından
tanımlanmıştır.
•Basittir.
•Kullanışlıdır.
•En çok kullanılan Design Pattern’dır.
odel : İş mantığı ve veri işleme
iew : Verinin ziyaretçiye sunumu
ontroller : Gelen taleplerin kontrolü
•Veriyi ve veriyle iletişimi temsil eder.
•Business logic
•Controller tarafından gelen isteklere göre
veriyle olan işlemleri yapar.
•Model’in görsel halidir.
•Uygulamanın ziyaretçi tarafından görülen
tarafıdır.
•Model tarafından gönderilen veriyi
işler, verinin nasıl görüntüleneceğini
belirler.
•Olayların veya isteklerin işlenmesi ve
cevaplanmasından sorumludur.
•Ziyaretçiden gelen isteğe göre hangi veriyle
nasıl bir etkileşim kurulacağını ve bu etkileşim
sonucunun nasıl görüntüleneceğine karar
verir.
View




User                Model




       Controller
domain.com/Controller/Action/param/...
.../Haberler/SonHaberler/param/param/...



     Çalıştırılacak Kontrol   Çalıştırılacak Action
     • HaberlerController     • SonHaberlerAction
     • KullaniciController        • HaberAction
http://www.domain.com/Haberler
 domain.com/Haberler/?????




Çalıştırılacak Kontrol   Çalıştırılacak Action
• HaberlerController        • IndexAction
http://www.domain.com/
 domain.com/?????/?????




Çalıştırılacak Kontrol   Çalıştırılacak Action
 • IndexController          • IndexAction
•Separation of concerns
•Kod temiz ve anlaşılırdır.
•Tekrar kullanılabilirlik
•Birlikte çalışılabilirlik
•View’ler kolaylıkla eklenip çıkarılabilir.
•Kullanıcıdan gelen isteğe farklı cevap vermek
çok kolaydır.
•Veriyi farklı view’lerle görüntüleyebilme
•Projenin büyümesi sorunsuz olur.
•İçerik yoğun sitelerde tercih edilir.
•İstenirse her zaman kullanılabilir.
•Class topluluğudur.
•MVC içerisinde kullanılabilir.
•Bazı frameworkler MVC’yle
özdeşleşmiştir.
•Zend Framework
•CodeIgniter
•CakePHP
•Symphony
•Seagull
•30 +
•ASP.NET  ASP.NET
MVC, Promesh, Maverick
•JAVA  Spring, Apache Struts
•ASP  ASP Xtreme Evolution
My Book Store
My Book Store
   application
       controller
       layout
       models
       views
   bootstrap.php
   library
        Zend
   public
Master Page Template

              Action Content Template




Martin
Fowler
2002’de .NETle birlikte kullanılmaya başlandı.
Logo & Banner


Login                Top 10
           Content
Links

Weitere ähnliche Inhalte

Ähnlich wie PHP MVC

Internet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıInternet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıWOLKANCA
 
Microsoft Desktop Optimization Pack (MDOP)
Microsoft Desktop Optimization Pack (MDOP)Microsoft Desktop Optimization Pack (MDOP)
Microsoft Desktop Optimization Pack (MDOP)windowsblogu
 
programlama_ve_veriyapilari
programlama_ve_veriyapilariprogramlama_ve_veriyapilari
programlama_ve_veriyapilariguest551d01
 
B2B Abc Diyalog
B2B Abc DiyalogB2B Abc Diyalog
B2B Abc Diyaloglupazzoli
 
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumu
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter SunumuÖzgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumu
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumuibrahimhizlioglu
 
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriBaşarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriLemi Orhan Ergin
 
YTU Web Gunleri
YTU Web GunleriYTU Web Gunleri
YTU Web Gunleriersanbilik
 

Ähnlich wie PHP MVC (11)

Internet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıInternet Explorer 8 Kitapçığı
Internet Explorer 8 Kitapçığı
 
Microsoft Desktop Optimization Pack (MDOP)
Microsoft Desktop Optimization Pack (MDOP)Microsoft Desktop Optimization Pack (MDOP)
Microsoft Desktop Optimization Pack (MDOP)
 
Aspnet M V C
Aspnet M V CAspnet M V C
Aspnet M V C
 
programlama_ve_veriyapilari
programlama_ve_veriyapilariprogramlama_ve_veriyapilari
programlama_ve_veriyapilari
 
Daron Yöndem - ie8 Ebook Tr
Daron Yöndem - ie8 Ebook TrDaron Yöndem - ie8 Ebook Tr
Daron Yöndem - ie8 Ebook Tr
 
Tuyid Kurumsal Kimlik
Tuyid Kurumsal KimlikTuyid Kurumsal Kimlik
Tuyid Kurumsal Kimlik
 
B2B Abc Diyalog
B2B Abc DiyalogB2B Abc Diyalog
B2B Abc Diyalog
 
Workcube ERP Genel Tanıtım Broşürü
Workcube ERP Genel Tanıtım BroşürüWorkcube ERP Genel Tanıtım Broşürü
Workcube ERP Genel Tanıtım Broşürü
 
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumu
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter SunumuÖzgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumu
Özgür Web Teknolojileri Günleri 2010 - İbrahim Hızlıoğlu // CodeIgniter Sunumu
 
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriBaşarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
 
YTU Web Gunleri
YTU Web GunleriYTU Web Gunleri
YTU Web Gunleri
 

PHP MVC