Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan ASP.NET Core MVC mimarisinde layout kavramını anlatan kapsamlı bir eğitim içeriğidir.
- Video, layout kavramının ne olduğunu, neden önemli olduğunu ve nasıl kullanıldığını teorik ve pratik örneklerle açıklamaktadır. Eğitmen önce layout'un tekrar eden HTML yapılarını (menüler, footer, header gibi) tek bir dosyaya koyarak yönetilebilirliği, esnekliği ve geliştirilebilirliği nasıl artırdığını anlatır, ardından pratik bir MVC projesi üzerinden layout dosyasının oluşturulması, view dosyalarında render body fonksiyonunun kullanımı ve render section'ın sayfalarda ekstra bölümler oluşturmak için nasıl kullanılacağı gösterilir.
- Eğitim, view start ve view import dosyalarının bir sonraki derste inceleneceği bilgisiyle sonlanmakta ve layout'un sadece ASP.NET Core MVC'de değil, tüm UI tabanlı çalışmalarda geçerli olduğu vurgulanmaktadır.
- 00:01Dersin Amacı ve İçeriği
- Bu ders, ASP.NET Core MVC mimarisinde layout yapısını ve web uygulamalarında mimarisel yapıları ele alacaktır.
- Ders kapsamında layout'un ne olduğu, nasıl oluşturulduğu, Render Body, Render Action, Section gibi fonksiyonların işlevleri ve View Start, View Import dosyalarının amacına değinilecektir.
- Ders, layout'un ne olduğu konusuna doğrudan giriş yapmadan, önce layout'un neden ihtiyaç duyulduğu durumları inceleyerek başlayacaktır.
- 02:10Layout'un İhtiyacı
- Örnek bir uygulama geliştirilirken, üç farklı sayfa (Home, Sayfa Bir, Sayfa İki) için aynı menü ve tasarım kullanılması gerektiğinde, her sayfada aynı kodların tekrar edilmesi gerekmektedir.
- Her sayfada tekrar eden HTML yapılarını her sayfaya ayrı ayrı eklemek, logo değiştirmek veya reklam eklemek gibi işlemler için her sayfaya gidip tek tek düzenleme yapmak, yazılımcı açısından verimli değildir.
- Layout yapısı, tekrar eden yapıları bir ortak dosyada tutarak, sadece içerik değişen kısımları ayrı dosyalarda tutmamızı sağlar ve bu sayede uygulamanın yönetilebilirliğini, esnekliğini ve geliştirilebilirliğini artırır.
- 08:04Layout'un Gerçek Hayatta Kullanımı
- Hepsiburada.com gibi büyük web sitelerinde de layout yapısı kullanılmaktadır.
- Hepsiburada'da üst menü ve alt menü (footer) sayfadan sayfaya değişmezken, içerik kısmı kategori veya ürüne göre değişmektedir.
- Layout yapısı, web geliştirme uygulamalarında olmazsa olmaz bir yapıdır ve her web uygulamasında kullanılmak zorundadır.
- 10:19Layout Kavramı ve Önemi
- Layout, kullanıcıya sayfadan sayfaya gezinirken tutarlı bir deneyim sağlayan ortak sayfa taslağıdır.
- Layout, tekrar eden yapıları merkezden yöneterek tutarlılık sağlar ve değişikliklerde unutma ihtimalini azaltır.
- MVC mimarisinde olmasa da, tüm UI tabanlı çalışmalarda layout mekanizması geçerlidir.
- 12:27Layout'un Çalışma Prensibi
- Bir web sitesinde genellikle header, footer ve menü gibi sayfadan sayfaya değişkenlik göstermeyen alanlar vardır.
- Contact gibi sayfadan sayfaya değişkenlik gösteren alanlar ise view'den alınır.
- Layout, değişkenlik gösteren alanları belirlemek için "Render Body" fonksiyonunu kullanır.
- 13:22Layout Oluşturma ve Kullanımı
- Layout dosyası özünde bir view dosyasıdır ve Views klasörünün altında Shared klasöründe oluşturulur.
- Layout dosyası genellikle "Views/Shared/_Layout.cshtml" adıyla oluşturulur, ancak farklı dizinlerde ve isimlerle de oluşturulabilir.
- View'lerin layout dosyasını belirtmesi için @Layout propertisi kullanılır ve layout dosyasının pathi belirtilir.
- 17:13Render Body Fonksiyonu
- Render Body fonksiyonu, layout üzerinde o anki render edilen view'in çıktısının nereye basılacağını belirler.
- View'ler temizlenerek sadece değişkenlik gösterecek alanın çıktısı yazılır.
- Her view render edilirken hangi layout dosyasını baz alacağını belirtmek gerekir.
- 20:33Layout ve Render Body Kavramları
- Layout, sayfadan sayfaya değişmeyen kısımları tek bir dosyadan yönetmeyi sağlar, böylece sistemde sayfa sayısı artsa bile sadece tek bir dosya üzerinden sayfalar ve linkler oluşturulabilir.
- Render body, ilgili view'in çıktısını layout'ta belirli bir alana yerleştirir, böylece değişkenlik gösteren içerikler bu alana render edilir.
- Layout mimarisi, yönetilebilir, az maliyetli ve efektif bir web geliştirme yaklaşımı sunar.
- 22:54Render Body ve Render Section Özellikleri
- Render body, layout'ta render edilen view'lerin nereye basılacağını temsil eder ve bir layout dosyasında en az bir tane render body tanımlaması yapılmalıdır.
- Render section, layout içerisinde isimsel bölümler oluşturmayı sağlayan bir fonksiyondur ve ana render body dışında farklı parçalar oluşturmak için kullanılır.
- Render section'ın ikinci parametresine "false" verilirse, ilgili section'ın kullanılmaması durumunda hata vermez, "true" verilirse (varsayılan) kullanılmak zorundadır.
- 25:52Render Section Kullanımı
- Render section'ın değerleri view dosyalarından "section" ifadesi kullanılarak gönderilebilir, örneğin "section('sol_menu', 'reklam')" şeklinde.
- Render section, sayfadan sayfaya fark eden alanları oluşturmak için kullanılır, özellikle sayfalar arası farklı JavaScript referansları eklemek için faydalıdır.
- View start ve view import dosyalarının detayları sonraki derste incelenecektir.