PHP class yapısı kullanmak
8
●340
- 23-04-2024, 01:40:42Cümleten iyi geceler, PHP class yapısını anlamaya çalışıyorum. Bir konu kafamı oldukça kurcalıyor. Örnek olarak PHP ile çoklu dil desteği ve veri tabanı bağlantısı için 2 ayrı sınıf hazırladığımızı varsayalım. Veri tabanı bağlantı sınıfı içerisinde çoklu dil desteği sınıfını çağırdığımızı düşünelim, böyle bir durumda veri tabanı sınıfını başlattığımız tüm sayfalarda çoklu dil sınıfı da otomatik yüklenir mi, yani veri tabanı sınıfını dahil ettiğim tüm sayfalarda çoklu dil sınıfından bir fonksiyona erişebilir miyim?
- 23-04-2024, 01:46:50Çoklu dil classını oluştururken extends VeritabanıClass şeklinde oluşturursanız dediğiniz gibi dil classını ve içindeki fonksiyonları kullandığınız her yerde veritabanı classından işlem yapabilirsiniz.
Örnek:
class Db{
$siteAdi = “R10”;
}
class Lang extends Db{
//yapacağınız işlemde $siteAdi değişkenini kullanabilirsiniz
} - 23-04-2024, 01:53:10Yanıtınız için teşekkür ederim. Anladığım kadarıyla bu senaryoda yalnızca 1 sınıf dahil edilebiliyor. HTML sıkıştırma vb. tüm sayfalarda çalışması gereken diğer classlar dahil edilemeyecek. Yanlış mı biliyorum?hyakbas adlı üyeden alıntı: mesajı görüntüle
- 23-04-2024, 01:56:06Rica ederim 😊 Üst üste birkaç sınıf extend edebilirsiniz.AKSOYOGLU adlı üyeden alıntı: mesajı görüntüle
Örneğin
class Db{}
class Lang extends Db{}
class hyakbas extends Lang{
//burada yaptığınız işlemlerde hem Db hem Lang classlarına erişebilirsiniz.
}
Telefonda kod editörü açılmıyor biraz karışık oluyor 😊 - 23-04-2024, 02:02:12Hocam vakit ayırıp, yanıt verdiğiniz için teşekkür ederim. ChatGPT bu yaklaşım performans için kötü bir yöntem, "İmplement" yöntemi kullanmanız daha doğru olur diyor. Sebebi ne olabilir, gerçekli payı var mı sizce?hyakbas adlı üyeden alıntı: mesajı görüntüle
- 23-04-2024, 02:09:20Tekrar rica ederim hocam implement konusunda fazla bilgiye sahip değilim açıkçası. Bu yüzden aralarında nasıl bir fark olduğunu bilmiyorumAKSOYOGLU adlı üyeden alıntı: mesajı görüntüle
Edit: Yazan olursa beni de etiketlerseniz sevinirim merak ettim - 23-04-2024, 02:15:01Merhaba über seviye bir kurs değil ama basit sorularınız için şu kaynak işinizi görür.
Ek olarak tüm classlarınızı boot edebilmek için php autoloading kısmını incelemenizi öneririm.
Birden çok metod var;
- https://www.php.net/manual/en/langua...5.autoload.php
- https://opensource.com/article/23/4/...namespaces-php
Tabi bunlara ek olarak;
- namespacing
- psr-4 gibi standartları da incelemeniz gerekir.
Yetmeyecektir
- SOLID prensiplerini araştırmanız gerekir.
Yetmeyecektir.
- Laravel ile alakalı araştırma yapmanızı öneririm.
Yetmeyecektir,
- Bu işin ağa babası eserlerden almanızı şiddetle okumanızı izlemenizi tavsiye edeceğim.
- https://spatie.be/products/laravel-beyond-crud
Yetmeyecektir,
- Stackoverflow ile içli dışlı olmanız lazım gelir.
Bu arada herşeyden evvel İngilizce'niz yok ise bu işe İngilizce öğrenerek başlamnızı öneririm.
Youtube eğitim url : https://www.kisa.link/UzrfT
Not : eğitim sahibi ben değilim
Ve şunu kesinlikle izlemelisiniz. : https://laracasts.com/series/php-for...s-2023-edition
Ek kaynaklar :
- Starndartlar için daha iyi PHP geliştiricilerin hayatımızda var olması için; https://www.php-fig.org
- DI için, https://php-di.org/doc/understanding-di.html
Teşekkürler @ghergedan; ek kaynaklar için. - 23-04-2024, 02:51:40https://www.php-fig.org/
https://php-di.org/doc/understanding-di.html
yukarıda arkadaş güzel bir yol haritası sunmuş. konu hakkında merak sahibi olmanız güzel. tam anlamıyla temel atıyorsunuz şu an. tavsiyem, bu temeli atmadan kod yazmayın. sonra kavramak çok daha zor olacaktır. solid prensipleri araştırın, github'da kod inceleyin, kopyalayın, deneyin. ne yaptığınızın farkında olarak kod yazın. sonra laravel de yazarsınız, java da, c# da. mantığı kavrayın. arkası çorap söküğü gibi gelecektir. - 23-04-2024, 02:59:05php-fig'i eklemeyi unutmuşum. ekliyorum. teşekkürler anımsattığınız için. umarım herkes için fayda sağlar.ghergedan adlı üyeden alıntı: mesajı görüntüle
