Yii2 Framework Türkçe Eğitimleri yazı dizimde daha önceden Framework’lerin genel yapıları ve Yii Framework hakkında genel bilgiler verip, Windows ortamında kurulumunu anlattım. Bu yazımda ise pratik olarak Yii2 Framework’ünü daha iyi anlamamız açısından mimarisi hakkında bilgiler vereceğim.
Yii Framework Uygulama Mimarisi
Yii Framework’ün en önemli özelliklerinden biri de PHP içerisine MVC teknolojisini dahil etmesidir. Bu özellik sayesinde daha iyi yapılandırılmış bir uygulama ortamı ve anlaşılır kod sunma olanaklarını sağlarken aynı zamanda PHP’nin eksikleri olan güvenlik ve otomatik kod oluşturma gibi bir çok alanda basitleştirme yaparak yazılım geliştiricilere kolaylık sağlar.
Bir Yii uygulamasında tüm trafiği ve kontrolü tek bir dosya üzerinden gerçekleştirirsiniz: /web/index.php
.
Bu yerleşik dosya Yii çekirdeğini ve tüm bağımlılıkları (dependencies) yükler ve ardından uygulamanızı çalıştırır.
Kurulum içerisinde varsayılan olarak bir controller’da gelir. /controllers/SiteController.php
dosyasındeki index metodu şu şekilde gelir:
Controller’lar tüm erişimi yönetirler. Model’leri kullanırlar ve Görünümleri oluştururlar. Genel olarak iş mantığının büyük kısmı model ve controller’lara yerleştirilmeli. Görünüm (View) ‘lerde ise diğer alanlara nazaran daha basit şablon işlemler yapılmalıdır.
Yerleşik olarak gelen /views/site/index.php
dosyasındaki görünüm için ise bir layout şablonu kullanır. Bu şablona /views/layouts/main.php
dosyasından ulaşırsınız. Bunu bir masterpage olarak düşünebilirsiniz. Kod tekrarını ve düzenlemeyi kolaylaştırmak adına tasarımın statik kısımlarını bir yerde tuttuğunuzu ve dinamik kısımlarını ise bu şablonun belirli yerlerine çağırdığınızı düşünün. main.php
dosyasının bir kısmında aşağıdaki kodlara rastlanır.
Bu kodda ekrana bir $content
değişkeninin yazdırıldığına dikkat etmişsinizdir. Burada /view/site/index.php
tarafından oluşturulan kodlar ekrana yazdırılır.
Bu içeriği oluştururken kullandığım kaynaklar: