bugün
- biz olduğumuz sürece manifest çorum'a giremez21
- bik bik'in mutfağına konuk olmak15
- nükleer santralin süper bir şey olduğu gerçeği18
- cennetten düşerken canın yandı mı4
- forlove19 sorunsalı4
- islam düşmanlarına bir soru4
- liyakat nedir ve liyakatsızlık sonuçları nelerdir8
- mehdiye inanıyor musunuz4
- balerion4
- japon arabaları iyi arabalar mıdır sorunsalı4
- sözlüğün en yakışıklı yazarı olmak8
- am ile pm yi karıştırmak5
- manifest grubu vs tarkan16
- ismet gurbuz'u tek yumrukla bayıltmak10
- eve girildiğinde ilk yapılan şeyler5
- the odyssey6
- çorumda konser için müzik grubu öner7
- huzur7
- yeni parti50
- aylık 403 bin lira iyi para mıdır sorunsalı3
- sözlük kızlarının kekleri11
- sessizliğin artık korkutmaması2
- kale3112 nickli sözlük yazarı2
- renault modus2
- yine çok fena burnum kanadı5
- kanlı gözlerle aynaya bakmak2
- gammazlar neden hiç çaylak olmuyor11
- nissan skyline r342
- kaldırım taşını yastık yapmak2
- iş yerinde sıkıntıdan patlamak2
- eren kaşıkçı2
- 29 07 26 kusadasi dktt konseri2
- korkusuz korkak4
- çin üretimi elektrikli arabalar2
- nissan silvia2
- ekmeleddin ihsanoğluna oy vermiş olmak18
- hikayeyi devam ettir54
- bugün ne oldu4
- 27 temmuz 2026 galatasaray venezia maçı4
- ankara2
- bana onu sormayin5
- muğla daki orman yangını2
- uzaylıların dünyayı işgal edip köleleştirmesi2
- parcalandim toparlanamiyorum4
- mehdilik faaliyetleri2
- kıyafet alışverişi6
- ona bir şey söyle8
- korkusuz korkak filmindeki gaddar kerim3
- askeri ücretle evlenebilir mi7
- temmuz sonu olup hala tatile gidememek6
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