Giriş yapmadınız.

#1 15.01.2014 03:49:58

mertkabadayi
Üye
Yer: İSTANBUL
Kayıtlı: 10.01.2014
Mesajlar: 41
Website

CodeIgniter transformation for Laravel CMS

CodeIgniter ile çalışan gelişmiş bir içerik yönetim sistemini Laravel için PSR-0 ile dönüştürüyoruz. Kolları sıvadık, Allah utandırmasın.

wOkYZQ.jpg

Son düzenleyen mertkabadayi (15.01.2014 03:51:21)

Çevrimdışı

#2 15.01.2014 14:31:39

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,439
Website

Çevrimdışı

#3 16.01.2014 22:12:43

mertkabadayi
Üye
Yer: İSTANBUL
Kayıtlı: 10.01.2014
Mesajlar: 41
Website

Yanıt: CodeIgniter transformation for Laravel CMS

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.

Son düzenleyen mertkabadayi (17.01.2014 01:30:00)

Çevrimdışı

#4 17.01.2014 17:47:49

mertkabadayi
Üye
Yer: İSTANBUL
Kayıtlı: 10.01.2014
Mesajlar: 41
Website

Yanıt: CodeIgniter transformation for Laravel CMS

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.

Çevrimdışı

Forum alt kısmı