Dosya ve Dizin Yapısı


    × Bunları biliyor muydunuz?
"Projects/ dizini altında oluşturulan proje dizinleri çalışan host'un ismi ile isimlendirilirse Settings/Projects.php yapılandırma dosyasına tanımlamaya gerek kalmadan otomatik olarak çağrılması sağlanır."


 
 

ZN Framework basit ve anlaşılır dizin yapısına sahiptir. Bu yapı aynı zamanda proje dosyalarınızı daha düzenli bir şekilde kategorize etmenizi sağlar. Böylece dosya karmaşıklığından kurtulup hangi dosya neredeydi algısına kapılmamış olursunuz

 

 

# Kök Dosya ve Dizinleri


ZN Framework'ü kurduğunuzda kök dizinde aşağıdaki dosya ve dizinlerin yer aldığını görürsünüz.

 Projects
 External
 Internal
 Settings
 htaccess
 composer.json
 robots.txt
 zeroneed.php
 zerocore.php
 zerocore

Şimdi yukarıdaki dosya ve dizinlerin ne işe yaradıkları ve alt dosya ve dizin hakkında bilgi verelim.

 

 

# Projects


Bu dizinde projenizi geliştireceğiniz uygulamalar yer alır. İçinde varsayılan olarak Frontend/ ve Backend dizinleri bulunur. Projenizde birden fazla uygulama yapılması düşünülerek böyle bir dizin yapısı tasarlanmıştır.

Alt Dizin ve Dosyalar

Frontend
Backend
htaccess

Frontend/ dizini uygulamanızın yer alacağı ön tanımlı dizindir. İçerisinde uygulama geliştirmenize yönelik gerekli dosyaların saklanacağı dizinler mevcuttur.

Frontend ve Backend

Butchery
Commands
Config
Controllers
Databases
Languages
Libraries
Models
Resources
Routes
Starting
Storage
Views

Butchery

Projeye entegre edilecek temanın dosyalarının bulundurulacağı dizindir. Temanın bu dizine taşınmasından sonra basit bir komutla tema sisteme otomatik olarak entegre edilir. Detaylı kullanım için tıklayınız.

Commands

Konsol üzerinden çalıştırılmak istenen kodların sınıflar halinde bir komut dosyası haline getirildiği dizindir. Bu dizindeki her bir sınıf basit bir komutla konsol üzerinden çalıştırılabilir. Detaylı kullanım için tıklayınız.

Config

Bu dizinde uygulamanıza ait yapılandırma ayar dosyaları yer alır. Veritabanı, Rota gibi ayarlar bu dizin altından yapılır.

Controllers

Bu dizinde PHP kodlarının yer alacağı dosyalar yer alır. Bu bölüm HTML içerikli görünümleri çalıştıracak olan bölümdür. Adres çubuğuna yazılan URI'lerin çalıştıracağı kontrolcüler bu bölümde yer alır. Yani kodların çalıştırılacağı, kontrol edileceği ve yönlendirileceği bölümdür.

home.php : Örnek kullanım için oluşturulmuş kontrolcü dosyasıdır. dosyanın içeriği incelendiğinde Views/ dizini içinde yer alan home/main.wizard.php görünüm dosyasının çalıştırıldığı görülür. Detaylı kullanım için tıklayınız.

Databases

Bu dizinde oluşturmak istediğiniz veritabanı ve tablolarını dizayn etmek için kullanılır. Detaylı kullanım için tıklayınız.

Alt Dizin ve Dosyalar

Actives
Archives

Actives

Aktif kullanılanacak veritabanı ve tablolar.

Archives

Artık kullanılmayacak arşivlenecek veritabanı ve tablolar. 

Languages

Bu dizinde projenizde çoklu dil kullanacaksanız dillere göre çevrilecek kelimelerin veya cümlelerin yer aldığı bölümdür.

Alt Dizin ve Dosyalar

en
tr
ml

en

İngilizce kelimeler bu bölümde yer alır.

tr

Türkçe kelimeler bu bölümde yer alır.

ml

ML kütüphanesi ile oluşturulmuş dil dosyalarının bulunduğu dizindir. ML kütüphanesinin kullanımı için tıklayınız.

Farklı bir kullanacaksanız o dile ait kelimeleri tutacak yeni bir dizin ekleyebilirsiniz. Örnek: Spanish/

Libraries

Bu dizinde uygulamanız için geliştireceğiniz kişisel sınıflarınızın yer alacağı bölümdür. Sistem kütüphanelerinin yanında sizde kişisel veya dışarıdan dahil etmek istediğiniz sınıfları bu dizine atarak kullanabilirsiniz. Sınıflarını bu dizine attıktan sonra herhangi bir ayarlama yapmadan direk çağrım yapabilirsiniz.

Models

Bu dizinde veritabanı kütüphanesini kullanarak oluşturacağınız daha pratik veritabanı kullanım sınıfları yer alır. Genellikle bu dizin uygulamanıza ait veritabanına yönelik sorgularınızın kullanımına yöneliktir. Sorgular sınıflar şeklinde oluşturulmalıdır. Detaylı kullanım için tıklayınız.

Alt Dizin ve Dosyalar

Migrations
Visions

Migrations

Migration kütüphanesi tarafından oluşturulan göç dosyalarının tutulduğu dizindir. Detaylı kullanım için tıklayınız.

Visions

Vizyon dosyalarının tutulduğu dizindir. Detaylı kullanım için tıklayınız.

Resources

Bu dizinde uygulamanıza yönelik js, css, image gibi dosyaların yer alacağı bölümdür. Bu dizin bir çok alt dizinden oluşur.

Alt Dizin ve Dosyalar

Files
Plugins
Templates
Themes
Uploads

Files

Resim, Ikon gibi diğer dosyalar bu dizinde yer alır. 

Plugins

.js ve .css gibi paket dosyalar bu dizinde alır. Örnek: bootstrap/

Templates

Birden fazla sayfada kullanacağınız ortak şablon dosyalar yer alır.

Themes

js. ve .css gibi tema dosyaları bu dizinde yer alır. Örnek: bluetheme/

Uploads

Yüklenen dosyalar bu dizinde yer alır.

Dahil etme yöntemleri ile ilgili detaylı kullanım için tıklayınız.

Routes

Bu dizinde yer alan rota dosyası veya dosyalarına URL yönlendirmeleri yazmak için kullanılır. Detaylı kullanım için tıklayınız.

Starting

Bu dizinde uygulamanızın başlangıcında çalıştırılacak dosyalar yer alır. Genellikle uygulamanın tüm sayfalarında geçerli olan kodlar yer alır. Özellikle tüm sayfalar için sabit ve fonksiyon tanımlamak, kullanıcı giriş kontrolü yapmak için kullanışlı olabilir. Detaylı kullanım için tıklayınız.

Alt Dizin ve Dosyalar

Autoload
Handload

Autoload

Otomatik olarak dahil edilmesini istediğiniz dosyalar yer alır.

Handload

Manuel olarak dahil edilmesini istediğiniz dosyalar yer alır.

Storage

Bu dizinde bazı kütüphaneler tarafından oluşturulan dosyaların tutulduğu dizinler yer alır. Veritabanı yedekleri, log kayıtları gibi dosyalar saklanır.

Alt Dizin ve Dosyalar

Cache
Crontab
DatabaseBackup
Logs

Cache

Cache kütüphanesinin file driver'i tarafından oluşturulan dosyalar saklanır.

Crontab

Crontab kütüphanesi tarafıdan oluşturulan debug.log dosyası saklanır.

DatabaseBackup

DBTool::backup() yöntemi tarafından oluşturulan dosyalar saklanır.

Logs     

Log kayıtları bu dizinde saklanır.

Views 

Bu dizinde uygulamanıza ait HTML içerikli görünümlerin yer alacağı bölümdür. Yani web sayfalarınızın görünümü bu dizin içerisine oluşturulan dosyalarda yer alır. Bu görünüm sayfaları Controllers/ dizini içinde yer alan kontrolcüler tarafından kontrol edilir. Detaylı kullanım için tıklayınız.

.htaccess 

Bu dosya Projects/ dizini ve alt dizinlerine erişimi engellemek için kullanılır.

 

 

# External


Bu dizinde tüm uygulamalarınız için geçerli olacak ortak dosyalar yer alır. Bu dizin sayesinde uygulamalarınızın tamamında ortak kullanımlardan yararlanabilirsiniz.

Alt Dizin ve Dosyalar

Alt dizinlerin ve dosyaların kullanımı Projects/ dizini altındaki yapılarla birebir aynıdır. Ancak burada yer alan dosyalar sistemin tümü için geçerli olur. Şayet 2 aynı dosyadan hem uygulama içinde hemde bu dizinde yer alıyorsa bu durumda uygulama içinde yer alan dosya öncelikli olur.

Commands
Controllers
Languages
Libraries
Models
Resources
Routes
Starting

 

 

# Internal


Bu dizinde sistem ve uygulamalar için geçerli olan ortak dosyalar yer alır. Daha çok sistemin temel yapısını ilgilendirdiği için kullanıcıların müdahale etmesini gerektiren dizin değildir.

Alt Dizin ve Dosyalar

Sisteme ait kütüphaneler bulunmaktadır.

 

 

# Settings (ZN >= 5.1.0)


Internal/Config/ dizininde yer alan temel ayarlar artık bu dizinden yapılacaktır.

Alt Dizin ve Dosyalar

Bu dizine ait yapılandırmalara bu linkten ulaşabilirsiniz.

 

 

# .htaccess


Framework için gerekli olan yapılandırma ayarlarını içerir. İsterseniz Settings/Htaccess.php ayar dosyasından yararlanarak yeni ayarlar ilave edebilirsiniz. Klavuzdan görmek için tıklayınız.

 

 

# composer.json


Bu dosya ile ZN Framework'ü composer ile kurabilirsiniz.

 

 

# robots.txt


Bu dosyada arama motorları tarafından indekslenemeyecek dizin ve dosyaların bilgileri yer alır. Settings/Robots.php ayar dosyasını kullanarak ayarları değiştirebilirsiniz. Klavuzdan görmek için tıklayınız.

 

 

# zeroneed.php


Sistemin açılış sayfasıdır.

 

 

# zerocore


Konsoldan komut çalıştırmak için oluşturulmuştur. Bu dosya sayesinde konsoldan controller, model, class ve function çalıştırabileceksiniz.