Backend Dersleri MVC (Model-View-Controller) Tasarım Deseni Mantığı
0 / 7
Oturum geri yüklendi 100% kalite
Çalışma alanı

Derse Hazır mısınız?

Satır satır kod yazılışını izleyin ve her satırın açıklamasını dinleyin.

Terminal Çıktısı Hazır
Kod çalıştırıldığında çıktı burada görünecek...
Web Önizleme
HTML çıktı oluştuğunda önizleme burada açılır.
Satır Satır Anlatım
MVC (Model-View-Controller) Tasarım Deseni Mantığı dersinde isteğin veya verinin backend içinde hangi adımlardan geçtiğini, her kod parçasının görevini ve gözlenebilir çıktıyı birlikte inceleyeceğiz.
Bu dersin hedefleri
  • Ders başlığındaki backend kavramını çalışan kodun girdisi ve çıktısıyla ilişkilendirmek.
  • Bir satırın önceki adımdan aldığı veriyi ve sonraki adıma hazırladığı sonucu takip etmek.
  • Hata ayıklama, test ve temel güvenlik kontrollerini akışın doğal parçası olarak uygulamak.
MVC (Model-View-Controller) Tasarım Deseni Mantığı beginner 25 dk çalışma
Bu dersin ana sorusu: MVC (Model-View-Controller) Tasarım Deseni Mantığı konusunu çalışan bir backend örneği üzerinden anlamak.
Öğrenme özeti: MVC (Model-View-Controller) Tasarım Deseni Mantığı dersinin temel fikri, backend kodunu yalnızca çalıştırmak değil; girdinin nasıl işlendiğini, neden o sıranın seçildiğini ve sonucun nasıl doğrulandığını görebilmektir.
Öğrenme rotası ve transfer görevi
  1. Problemi tanı: Backend örneğinin girdisini, görevini ve beklenen çıktısını bir cümleyle yazın.
  2. Akışı izle: Kodun veriyi hangi sırayla aldığını, dönüştürdüğünü ve döndürdüğünü satır satır takip edin.
  3. Güvenli değiştir: Küçük bir değişiklik yapın; normal, hatalı ve sınır girdilerle sonucu test edin.
Kendin dene: Örneğin ana akışını bozmadan yeni bir girdi alanı veya hata senaryosu ekleyin. Değişen satırları, beklenen sonucu ve güvenlik kontrolünü yazılı olarak açıklayın.
Kavram sözlüğü ve sık karıştırılanlar
  • Request: İstemcinin backend sunucusundan bir işlem veya veri istediği iletişimdir.
  • Response: Backendin isteğe karşı döndürdüğü durum, başlık ve veri sonucudur.
  • Validation: Girdinin beklenen türde, biçimde ve iş kuralına uygun olup olmadığını kontrol etmektir.
  • Log: Çalışma sırasında ne olduğunu izlemek için kaydedilen tanı bilgisidir.
Sık karıştırılanlar: Backend kodu yalnızca ekrana çıktı basmaz; veri alır, iş kuralı uygular, hata yönetir ve istemciyle sözleşme kurar. 200 veya başarılı görünen bir yanıt, iş kuralının doğru uygulandığını tek başına kanıtlamaz.
Nasıl çalışacağız: Önce backend örneğinin hangi girdiyi aldığını belirleyin. Sonra kodun veriyi hangi sırayla işlediğini, hangi noktada karar verdiğini ve istemciye/terminale ne döndürdüğünü satır satır takip edin.
Hata ayıklama: Hatayı yeniden üretin; istek girdisini, logu, dosya-satır bilgisini ve beklenen çıktıyı kaydedin. Akışı küçük parçalara ayırıp tek değişiklikle tekrar deneyin.
Test yaklaşımı: Normal verinin yanında boş, hatalı biçimli, sınır ve yetkisiz girdileri de deneyin. Hem status/çıktıyı hem de veri değişikliğini doğrulayın.
Güvenlik: Kullanıcı girdisini doğrulayın, parametreli sorgu kullanın, kimlik doğrulama ve yetkilendirmeyi ayırın; parola, token ve kişisel verileri koda veya loga yazmayın.
Sürdürülebilirlik: İş kurallarını controller, servis ve veri erişimi gibi sorumluluklara ayırın; anlamlı isimler, küçük fonksiyonlar, ortak hata yanıtı ve test edilebilir sınırlar kullanın.
Ders özeti: MVC (Model-View-Controller) Tasarım Deseni Mantığı konusunu; girdi, backend işlemi, veri akışı, hata durumu, güvenlik kontrolü ve çıktı arasındaki ilişkiyle kendi cümlelerinizle açıklayın.
1
class Controller {
class — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: class Controller {: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Satırın görevi: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: Bu satır bir sınıf veya tip bloğunun sınırını başlatır; içindeki method ve alanlar bu bloğun kapsamında değerlendirilir.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
class Controller { kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
İlgili PHP 8 standart sözdizimi yapısı.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": "Denetleyici (Controller) sınıfı."
}
Değişiklikler (Diff)
+ Eklendi:
+ class Controller {
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Kodun okunabilir ve sürdürülebilir olması için standart isimlendirme ve yapılandırma kurallarına uyun.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Denetleyici (Controller) sınıfı tanımlıyoruz.
2
public function index ( ) {
index() — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: public function index() {: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Zihninde canlandır: Bir tarif yazıldı ama henüz uygulanmadı; çağrıldığında çalışacak.
Günlük hayattan: Fonksiyon bir tariftir: adı vardır, çağrılınca uygulanır.
function Yeniden kullanılabilir bir davranış tarifini başlatır.
Satırın görevi: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının bulunduğu backend akışındaki kapsamı ve sonraki adıma taşıdığı sonucu belirler.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
public function index() { kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
function fonksiyonAdi($parametre = 'varsayilan') { // işlemler ... return $deger; }
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": "Varsayılan metot."
}
Değişiklikler (Diff)
+ Eklendi:
+ public function index() {
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Fonksiyon isimlerini işlevlerine uygun, camelCase standartlarında ve eylem belirten kelimelerle seçin.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Varsayılan metot.
3
$model = new UyeModel ( ) ;
new Model — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: $model = new UyeModel();: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Zihninde canlandır: Bellekte bir değer isimlendi; sonraki satırlar bu isimle ona ulaşacak.
Günlük hayattan: $ ile başlayan isim, etiketli bir kutudur: etiketten kutuya erişirsin.
$ PHP değişkenlerini $ önekiyle tanır.
= Sağdaki değeri soldaki isme bağlar; karşılaştırma == / === ile yapılır.
; İfadenin bittiğini bildirir.
Tür ipucu/varsayılan değer eklemek (örn. function x(string $a = '')) çağrı hatalarını derleme anında yakalar.
Satırın görevi: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının bulunduğu backend akışındaki kapsamı ve sonraki adıma taşıdığı sonucu belirler.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
$model = new UyeModel(); kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
$degiskenAdi = deger; Değşişşken isimleri $ ile başşlar, rakamla başşlayamaz ve boşşluk içeremez.
Bellek Durumu (Variables)
Değişken Tip Değer Adres Ref
$model mixed new UyeModel() xa17a 1
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": "Model nesnesi oluşturur."
}
Değişiklikler (Diff)
+ Eklendi:
+ $model = new UyeModel();
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Değşişşken isimlerinin açıklayıcı olmasına özen gösterin. Türkçe karakter kullanımından kaçının.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Model nesnesini başlatıyoruz.
4
$uyeler = $model -> tumUyeler ( ) ;
getData — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: $uyeler = $model->tumUyeler();: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Zihninde canlandır: Bellekte bir değer isimlendi; sonraki satırlar bu isimle ona ulaşacak.
Günlük hayattan: $ ile başlayan isim, etiketli bir kutudur: etiketten kutuya erişirsin.
$ PHP değişkenlerini $ önekiyle tanır.
= Sağdaki değeri soldaki isme bağlar; karşılaştırma == / === ile yapılır.
-> Nesnenin metoduna/özniteliğine ulaşır.
; İfadenin bittiğini bildirir.
Tür ipucu/varsayılan değer eklemek (örn. function x(string $a = '')) çağrı hatalarını derleme anında yakalar.
Satır sonu noktalı virgül (;) unutulur
Belirti: Parse error: syntax error, unexpected ... — dosya hiç çalışmaz.
Neden: PHP her ifadeyi ; ile bitirir.
Çözüm: Hata mesajındaki satır çoğu zaman bir önceki satırı işaret eder; oraya bak.
Satırın görevi: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının bulunduğu backend akışındaki kapsamı ve sonraki adıma taşıdığı sonucu belirler.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
$uyeler = $model->tumUyeler(); kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
$sonuc = $sayi1 + $sayi2; Saıdaki ifade önce hesaplanır, ardından soldaki değişkene atanır.
Bellek Durumu (Variables)
Değişken Tip Değer Adres Ref
$uyeler mixed $model->tumUyeler() x9472 1
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": "Veritabanından veriyi çeker."
}
Değişiklikler (Diff)
+ Eklendi:
+ $uyeler = $model->tumUyeler();
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Uzun hesaplamalarda ara sonuçları ara değişkenlere atamak kodu hem okunabilir hem de debug edilmesi kolay kılar.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Veritabanından veriyi çeker.
5
include "views/uyeler.php" ;
include View — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: include "views/uyeler.php";: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
; İfadenin bittiğini bildirir.
. Metinleri birleştirir (JS teki + gibi).
Satırın görevi: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının backend görevi
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırının bulunduğu backend akışındaki kapsamı ve sonraki adıma taşıdığı sonucu belirler.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
include "views/uyeler.php"; kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
İlgili PHP 8 standart sözdizimi yapısı.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": "Arayüz (View) dosyasını yükler."
}
Değişiklikler (Diff)
+ Eklendi:
+ include "views/uyeler.php";
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Kodun okunabilir ve sürdürülebilir olması için standart isimlendirme ve yapılandırma kurallarına uyun.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
View dosyasını dahil ederek verileri aktarıyoruz.
6
}
Kapanğş — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: Açılmış bloğu kapatan süslü parantez. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: }: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Satırın görevi: Açılmış bloğu kapatan süslü parantez
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: Bu kapanış parantezi, en yakın açık sınıf, method veya koşul bloğunu kapatır. Fazladan ya da eksik yazılırsa blok kapsamı ve derleme sonucu bozulur.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
} kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
İlgili PHP 8 standart sözdizimi yapısı.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": ""
}
Değişiklikler (Diff)
+ Eklendi:
+ }
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Kodun okunabilir ve sürdürülebilir olması için standart isimlendirme ve yapılandırma kurallarına uyun.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: Açılmış bloğu kapatan süslü parantez. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: }: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
7
}
Kapanğş — MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: Açılmış bloğu kapatan süslü parantez. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: }: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
  1. Önce MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasının hangi girdiyi aldığını ve MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki görevini söyleyin.
  2. Sonra sözdizimini parçalara ayırın; hangi anahtar kelime, değişken veya parametrenin neyi belirlediğini gösterin.
  3. Çalışma zamanında verinin bu satırdan önceki ve sonraki halini karşılaştırın; terminal/response sonucunu kontrol edin.
  4. Aynı fikri boş, hatalı veya farklı bir değerle deneyin; hata oluşursa mesajı okuyup tek değişiklikle yeniden test edin.
Yaygın hata: Bu adımda en yaygın hata, MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı parçasını MVC (Model-View-Controller) Tasarım Deseni Mantığı bağlamından koparıp yalnızca ezberlemektir. Önce girdiyi doğrulayın, sonra beklenen çıktıyı küçük bir testle karşılaştırın.
Şimdi sen dene: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı üzerinde küçük bir değişiklik yapın; sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında hangi çıktının değişmesini beklediğinizi yazın, sonra normal ve hatalı bir girdiye karşı çalıştırın.
Satırın görevi: Açılmış bloğu kapatan süslü parantez
Kavram: MVC (Model-View-Controller) Tasarım Deseni Mantığı
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı satırını yalnızca sözdizimiyle değil, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içindeki göreviyle okuyun.
Blok kapsamı: Bu kapanış parantezi, en yakın açık sınıf, method veya koşul bloğunu kapatır. Fazladan ya da eksik yazılırsa blok kapsamı ve derleme sonucu bozulur.
Neden şimdi: Bu parça, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması akışında sonraki adımın ihtiyaç duyduğu girdiyi hazırlamak için şimdi kuruluyor.
Kod etiketlerini tek tek incele
} kod parçası
Ne yapar? Bu satır backend akışının bir parçasını yürütür.
Neden burada? Önceki girdiyi sonraki adıma taşımak için bu konumda bulunur.
Silinirse: İlgili ara sonuç veya çıktı oluşmaz.
MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir.
backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir.
İlgili PHP 8 standart sözdizimi yapısı.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
    "type": "ExpressionStatement",
    "expression": ""
}
Değişiklikler (Diff)
+ Eklendi:
+ }
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: SyntaxError
Noktalı virgülü veya parantezleri kontrol edin.
Kodun okunabilir ve sürdürülebilir olması için standart isimlendirme ve yapılandırma kurallarına uyun.
Girdiyi doğrulamadan bu satırın ürettiği sonucu doğru kabul etmek.
Bu adımı hiç bilmeyen biri için okuyalım: MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı, sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması içinde bu örneğin ilgili görevini üstlenir. Satırın rolü: Açılmış bloğu kapatan süslü parantez. Sözdizimi açısından MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır. Çalışma sırasında backend çalışma zamanı bu kod parçasını işler ve sunucu tarafı kodun girdiyi işlemesi, doğru çıktıyı üretmesi ve güvenli biçimde çalışması için sonraki adıma taşınacak ara sonucu üretir. Gözlenebilir ara sonuç şudur: Bu adımın sonunda MVC (Model-View-Controller) Tasarım Deseni Mantığı içindeki bu kod satırı için gerekli ara durum oluşur; işlenmiş veri, terminal çıktısı veya istemciye dönen backend yanıtı gözlemlenebilir hale gelir. Bir sonraki satır bu sonucu kullanır. Kod parçaları: }: Bu satır backend akışının bir parçasını yürütür. Bu satırın neden burada olduğunu anlamak için girdiyi ve bir sonraki satıra taşınan değeri birlikte kontrol edin.
Konsol 0 log

Seslendirme Ayarları

Kredi