FastAPI'de Bağımlılıkları Anlama
Bağımlılık ekleme kavramını ve bunun FastAPI'de kod düzenleme ile yeniden kullanılabilirliği nasıl kolaylaştırdığını keşfedin.
FastAPI'de Bağımlılıkları Anlama, CoddyKit'te ücretsiz bir FastAPI Backend Development Bootcamp dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, FastAPI Backend Development Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. FastAPI Backend Development Bootcamp kursu toplamda 4 dersten oluşur.
What is Dependency Injection?
Benefits of FastAPI DI
FastAPI, kodunuzu şu nedenlerle kapsamlı bir şekilde Bağımlılık Enjeksiyonu (DI) kullanır:
- Yeniden Kullanılabilir: Mantığı bir kez yazın, her yerde kullanın.
- Test Edilebilir: Testler için gerçek servisleri mock (sahte) sürümlerle kolayca değiştirin.
- Temiz: Yol operasyon fonksiyonlarını ana görevlerine odaklanmış tutar.
- Bakımı Yapılabilir: Bağımlılıklardaki değişiklikler uygulamanızın tamamına yayılmaz.
Crafting a Basic Dependency
FastAPI'deki bir bağımlılık genellikle sıradan bir Python fonksiyonudur.
Bu fonksiyon, ana API mantığınız çalışmadan önce gereken herhangi bir kurulum, doğrulama veya kaynak edinimi gerçekleştirebilir. Hatta bir değer döndürebilir.
FastAPI, bu fonksiyonu otomatik olarak çağıracak ve sonucunu uç noktanıza iletecektir.
Injecting into an Endpoint
Depends işlevini kullanarak yol işlem işlevinizde bir parametre olarak bildirirsiniz. Bir istek geldiğinde, FastAPI uç noktanızın parametrelerini kontrol eder, bağımlılıkları çözer ve ardından uç noktanızı sonuçlarla çağırır.Simple Dependency in Action
read_root'tan önce get_message'ı nasıl çağırdığına dikkat edin.from fastapi import FastAPI, Depends
app = FastAPI()
def get_message():
return "Hello from dependency!"
@app.get("/")
async def read_root(message: str = Depends(get_message)):
return {"message": message}
# To run this:
# 1. Save as main.py
# 2. pip install fastapi uvicorn
# 3. uvicorn main:app --reload
# Then visit http://127.0.0.1:8000/Dependencies Can Have Params
Dependency Taking Input
greet_user bir name alan bir bağımlılıktır. Sorguda name sağlanmazsa, varsayılan olarak 'Guest' olur.from fastapi import FastAPI, Depends
app = FastAPI()
def greet_user(name: str = "Guest"):
return f"Hello, {name}!"
@app.get("/greet/")
async def say_hello(greeting: str = Depends(greet_user)):
return {"greeting": greeting}
# To run this:
# uvicorn main:app --reload
# Visit http://127.0.0.1:8000/greet/
# And http://127.0.0.1:8000/greet/?name=CoddyUnderstanding `Depends()`
Depends() işlevidir.- FastAPI'ye şunu söyler: "Hey, bu işlevi çalıştırmadan önce lütfen bu bağımlılığı çözün."
- Bağımlılık işlevinizi (veya çağrılabilirinizi) doğrudan
Depends()'e geçirirsiniz, sonucunu değil. - FastAPI, bağımlılık işlevinizi sizin için çağırmayı halleder.
Use Cases for Dependencies
Bağımlılıklar şunlar için mükemmeldir:
- Veritabanı bağlantıları: Her istek için bir oturum alın.
- Kimlik doğrulama: Kullanıcı kimlik bilgilerini doğrulayın.
- Yetkilendirme: Kullanıcı rollerini/izinlerini kontrol edin.
- Paylaşılan mantık: Birden çok uç noktanın ihtiyaç duyduğu herhangi bir kod.
API'nizi temiz ve odaklanmış tutarlar.
Dependency Concept Check
Recap: Dependencies Unveiled
- Bağımlılıklar, uç noktanızdan önce FastAPI'nin çalıştırdığı fonksiyonlardır.
- Kodunuzu modüler, yeniden kullanılabilir ve test edilebilir tutarlar.
- Bunları
param: Type = Depends(your_dependency_func)kullanarak bildirirsiniz.
Sıkça Sorulan Sorular
“FastAPI'de Bağımlılıkları Anlama” dersi ücretsiz mi?
Evet — “FastAPI'de Bağımlılıkları Anlama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve FastAPI Backend Development Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. FastAPI Backend Development Bootcamp kursu toplamda 4 dersten oluşur.
“FastAPI'de Bağımlılıkları Anlama” dersinde ne öğreneceğim?
Bağımlılık ekleme kavramını ve bunun FastAPI'de kod düzenleme ile yeniden kullanılabilirliği nasıl kolaylaştırdığını keşfedin. FastAPI Backend Development Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
FastAPI Backend Development Bootcamp öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te FastAPI Backend Development Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“FastAPI'de Bağımlılıkları Anlama” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu FastAPI Backend Development Bootcamp dersinde kod yazıp çalıştırabilir miyim?
Evet. Her FastAPI Backend Development Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- FastAPI'de Bağımlılıkları Anlama
- Yaygın Bağımlılıkları Ekleme
- Sınıf Tabanlı ve Yield Bağımlılıkları
- Genel Bağımlılıklar ve Alt Bağımlılıklar