BUILD AND IMPLEMENT APIS WITH PYTHON EĞİTİMİ

Çalışan bir API'yi sıfırdan inşa edin

FastAPI ve Flask ile CRUD uç noktaları, SQLAlchemy veri katmanı, Alembic göçleri, JWT güvenliği, test ve Docker ile yayın

FastAPI ve Flask ile REST API geliştirme: SQLAlchemy veri katmanı, Alembic, JWT, pytest testleri ve Docker ile yayına hazırlama içeren uygulamalı Python eğitimi.

3 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

API geliştirme ve uygulama adımları

Eğitim, Python ile üretime yakın bir API geliştirmeyi adım adım uygular. FastAPI ve Flask ile rota tanımı, Pydantic doğrulama, SQLAlchemy ORM, Alembic göçleri, sayfalama ve filtreleme, JWT ile kimlik doğrulama, pytest testleri, Docker imajı ve sağlık uç noktalarıyla yayına hazırlık yapılır; her aşama çalışan kodla doğrulanır.

Süre ve Format

3 Gün. Her gün dört modül; 1. gün API Temelleri ve Çerçeveler; 2. gün Veri Katmanı ve Güvenlik; 3. gün Test, Güvenlik ve Yayın. Her modül uygulamalı alıştırmalarla pekiştirilir.

Seviye

Orta Seviye — Flask ve FastAPI ile veritabanına bağlı, kimlik doğrulamalı API'leri uçtan uca geliştirmeyi kapsar.

Öğrenme Metodu

Katılımcılar tek bir envanter/sipariş API'sini gün gün büyüterek geliştirir; her gün sonunda çalışan, test edilmiş bir sürüm elde edilir.

Neden Bu Eğitim?

🎯Çalışan ürün

Eğitim sonunda veritabanına bağlı, güvenli ve test edilmiş bir API'niz hazır olur.

🛠️Çerçeve seçimi

Flask ve FastAPI'nin güçlü yönlerini karşılaştırarak projeniz için doğru seçimi yaparsınız.

📈Dağıtım becerisi

Docker ile paketleme ve sağlık uç noktalarıyla yayına alma sürecini öğrenirsiniz.

Anahtar Konular

python api geliştirmefastapiflask apisqlalchemyalembicjwtrest apipytest apidocker apipython backend eğitimi
“API yazmak kolaydır; sürdürülebilir API yazmak ustalıktır.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Python bilgisi

Fonksiyon, sınıf ve modül kavramlarını içeren orta düzey Python bilgisi beklenir.

2
Web temelleri

HTML'in ne olduğuna ve tarayıcının sunucudan sayfa istediğine dair genel bilgi faydalıdır.

3
Geliştirme ortamı

Python 3.10+, pip, venv ve VS Code yüklü bir bilgisayar ile modern bir tarayıcı gereklidir.

4
Komut satırı

Terminal komutları (cd, ls/dir, pip) ve temel Git kullanımı konusunda rahatlık önerilir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı HTTP/REST temelini kurar ve Flask ile FastAPI'de ilk uç noktaları yazar.
Modül 1
HTTP ve REST Temelleri
  • HTTP istek/yanıt yapısı: metot, başlık, gövde, durum kodu
  • GET, POST, PUT, PATCH, DELETE ve idempotentlik
  • REST kısıtları: kaynak (resource) odaklı URL tasarımı
  • Durum kodu seçimi: 200, 201, 204, 400, 401, 403, 404, 409, 422, 500
  • İçerik müzakeresi: Accept ve Content-Type başlıkları
  • curl ve HTTPie ile elle istek atma
Modül 2
Flask ile API Geliştirme
  • Flask uygulaması, route ve methods parametresi
  • request.get_json(), jsonify ve hata işleyiciler (errorhandler)
  • Blueprint ile modüler API yapısı
  • Flask-RESTful / flask-smorest ile kaynak sınıfları
  • CORS ayarı ve flask-cors
  • gunicorn ile üretim çalıştırma
Modül 3
FastAPI ile API Geliştirme
  • FastAPI uygulaması, path/query parametreleri ve tip ipuçları
  • Pydantic modelleriyle istek/yanıt doğrulama
  • Bağımlılık enjeksiyonu (Depends) ve güvenlik şemaları
  • async def uç noktaları ve ne zaman fayda sağladığı
  • Otomatik OpenAPI / Swagger UI dokümantasyonu
  • uvicorn ile çalıştırma ve APIRouter ile yapılandırma
Modül 4
API Tasarım İlkeleri
  • Kaynak adlandırma, çoğul isimler ve iç içe kaynaklar
  • Sürümleme stratejileri: URL, başlık ve içerik tabanlı
  • Hata yanıtı standardı ve RFC 7807 problem details
  • HATEOAS, ETag ve koşullu istekler (If-None-Match)
  • Hız sınırlama (rate limiting) ve idempotency key
  • OpenAPI 3 sözleşmesi ile tasarım-önce (design-first) yaklaşım
Günün hedefiKatılımcı API'yi veritabanına bağlar, kimlik doğrulama ekler ve doğrulama kurallarını uygular.
Modül 1
Veri Katmanı: SQLAlchemy ve Doğrulama
  • SQLAlchemy ORM modelleri, session ve sorgu API'si
  • CRUD uç noktaları ve transaction sınırı
  • Alembic ile şema göçleri (migration)
  • Pydantic / marshmallow ile serileştirme ve doğrulama
  • İlişkiler (one-to-many, many-to-many) ve N+1 sorgu sorunu
  • Sayfalama, filtreleme ve sıralama parametreleri
Modül 2
Kimlik Doğrulama ve Yetkilendirme
  • Basic auth, API anahtarı ve Bearer token farkı
  • OAuth 2.0 yetki kodu ve client credentials akışları
  • JWT yapısı: header, payload, imza ve süre (exp)
  • PyJWT ile token üretme ve doğrulama
  • Parola saklama: bcrypt / passlib ile hash
  • Secret yönetimi: ortam değişkeni, .env ve kodda anahtar tutmama
Modül 3
requests ile API İstemcisi
  • requests.get/post, params, json= ve headers kullanımı
  • Session nesnesi, bağlantı havuzu ve çerez yönetimi
  • timeout, raise_for_status() ve hata sınıfları
  • Yeniden deneme: urllib3 Retry ve HTTPAdapter
  • Sayfalama (pagination) ve hız sınırı (429, Retry-After) yönetimi
  • httpx ile eşzamansız (async) istemci
Modül 4
İstemci ve Sunucu Entegrasyonu
  • Sunucu uç noktasını gerçek istemci kodu ile uçtan uca çağırma
  • WebSocket ve Server-Sent Events ile anlık veri akışı
  • Webhook alma, imza doğrulama ve yeniden deneme
  • Arka plan görevleri: Celery / BackgroundTasks
  • Üçüncü parti API için SDK sarmalayıcı sınıf yazma
  • Sözleşme testi ve mock sunucu (responses, respx)
Günün hedefiKatılımcı API'yi test eder, güvenlik kontrolleri yapar ve Docker ile yayına hazırlar.
Modül 1
pytest Temelleri
  • Test keşfi, assert yeniden yazımı ve çıktıyı okuma
  • Fixture'lar, scope (function/module/session) ve conftest.py
  • parametrize ile veri güdümlü testler
  • pytest.raises ile istisna beklentisi
  • Marker'lar: skip, xfail, özel işaretler
  • tmp_path, monkeypatch ve capsys yerleşik fixture'ları
Modül 2
API Test, Güvenlik ve Yayın
  • pytest + Flask test client / FastAPI TestClient ile uç nokta testleri
  • Postman / Newman ile koleksiyon otomasyonu
  • OWASP API Top 10: BOLA, aşırı veri ifşası, mass assignment
  • Girdi doğrulama, SQL enjeksiyonu ve güvenli başlıklar
  • Docker imajı ve docker-compose ile servis paketleme
  • Loglama, izleme ve sağlık (health) uç noktaları
Modül 3
Gözlemlenebilirlik ve Dağıtım
  • logging yapılandırması, JSON log ve korelasyon kimliği
  • Prometheus metrikleri, OpenTelemetry izleri ve alarm
  • Dockerfile en iyi uygulamalar: çok aşamalı derleme, root olmayan kullanıcı
  • CI/CD: GitHub Actions / GitLab CI ile test-derle-yayınla
  • Kubernetes dağıtımı, sağlık yoklamaları ve yapılandırma
  • Güvenlik taraması: bandit, pip-audit, SBOM
Modül 4
Tip Güvenliği ve Kod Kalitesi
  • Tip ipuçları (typing), Protocol, Generic ve TypedDict
  • mypy / pyright ile statik tip denetimi
  • dataclasses ve Pydantic modelleri
  • Docstring standartları ve Sphinx / MkDocs ile dokümantasyon
  • Tasarım kalıpları: Factory, Strategy, Adapter, Repository
  • Kod inceleme (code review) ve teknik borç yönetimi

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
HTTP ve REST

HTTP semantiği ve REST kısıtlarına uygun uç noktaları tasarlayabilirsiniz

🔧
FastAPI

FastAPI ve Pydantic ile doğrulamalı, otomatik dokümante API yazabilirsiniz

📊
API Tasarımı

Sürümleme, hata standardı ve OpenAPI sözleşmesiyle API tasarlayabilirsiniz

🧩
API Güvenliği

API anahtarı, OAuth 2.0 ve JWT ile kimlik doğrulama akışlarını uygulayabilirsiniz

🚀
requests İstemcisi

Zaman aşımı, yeniden deneme ve sayfalama ile dayanıklı API istemcisi yazabilirsiniz

🔍
pytest Ustalığı

Fixture, parametrize ve marker ile bakımı kolay test paketleri yazabilirsiniz

🛡️
API Test ve Yayın

API'yi pytest ile test edip güvenlik kontrolleri yaparak Docker ile yayınlayabilirsiniz

📌
Tip ve Kalite

Tip ipuçları, mypy ve tasarım kalıplarıyla kurumsal kalitede kod yazabilirsiniz

Kimler İçin Uygundur?

  • Backend geliştirici adayları
  • mevcut Python bilgisini web servislerine taşımak isteyen yazılımcılar

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Backend geliştirici adayları, mevcut Python bilgisini web servislerine taşımak isteyen yazılımcılar.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası almaya hak kazanır; sertifika DVA'nın kendi katılım ve başarı belgesidir.
Eğitim için hangi yazılımlar gereklidir?
Python 3.10 veya üzeri, bir kod editörü (VS Code ya da PyCharm) ve eğitimin konusuna göre listelenen paketler yeterlidir; kurulum adımları ilk oturumda birlikte kontrol edilir.
Veritabanı olarak ne kullanılıyor?
Başlangıçta SQLite, sonrasında PostgreSQL bağlantı dizesiyle çalışılır; Alembic ile şema göçleri uygulanır.
Eğitim sonunda elimde ne olacak?
Kimlik doğrulamalı, test edilmiş ve Docker ile paketlenmiş çalışan bir API projesi kod deposu olarak elinizde olur.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Build and Implement APIs with Python Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
KonuPython
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

PythonVeri Görevleri için Python: Pandas ve Polars ile Temel ve Orta Düzey Eğitimi
Yazılım Geliştirme Eğitimleri

Veri Görevleri için Python: Pandas ve Polars ile Temel ve Orta Düzey Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Veri Görevleri için Python: Pandas ve Polars ile Temel ve Orta Düzey eğitimi: i̇ki popüler kütüphaneyle veri görevlerini temelden orta düzeye taşıyın. 3 gün uyg

Detayları Gör →
PythonWeb Applications with Django: Building Multiple Apps in a Project Eğitimi
Yazılım Geliştirme Eğitimleri

Web Applications with Django: Building Multiple Apps in a Project Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Web Applications with Django: Building Multiple Apps in a Project eğitimi: django projesini sürdürülebilir, modüler uygulamalara bölün. 3 gün uygulamalı.

Detayları Gör →
PythonWeb Applications with Django: Developing REST APIs Eğitimi
Yazılım Geliştirme Eğitimleri

Web Applications with Django: Developing REST APIs Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Web Applications with Django: Developing REST APIs eğitimi: dRF ile üretim kalitesinde REST API geliştirin. 3 gün uygulamalı lab ve DVA Katılım ve Başarı Sertif

Detayları Gör →
PythonWeb Applications with Django: Introducing the Django Web Framework Eğitimi
Yazılım Geliştirme Eğitimleri

Web Applications with Django: Introducing the Django Web Framework Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Web Applications with Django: Introducing the Django Web Framework eğitimi: django'nun temel bileşenlerini bir uygulama üzerinde birlikte kullanın. 2 gün uygula

Detayları Gör →
PythonWeb Applications with Django: Models and Class-based Views Eğitimi
Yazılım Geliştirme Eğitimleri

Web Applications with Django: Models and Class-based Views Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Web Applications with Django: Models and Class-based Views eğitimi: model katmanı ile class-based view'ları birlikte güçlendirin. 2 gün uygulamalı lab ve DVA se

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn