Arkadaşlar, Composer'ın autoload özelliği harika bir şey, ama standart PSR-4 veya PSR-0 bazen yetmeyebiliyor. Özellikle proje büyüdükçe, belirli dosyaları veya eski tip sınıfları (classmap) dahil etmek, hatta bazen sadece belirttğim dosyaları yüklemek istiyorum. Mesela, "files" alanıyla global fonksiyonları yüklemek çoğu işimi görüyor, ama bunu daha dinamik hale getirmek mümkün mü? Kendi autoloader'ımı yazmadan, Composer'ın "autoload" bölümünde "exclude-from-classmap" gibi seçenekler var, bunları nasıl etkili kullanıyorsunuz? Bir de, çoklu namespace yapılarında, mesela "App\" ve "Core\" gibi iki farklı kök namespace'i aynı anda PSR-4 ile tanımlarken dikkat etmem gereken bir şey var mı?
Kendi tecrübelerimden bir örnek vereyim: Geçenlerde eski bir projeyi Composer ile yeniden düzenlerken, "classmap" ile tüm eski sınıfları taratmak zorunda kaldım. Ama projede binlerce dosya varken bu işlem her composer dump-autoload'ta uzun sürüyordu. Sonra "classmap" yerine "psr-4" ile yeni sınıfları, "files" ile de kritik bazı fonksiyonları ekleyerek hızlandırdım. Sizce büyük projelerde "classmap" kullanmak hala mantıklı mı, yoksa tamamen PSR-4'e geçip optimize etmek daha mı iyi? Belki de "autoload-dev" bölümünü test sınıfları için kullanmak da bir çözüm olabilir, ama bunun production ortamında bir yük oluşturup oluşturmayacağını merak ediyorum.
Son olarak, Composer'un "optimize-autoloader" seçeneğini kullanan var mı? Özellikle canlıya çıkarken bu seçeneği aktifleştirip, tüm sınıfları tek bir dosyada toplamak performansı ciddi anlamda artırıyor mu? Yoksa hala PSR-4'ün dinamik yapısı daha mı avantajlı? Ve bir de, vendor klasörünü temiz tutmak için "preferred-install" ile "dist" kullanıyorum, bu otomatik yüklemeyi etkiler mi? Deneyimlerinizi ve kendi kurulumlarınızda nasıl bir yol izlediğinizi merak ediyorum.
Kendi tecrübelerimden bir örnek vereyim: Geçenlerde eski bir projeyi Composer ile yeniden düzenlerken, "classmap" ile tüm eski sınıfları taratmak zorunda kaldım. Ama projede binlerce dosya varken bu işlem her composer dump-autoload'ta uzun sürüyordu. Sonra "classmap" yerine "psr-4" ile yeni sınıfları, "files" ile de kritik bazı fonksiyonları ekleyerek hızlandırdım. Sizce büyük projelerde "classmap" kullanmak hala mantıklı mı, yoksa tamamen PSR-4'e geçip optimize etmek daha mı iyi? Belki de "autoload-dev" bölümünü test sınıfları için kullanmak da bir çözüm olabilir, ama bunun production ortamında bir yük oluşturup oluşturmayacağını merak ediyorum.
Son olarak, Composer'un "optimize-autoloader" seçeneğini kullanan var mı? Özellikle canlıya çıkarken bu seçeneği aktifleştirip, tüm sınıfları tek bir dosyada toplamak performansı ciddi anlamda artırıyor mu? Yoksa hala PSR-4'ün dinamik yapısı daha mı avantajlı? Ve bir de, vendor klasörünü temiz tutmak için "preferred-install" ile "dist" kullanıyorum, bu otomatik yüklemeyi etkiler mi? Deneyimlerinizi ve kendi kurulumlarınızda nasıl bir yol izlediğinizi merak ediyorum.