Dağıtımlar
"Başlangıç kontrolcüsü üzerinden $this nesnesini data olarak göndererek statik olmayan sınıflara ilgili data üzerinden erişebilirsiniz."
ZN Framework kullanım amacına göre 4 farklı dağıtım sunar. Aşağıda bu dağıtımların ne olduğu hakkında detaylı bilgi verilmiştir.
# Dağıtımlar
OE | Orijinal Edition |
FE | Fullpack Edition |
SE | Single Edition |
CE | Custom Edition |
# Orijinal Edition
Bu dağıtım composer paket yöneticisi kullananlar tarafından tercih edilmesi gereken pakettir. Composer ile kurulum gerektirdiği için doğrudan indirilerek kurulum yapılamaz.
Kimler İçin
● Paket yöneticisi kullananlar
● Sunucu üzerinde çalışanlar
● Birden fazla projeyi aynı sistem üzerinden barındırmak isteyenler
# Fullpack Edition
Bu dağıtım Orijinal Edition ile içerik açısından aynıdır. Bu dağıtımı orijinal dağıtımdan farklı klan yanı composer ile indirilme zorunluluğu olmamasıdır. Yani doğrudan indirilip kurulabilir. Bu dağıtımın versiyon güncellemeleri Devtools projesi veya terminal üzerinden gerçekleştirilebilir.
Kimler İçin
● ZN Framework kullanımına yeni başlayanlar (Tavsiye ediyoruz)
● Doğrudan indirip kurmak isteyenler
● Hosting veya sunucuda çalışanlar
● Birden fazla projeyi aynı sistem üzerinden barındırmak isteyenler
# Single Edition
Bu dağıtım tekil proje geliştirmek için daha sade dizin yapısı nedeni ile tercih edilebilir. Tekil projeden kasıt sadece backend veya frontend çalışmaları ifade eder. Diğer dağıtımlar da bu dağıtımın yaptığı işi yapabilir. Yani bu dağıtımın kullanımı zorunlu değildir. Kurulum için composer paket yöneticisi gereklidir. Devtools projesi bu dağıtımda çalışmaz. Single Edition denmesinin nedeni sistem üzerinde tek bir proje geliştirmeye izin veriyor olmasıdır.
Kimler İçin
● Paket yöneticisi kullananlar
● Hosting veya sunucuda çalışanlar
● Tekil proje geliştirmek isteyenler
# Custom Edition
Bu dağıtım sizlere kendi çalışma yapınızı oluşturmanıza olanak sağlar. Dizin yapısını kendi çalışma tarzınıza göre düzenleyebilirsiniz. ZN Framework'e yeni başlayanlar için tavsiye edilmez. Custom Edition denmesinin nedeni kullanıcıların kendi isteklerine göre dizin yapısı üzerinde değişiklik yapabiliyor olmasıdır.
Kimler İçin
● ZN dizin yapısına hakim olanlar
● Paket yöneticisi kullananlar
● Hosting veya sunucuda çalışanlar
● Kendi dizin yapısını kurmak isteyenler
Kullanımı
Aşağıdaki örnek dizin yapısına benzer bir dizin yapısı kullandığınızı varsayalım;
controllers/
models/
views/
routes/
configs/
librarires/
assets/
uploads/
ZN Framework'ün her bir dizinini temsil eden sabitler bulunur. Kullanacağınız farklı dizinin yol bilgisini bu sabitler için tanımlamanız gerekmektedir. Bunun için index.php dosyası kullanılır.
ZN\ZN::defines
([
'BUTCHERY_DIR' => '',
'CONTROLLERS_DIR' => 'controllers/', # Gereklidir.
'MODELS_DIR' => 'models/',
'VIEWS_DIR' => 'views/',
'ROUTES_DIR' => 'routes/',
'CONFIG_DIR' => 'configs/', # Bu dizinin tanımlanmasını da tavsiye ediyoruz.
'DATABASES_DIR' => '',
'STORAGE_DIR' => '',
'COMMANDS_DIR' => '',
'LANGUAGES_DIR' => '',
'LIBRARIES_DIR' => 'libraries/',
'AUTOLOAD_DIR' => '',
'LAYERS_DIR' => '',
'FILES_DIR' => '',
'TEMPLATES_DIR' => '',
'THEMES_DIR' => 'assets/',
'PLUGINS_DIR' => '',
'UPLOADS_DIR' => 'uploads/',
])::run('CE');
Yukarıdaki dizi içerisinde yer alan anahtarların her birisi proje içeriğine yönelik bir dizini temsil etmektedir. Sadece CONTROLLER_DIR anahtarının tanımlanması zorunludur. Ama yapılandırma için CONFIG_DIR tanımlamasının yapılmasını da tavsiye ediyoruz. Diğer yol bilgileri isteğe bağlıdır. Belirtilmeyen yol bilgileri kök dizin kabul edilir. İlgili kütüphanelerin ayarlarını Config:: kütüphanesi ile yapılandırabilirsiniz. Ayrıca config kullanan her paketin içerisinde o pakete ait yapılandırma sınıfları kullanılabilir. En ideal seçenek config dosyalarının da sisteme dahil edilmesidir.
● Bu güncelleme ile yapılandırma dosyaları settings/ dizini altında dahili gelmektedir. Kullanımı zorunlu olmasa da kullanımını tavsiye ediyoruz. İhtiyaç halinde bu klasör üzerinde isimsel ve konumsal değişiklik yapabilirsiniz.
● index.php artık zeroneed.php olarak kullanılmaktadır.
● İlk çalıştırmada sizi karşılayacak Home.php kontrolcüsü eklenmiştir.
● Bu güncelleme ile dil dosyaları default/languages/ dizini altında dahili gelmektedir.
● Bu güncellemede settings/ default/ dizini altına taşınmıştır.