Teşekkür ederim. Mantık konusunda bir kaç soru sormak istiyorum.
Bir önce ki mesajımda içerik yönetim sisteminin paket yapısını paylaştım. Her bir Build için ServiceProvider oluşturmak doğru değil çünkü esnek bir sistem olmaz yada içerik yönetim sistemimize sonradan eklenecek buildlerde de kullanıcılardan ServiceProvider kaydetmelerini beklemekte yanlış. Haliyle iki kullanım yöntemi sunacağım sizlere.
ServiceProvider oluşturmaz isek, mevcut sınıflar yada sonradan eklenecek tüm paketler kullanılmak istendiği yerde tanımlanmak durumunda.
Facedes yada Service Provider tanımlanmayacağı için bağımlıkları kafanızdan yönetmeniz oldukça güçtür. Bunları tanımlarsa zaten sorun yok.
use Jack\Build\Asset\Asset;
$this->asset = new Asset();
$this->asset->locationPath("assets/site_ismi");
$this->asset->setPath("", "");
Biz ne öneriyoruz;
Jack::Build("Asset")
->locationPath()
->setPath();
Kendi kütüphanenizi Jack'e tanımlamak ve kullanmak.
Jack::Register("Build", "SmsMenager", "src\benim_paketim\build\sms\SmsMenager");
Jack::Build('SmsMenager')
->message()
->number()
->send();
Jack ile sistemde kullanabileceğiniz neler olup olmadığını öğrenebiliyorsunuz.
Jack:getListPackage();
Sonuç
Build | Asset | v1.0.0 | src\jack\build\asset
Build | Template | v1.0.2 | src\jack\build\template
Build | SmsMenager | v2.3.0 | vendor\name\name\src\benim_paketim\build\sms\SmsMenager
Service | Thumb | 4.0.1 | src\jack\service\Thumb
Jack sınıfı Fluent Interface ve Singleton design pattern içeriyor.
Burada Jack yapıcı sınıf, Build ise tutucu method. Size Laravel içerisinde tekrar tekrar instance tanımlaması yapmanızı engelliyor, zincir method sistemi sunuyor ve sonradan Jack::Register ile ekleyeceğiniz kendi kütüphaneleriniz için Laravel ile köprü görevi görüyor. Ve en önemlisi bizim yapımızı olduğu gibi miras alabiliyor extend etmek durumunda kalmadan sadece yapılarda implement etmesi gerekmekte. Bir çok design pattern kullandık. Bu konuda seçimlerimiz başarılı.
Jack sınıfının içeriği oldukça geniş görmeden anlatmak biraz zor. O nedenle iki kullanım konusunda sizin fikirleriniz nelerdir.
Bittikten sonra kit olarak sunacağım. İçerik yönetim sisteminde olmazsa olmaz kütüphaneleri içeriyor. Kendi Cms'nizi inşa ederken büyük oranda rehberiniz olacak.
Yükleniyor...
Bu sitenin tam sürümünü yüklemeye çalışırken bir şeyler ters gitti. Hatayı düzeltmek için bu sayfayı yenilemeyi deneyin.