bugün
- nükleer santralin süper bir şey olduğu gerçeği13
- biz olduğumuz sürece manifest çorum'a giremez14
- yeni parti50
- kıyafet alışverişi6
- sözlük kızlarının kekleri11
- 2026 temmuz ayı nasıl geçti7
- gebze fm5
- manifest grubu vs tarkan14
- kadınların kültürel muhabbetlere girmemesi5
- sevgili3
- ismet gurbuz'u tek yumrukla bayıltmak7
- çorumda konser için müzik grubu öner2
- ekmeleddin ihsanoğluna oy vermiş olmak18
- en iyi web tarayıcısı3
- oooo manifest2
- kız düşürme teknikleri3
- taliban vs ışid3
- huzur3
- bik bik'in mutfağına konuk olmak9
- çekirge istilası2
- sözlük erkeklerinin kekleri2
- hikayeyi devam ettir54
- macar pasaportuyla 184 ülkenin vizesiz gezilmesi3
- memeli kuvvetler2
- sözlük kızlarıyla tekne turuna çıkmak20
- kuran da 5 vakit namaz denmemesi7
- 13 akpli istanbul belediyesi5
- türk hava yolları2
- iş yerindeki kızın resmen yavşaması6
- a haber2
- türklerin çinli prenseslere olan düşkünlüğü3
- camlar açık çıplak yatmak5
- opera tarayıcıya reklamsız vpnli gizli sörf yapmak2
- peugeot 6044
- kedilerin artık fare yakalamaması6
- sucukçu birader2
- ısmet gurbuz 2024'ün havarileri3
- kızlar2
- kılıçdaroğlu'nun rozet töreni figüran iddiası39
- sinem dedetaş6
- kızlar gocu'ya mı güvenirsiniz yoksa bana mı17
- temmuz sonu olup hala tatile gidememek5
- amerika birleşik devletleri2
- tüm fake hesapların öbür sözlükten gelmiş olması3
- kürt arkadaşa verilebilecek hediyeler3
- özgürlükçü pedagoji2
- kemal kılıçdaroğlu16
- nickten isim tahmini yapmak72
- dünyanın en komik şeyi2
- uykuya doyamamak3
model
view
controller.
kelimelerinin bas harfleriyle anilan software design patterndir.
model -> sisteminizde saklanan bilgi (db)
view -> programinizin kullanici arayuzu( gui )
controller -> asil yapilan is ( business logic )
web sitesi yaparken bu mantigi benimsemis frameworkleri kullanmak isleri buyuk oranda kisaltacaktir.
(bkz: web2py)
view
controller.
kelimelerinin bas harfleriyle anilan software design patterndir.
model -> sisteminizde saklanan bilgi (db)
view -> programinizin kullanici arayuzu( gui )
controller -> asil yapilan is ( business logic )
web sitesi yaparken bu mantigi benimsemis frameworkleri kullanmak isleri buyuk oranda kisaltacaktir.
(bkz: web2py)
.net framework platformunda kod yazan eşrafın bilmesi gereken güzelliktir. ado.net entity framework veya linq ile kullanılırsa tadından yenmez. asp.net üzerinden videolu anlatımlarla takip edilebilir.
(bkz: design patterns)
edit:...
(bkz: design patterns)
edit:...
asp.net versiyonu dusunuldugunde, web forms un veriyi her yerde tasima ve diger cesitli hantalliklarinda kurtulmamizi saglayan
yeni teknoloji. Proje yaratildiginda account handling ve jquery library leri otomatik olarak olusturulur. Surukle birak seklindeki sayfa olusturma olayi ise HTML elemanlari disinda mumkun degildir.
yeni teknoloji. Proje yaratildiginda account handling ve jquery library leri otomatik olarak olusturulur. Surukle birak seklindeki sayfa olusturma olayi ise HTML elemanlari disinda mumkun degildir.
dünyayı dolaşmak için uçak ve bisiklet arasındaki karşılaştırma neyse mvc'li ve mvc'siz kod yazma da ona benzer bişeydir. bisikletini alıp yola istediğin an çıkarsın uçak ise öyle değildir planlı programlıdır. ama ciddi anlamda yola konulunca ...
.net platform dilleri ya da php farketmeksizin yazılımcıların bir an önce öğrenmesi gereken güzellik.
Php' de yii, ci gibi framework' ler ile kısa sürede * blog siteleri kodlayabilirsiniz. sözlükler için de benzer süreler geçerli.
net' te ise ön katmanda(*) Razor motorunu kullanarak, arka planda ise Repository, unit of work, base class gibi yaklaşımlarla proje süreleri hayli kısalmakta.
Nedir MVC?
M : Model => Veritabanı sanallamasının yapıldığı kısımdır. yani 3 tablo barındıran basit bir veritabanı oluşturduysanız, modelde bu tabloların EF gibi güzelliklerle sanallamaları yapılır.
V: View => Bildiğimiz arayüzdür. Modelden gelen veri Controller'da işlenir ve View' e aktarılır. HTML5, JavaScript(Google Dart hayal değil), Css, gibi önyüz dilleriyle kodlanır. backend kodu @ ile frontend kodun içine embed edilir.*
C : Controller => Controller MVC mantığında beyin kısmıdır. Veritabanından raw data çekilir ama View' da kullanıcının görmek isteyeceği veri ve etkileşimi Controller kısmında ayarlanır. Katmanlı tasarımda kullanılan BLL kısmıdır aslında. Frontend kodu yazılacaksa şayet, ya da herhangi bi string frontende taşınacaksa ViewBag gibi çözümler kullanılır.
*
Php' de yii, ci gibi framework' ler ile kısa sürede * blog siteleri kodlayabilirsiniz. sözlükler için de benzer süreler geçerli.
net' te ise ön katmanda(*) Razor motorunu kullanarak, arka planda ise Repository, unit of work, base class gibi yaklaşımlarla proje süreleri hayli kısalmakta.
Nedir MVC?
M : Model => Veritabanı sanallamasının yapıldığı kısımdır. yani 3 tablo barındıran basit bir veritabanı oluşturduysanız, modelde bu tabloların EF gibi güzelliklerle sanallamaları yapılır.
V: View => Bildiğimiz arayüzdür. Modelden gelen veri Controller'da işlenir ve View' e aktarılır. HTML5, JavaScript(Google Dart hayal değil), Css, gibi önyüz dilleriyle kodlanır. backend kodu @ ile frontend kodun içine embed edilir.*
C : Controller => Controller MVC mantığında beyin kısmıdır. Veritabanından raw data çekilir ama View' da kullanıcının görmek isteyeceği veri ve etkileşimi Controller kısmında ayarlanır. Katmanlı tasarımda kullanılan BLL kısmıdır aslında. Frontend kodu yazılacaksa şayet, ya da herhangi bi string frontende taşınacaksa ViewBag gibi çözümler kullanılır.
*
php framework lerinin temel yapı taşı olan tasarım deseni. küçük projeler için codeigniter her türlü işi görür ama mevzu giderek büyüyüp karmaşıklaştıkça laravel,symfony2 gibi alanının en iyisi olan kod kütüphanelerinin toplandığı frameworkleri kullanmak daha iyi olur.
model, view, controller tanımlarını herkes yapmış.
Asp.NET MVC olarak anılıyor olsa da, MVC bir tasarım desenidir. PHP Framework'lerinde de bu yapı kullanılmakta olup, database'den alınan işlemlerin farklı, gelen verilerin işlendiği yerin farklı, görüntünün geldiği yerin farklı olduğu güzel bir yazılım deseni.
Asp.NET MVC olarak anılıyor olsa da, MVC bir tasarım desenidir. PHP Framework'lerinde de bu yapı kullanılmakta olup, database'den alınan işlemlerin farklı, gelen verilerin işlendiği yerin farklı, görüntünün geldiği yerin farklı olduğu güzel bir yazılım deseni.
asp.net'in alternatifi değildir. asp.net ikiye ayrılır, biri asp.net web forms, diğeri mvc.
web forms aslında web sayfaları desktop uygulamalarındaki gibi oluşturmak için geliştirilen zımbırtı. yani desktop uygulaması geliştirirken forma label, buton,.. sürükleyip bırakır gibi web sayfası tasarlansın diye yapıldı. hiç html bilinmesine gerek kalmadan butonu sürükleyin çift tıklayın eventi oluşsun kodlarınızı yazın, bu kadar basit ama tabi düzgün bir web sayfası için html bilmek şart. mvc ise sağlam html bilgisi gerektirir.
farkları nelerdir?
- server kontrolleri
web forms'da server kontolleri bulunur. bunlar toolboxta bulunan örneğin button, label, checkbox, radiobutton, drpdownlist,.. Sürükle bırak şeklinde kolayca sayfanıza ekleyebiliyorsunuz.
mvc'de hazır kontrol yok. yani her nesneyi kendiniz oluşturmak zorundasınız.
web forms burda daha iyi gibi görünebilir ama öyle değil. server kontrolleri çalışma zamanında html'e çevrilir yani "asp:button" tagi çalışma zamanında "input type='button'" olacaktır. buda sayfayı yavaşlatan bir durumdur, mvcde bu htmle dönüştürme aşaması bulunmadığı için performans sağlanır.
- events
web formsda butonun çalıştıracağı kodları butona çift tıkladığınızda sizin için oluşturulan click event alanına yazabilirsiniz. yada en basitinden ilk sayfa açılışında form_load eventi tetiklenir buraya yazdığınız kodlar sayfa yüklendiğinde çalışır.
mvcde event mekanizması yok. örneğin butona tıklandığında iş yaptıracaksanız htmldeki form post metodunu kullanmalısınız.
web forms yine burda daha iyi gibi görünsede mvc öğrendiğinizde event mekanizmasının olmaması sizi hiç zorlamayacak tersine daha kolay şekilde kodlarınızı işletebileceksiniz.
- viewstate
web formsda sayfanın post olması yani sayfada bir butona tıklanması durumunda sayfa sunucuya gidip geldiğinde kontrollerin bir önceki durumunu korumak için bilgiler viewstate içinde saklanır. mesela textbox var ve içine yazı yazdınız ve sayfadaki her hangi bir butona bastınız, sayfa sunucuya gidip geldi ama bu aşamada texbox içindeki yazı otomatik olarak viewstate içine yazıldı sayfa yüklendiğinde viewstate içinden yazı tekrar alınıp texboxa yazıldı. özellikle form loaddaki işlemler için kullanışlıdır. veritabanından sadece 1kez verileri çekersiniz diğer türlü her seferinde post işlemi yapıldığında tekrar veri çekmek zorunda kalınırdı.
mvcde viewstate olmadığı için sayfanın son durumu otomatik saklanmaz sizin bunun için azda olsa fazlasan çaba harcamanız gerek.
burda yine web forms daha iyi gibi görünsede viewstate sayfanın boyutuna bağlı olarak çok büyük veri saklar ve bu veri her sayfa işleminde sunucu ve istemci arasında gider gelir buda yavaşlığa neden olur. mvcde viewstate olmaması performans arttırır.
not: web forms kullanındığında viewstate kapatılabiliyor.
- code behind
web formsda aspx ve aspx.cs uzantılı 2 dosya bulunur. aspx dosyasına html,css,js kodlarınızı yazarsınız ve c# kodlarınızı aspx.cs dosyasına yazarsınız. böylece c# kodları ve html kodları birbirine karışmaz.
mvcde code behind yok ama daha kullanışlı şekilde html ve c# kodlarınızı ayırabiliyorsunuz. detaylar aşağıda.
web formsda projenizi kendiniz katmanlı şekilde olutşrumalısınız ama mvcde gayet basit şekilde katmanlı mimari önceden sizin için tasarlanmıştır.
mvc nedir?
model - view - controller bir design patterndir, sıfırdan yapılmış bir teknoloji değildir, siz web sitesi yaparken bu mimariye uygun şekilde kod yazarsınız. yani aslında yukarda dediğim gibi siz yine asp.net dll'ini kullanmış oluyorsunuz ama kodlarınızı yazarken c# kodlarınızı controller'larda, html kodlarını view'larda ve nesnelerinizi model'de tutarsınız ve mvc mimarisini kullanmış olursunuz.
bir mvc projesi açtığınızda jquery, bootstrap falan önceden projeye eklenmiştir. hatta birde bootstrap kullanılarak yazılmış örnek bir web site bile projeye dahil edilmiştir.
appstart klasöründeki routeconfig dosyasında url rewrite işlemlerini çok kolayca yapabilirsiniz.
bundleconfig dosyasında css ve javascript dosyalarınızı bundle etmek gayit basit. bunun anlamı örneğin 5tane css dosyasını bundleconfig dosyası içinde yazılmış örnekteki gibi bundle ettiniz ve view yada layout dosyasında bundle'ı referans verdiniz. artık web sayfası çalışırken bu 5css dosyası birleşitirilir tek css haline getirilir boşluklar silinir yorum satırları silinir ve css dosyası minimize edilmiş olur böylece web sayfanıza ekstra performans sağlanmış olur.
neyse çok uzatmiyim, mvcnin efsaneliği yazmakla bitmez.
web forms aslında web sayfaları desktop uygulamalarındaki gibi oluşturmak için geliştirilen zımbırtı. yani desktop uygulaması geliştirirken forma label, buton,.. sürükleyip bırakır gibi web sayfası tasarlansın diye yapıldı. hiç html bilinmesine gerek kalmadan butonu sürükleyin çift tıklayın eventi oluşsun kodlarınızı yazın, bu kadar basit ama tabi düzgün bir web sayfası için html bilmek şart. mvc ise sağlam html bilgisi gerektirir.
farkları nelerdir?
- server kontrolleri
web forms'da server kontolleri bulunur. bunlar toolboxta bulunan örneğin button, label, checkbox, radiobutton, drpdownlist,.. Sürükle bırak şeklinde kolayca sayfanıza ekleyebiliyorsunuz.
mvc'de hazır kontrol yok. yani her nesneyi kendiniz oluşturmak zorundasınız.
web forms burda daha iyi gibi görünebilir ama öyle değil. server kontrolleri çalışma zamanında html'e çevrilir yani "asp:button" tagi çalışma zamanında "input type='button'" olacaktır. buda sayfayı yavaşlatan bir durumdur, mvcde bu htmle dönüştürme aşaması bulunmadığı için performans sağlanır.
- events
web formsda butonun çalıştıracağı kodları butona çift tıkladığınızda sizin için oluşturulan click event alanına yazabilirsiniz. yada en basitinden ilk sayfa açılışında form_load eventi tetiklenir buraya yazdığınız kodlar sayfa yüklendiğinde çalışır.
mvcde event mekanizması yok. örneğin butona tıklandığında iş yaptıracaksanız htmldeki form post metodunu kullanmalısınız.
web forms yine burda daha iyi gibi görünsede mvc öğrendiğinizde event mekanizmasının olmaması sizi hiç zorlamayacak tersine daha kolay şekilde kodlarınızı işletebileceksiniz.
- viewstate
web formsda sayfanın post olması yani sayfada bir butona tıklanması durumunda sayfa sunucuya gidip geldiğinde kontrollerin bir önceki durumunu korumak için bilgiler viewstate içinde saklanır. mesela textbox var ve içine yazı yazdınız ve sayfadaki her hangi bir butona bastınız, sayfa sunucuya gidip geldi ama bu aşamada texbox içindeki yazı otomatik olarak viewstate içine yazıldı sayfa yüklendiğinde viewstate içinden yazı tekrar alınıp texboxa yazıldı. özellikle form loaddaki işlemler için kullanışlıdır. veritabanından sadece 1kez verileri çekersiniz diğer türlü her seferinde post işlemi yapıldığında tekrar veri çekmek zorunda kalınırdı.
mvcde viewstate olmadığı için sayfanın son durumu otomatik saklanmaz sizin bunun için azda olsa fazlasan çaba harcamanız gerek.
burda yine web forms daha iyi gibi görünsede viewstate sayfanın boyutuna bağlı olarak çok büyük veri saklar ve bu veri her sayfa işleminde sunucu ve istemci arasında gider gelir buda yavaşlığa neden olur. mvcde viewstate olmaması performans arttırır.
not: web forms kullanındığında viewstate kapatılabiliyor.
- code behind
web formsda aspx ve aspx.cs uzantılı 2 dosya bulunur. aspx dosyasına html,css,js kodlarınızı yazarsınız ve c# kodlarınızı aspx.cs dosyasına yazarsınız. böylece c# kodları ve html kodları birbirine karışmaz.
mvcde code behind yok ama daha kullanışlı şekilde html ve c# kodlarınızı ayırabiliyorsunuz. detaylar aşağıda.
web formsda projenizi kendiniz katmanlı şekilde olutşrumalısınız ama mvcde gayet basit şekilde katmanlı mimari önceden sizin için tasarlanmıştır.
mvc nedir?
model - view - controller bir design patterndir, sıfırdan yapılmış bir teknoloji değildir, siz web sitesi yaparken bu mimariye uygun şekilde kod yazarsınız. yani aslında yukarda dediğim gibi siz yine asp.net dll'ini kullanmış oluyorsunuz ama kodlarınızı yazarken c# kodlarınızı controller'larda, html kodlarını view'larda ve nesnelerinizi model'de tutarsınız ve mvc mimarisini kullanmış olursunuz.
bir mvc projesi açtığınızda jquery, bootstrap falan önceden projeye eklenmiştir. hatta birde bootstrap kullanılarak yazılmış örnek bir web site bile projeye dahil edilmiştir.
appstart klasöründeki routeconfig dosyasında url rewrite işlemlerini çok kolayca yapabilirsiniz.
bundleconfig dosyasında css ve javascript dosyalarınızı bundle etmek gayit basit. bunun anlamı örneğin 5tane css dosyasını bundleconfig dosyası içinde yazılmış örnekteki gibi bundle ettiniz ve view yada layout dosyasında bundle'ı referans verdiniz. artık web sayfası çalışırken bu 5css dosyası birleşitirilir tek css haline getirilir boşluklar silinir yorum satırları silinir ve css dosyası minimize edilmiş olur böylece web sayfanıza ekstra performans sağlanmış olur.
neyse çok uzatmiyim, mvcnin efsaneliği yazmakla bitmez.
asp net katili olan webform ların sonunu getiren teknoloji.
öğrenmesi zordur. component yoktur. kullanımı basittir.
asp ve php frameworkları vardır.
asp net mvc framework
php faces mvc framework
asp net artık php rakip olabilir. mvc den önce bariz php üstünlüğü vardı.
öğrenmesi zordur. component yoktur. kullanımı basittir.
asp ve php frameworkları vardır.
asp net mvc framework
php faces mvc framework
asp net artık php rakip olabilir. mvc den önce bariz php üstünlüğü vardı.
Gündemdeki Haberler
Güncel Önemli Başlıklar