php mvc
DESCRIPTION
You can find PHP MVC information in this presentation. It is in Turkish.TRANSCRIPT
![Page 2: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/2.jpg)
•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
![Page 3: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/3.jpg)
•Tanımlama veya template
•Nesneler ve objeler arasındaki ilişkiyi belirtir.
•Üç gruptan oluşur.
•Creational patterns
•Structural patterns
•Behavioral patterns
![Page 4: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/4.jpg)
•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.
![Page 5: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/5.jpg)
•1979’da Trygve Reenskaug tarafından tanımlanmıştır.
•Basittir.
•Kullanışlıdır.
•En çok kullanılan Design Pattern’dır.
![Page 6: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/6.jpg)
odel : İş mantığı ve veri işleme
iew : Verinin ziyaretçiye sunumu
ontroller : Gelen taleplerin kontrolü
![Page 7: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/7.jpg)
•Veriyi ve veriyle iletişimi temsil eder.
•Business logic
•Controller tarafından gelen isteklere göre veriyle olan işlemleri yapar.
![Page 8: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/8.jpg)
•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.
![Page 9: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/9.jpg)
•Olayların veya isteklerin işlenmesi ve cevaplanmasından sorumludur.
•Ziyaretçiden gelen isteğe göre hangi veriylenasıl bir etkileşim kurulacağını ve bu etkileşim sonucunun nasıl görüntüleneceğine karar verir.
![Page 10: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/10.jpg)
User
Controller
Model
View
![Page 11: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/11.jpg)
Çalıştırılacak Kontrol• HaberlerController• KullaniciController
Çalıştırılacak Action• SonHaberlerAction
• HaberAction
domain.com/Controller/Action/param/...
.../Haberler/SonHaberler/param/param/...
![Page 12: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/12.jpg)
Çalıştırılacak Kontrol• HaberlerController
Çalıştırılacak Action• IndexAction
http://www.domain.com/Haberler
domain.com/Haberler/?????
![Page 13: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/13.jpg)
Çalıştırılacak Kontrol• IndexController
Çalıştırılacak Action• IndexAction
http://www.domain.com/
domain.com/?????/?????
![Page 14: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/14.jpg)
•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.
![Page 15: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/15.jpg)
•İçerik yoğun sitelerde tercih edilir.
•İstenirse her zaman kullanılabilir.
![Page 16: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/16.jpg)
•Class topluluğudur.
•MVC içerisinde kullanılabilir.
•Bazı frameworkler MVC’yle özdeşleşmiştir.
![Page 17: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/17.jpg)
•Zend Framework
•CodeIgniter
•CakePHP
•Symphony
•Seagull
•30 +
![Page 18: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/18.jpg)
•ASP.NET ASP.NET MVC, Promesh, Maverick
•JAVA Spring, Apache Struts
•ASP ASP Xtreme Evolution
![Page 20: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/20.jpg)
My Book Store
![Page 21: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/21.jpg)
My Book Store
application
library
public
controller
layout
models
views
bootstrap.php
Zend
![Page 22: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/22.jpg)
Master Page Template
Action Content Template
MartinFowler
2002’de .NETle birlikte kullanılmaya başlandı.
![Page 23: PHP MVC](https://reader034.vdocuments.site/reader034/viewer/2022042715/5598ec831a28ab6f118b4655/html5/thumbnails/23.jpg)
Logo & Banner
Login
Links
Top 10Content