BUILDING API CLIENTS AND SERVERS WITH PYTHON (AADP) EĞİTİMİ

İstemci ve sunucuyu birlikte geliştirin

requests/httpx istemcileri, FastAPI sunucusu, OAuth 2.0, webhook, WebSocket, retry mantığı, test ve dağıtım

Python ile API istemci ve sunucu geliştirme: requests/httpx, FastAPI, OAuth 2.0, JWT, webhook, WebSocket, retry mantığı, sözleşme testi ve Docker dağıtımı.

4 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

API istemci ve sunucu geliştirme, dayanıklılık ve test

Eğitim, API'nin hem tüketen hem sunan tarafını ele alır. requests ve httpx ile oturum, zaman aşımı, retry ve sayfalama; FastAPI ile sunucu, Pydantic doğrulama ve bağımlılık enjeksiyonu; OAuth 2.0, JWT, webhook imza doğrulama, WebSocket ve arka plan görevleri; pytest, responses/respx ile sözleşme testi ve Docker ile dağıtım işlenir.

Süre ve Format

4 Gün. Her gün dört modül; 1. gün API İstemcisi; 2. gün API Sunucusu; 3. gün Entegrasyon ve Gerçek Zamanlı İletişim; 4. gün Test ve Dağıtım. Her modül uygulamalı alıştırmalarla pekiştirilir.

Seviye

İleri Seviye — API istemcisi ve sunucusunu birlikte geliştirip dayanıklılık, güvenlik ve test konularını derinleştirir.

Öğrenme Metodu

Üç gün boyunca bir SaaS entegrasyon senaryosu üzerinde hem istemci SDK'sı hem de onu besleyen sunucu birlikte yazılır, hata senaryoları kasıtlı olarak simüle edilir.

Neden Bu Eğitim?

🎯Dayanıklı istemci

Retry, zaman aşımı ve hız sınırı yönetimiyle üretimde çökmeyen API istemcileri yazarsınız.

🛠️Güvenli sunucu

OAuth 2.0, JWT ve webhook imza doğrulamasıyla güvenlik açıklarını kapatırsınız.

📈Sözleşme güvencesi

Mock sunucu ve sözleşme testleriyle entegrasyon hatalarını canlıya çıkmadan yakalarsınız.

Anahtar Konular

api istemcisi pythonapi sunucusufastapirequests httpxoauth 2.0jwtwebhookwebsocketsözleşme testipython entegrasyon
“Sağlam bir entegrasyon, hatayı bekleyen bir tasarımdır.”

Ön Koşullar

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

1
Orta düzey Python

Sınıflar, istisna yönetimi, modüller ve paketler konusunda iş deneyimi veya eşdeğer bilgi gereklidir.

2
Geliştirme ortamı

Python 3.10+, Git, Docker (tercihen) ve bir IDE kurulu dizüstü bilgisayar gereklidir.

3
Komut satırı ve Git

Terminal kullanımı, pip/venv ve temel Git komutları bilinmelidir.

4
Ağ ve sunucu bilgisi

HTTP, JSON ve temel veritabanı kavramlarını bilmek uygulamalı bölümleri hızlandırır.

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ı dayanıklı API istemcisi yazar; sayfalama, hız sınırı ve hata yönetimini uygular.
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
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 3
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 4
unittest ve Mock
  • unittest.TestCase, setUp/tearDown ve assert metotları
  • unittest.mock: Mock, MagicMock, patch ve side_effect
  • Bağımlılıkları (HTTP, dosya, zaman) taklit etme
  • Çağrı doğrulama: assert_called_once_with
  • pytest-mock ve responses/requests-mock kütüphaneleri
  • Test double türleri: stub, fake, spy ve mock
Günün hedefiKatılımcı FastAPI ile doğrulamalı, veritabanına bağlı bir sunucu geliştirir.
Modül 1
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 2
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 3
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
Modül 4
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
Günün hedefiKatılımcı webhook, WebSocket ve arka plan görevleriyle uçtan uca entegrasyon kurar.
Modül 1
İ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)
Modül 2
Flask ile Üretim Hazırlığı
  • Blueprint ile büyüyen uygulamayı bölme
  • Yapılandırma sınıfları ve ortam değişkenleri
  • pytest ile Flask test client testleri
  • Loglama, hata yakalama ve Sentry entegrasyonu
  • gunicorn + nginx veya Docker ile yayınlama
  • Güvenlik: SECRET_KEY, güvenli çerez bayrakları, başlıklar
Modül 3
Eşzamanlılık ve Paralellik
  • GIL'in etkisi: CPU-bound ve I/O-bound ayrımı
  • threading ve concurrent.futures.ThreadPoolExecutor
  • multiprocessing ve ProcessPoolExecutor
  • asyncio, async/await ve aiohttp ile eşzamanlı I/O
  • Paylaşılan durum, kilitler ve yarış koşulları
  • Python 3.13 free-threading ve alt yorumlayıcılara genel bakış
Modül 4
API ve Veri Testi Otomasyonu
  • requests + pytest ile REST API test paketi
  • JSON Schema ile yanıt şeması doğrulama
  • Test verisi yönetimi: factory_boy, Faker ve fixture dosyaları
  • Veritabanı doğrulaması ve test sonrası temizlik (teardown)
  • BDD yaklaşımı: behave / pytest-bdd ile Gherkin senaryoları
  • Locust ile temel yük testi ve yanıt süresi eşikleri
Günün hedefiKatılımcı sözleşme testi yazar, güvenlik kontrolünü yapar ve servisi dağıtır.
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
Kapsama, Kalite ve CI
  • coverage.py / pytest-cov ile satır ve dal kapsaması
  • Mutasyon testine giriş (mutmut)
  • Hypothesis ile özellik tabanlı (property-based) test
  • Kod kalitesi: flake8/ruff, black, mypy
  • GitHub Actions ile her push'ta test çalıştırma
  • Flaky test tespiti ve test izolasyonu
Modül 3
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 4
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

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

🔧
API Güvenliği

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

📊
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

🚀
Flask Üretim

Blueprint, test ve gunicorn ile Flask uygulamasını üretime hazırlayabilirsiniz

🔍
API Test Otomasyonu

REST API testlerini şema doğrulaması, test verisi ve yük testiyle genişletebilirsiniz

🛡️
Kalite ve CI

Kapsama ölçümü, statik analiz ve CI hattıyla test sürecini otomatikleştirebilirsiniz

📌
Gözlem ve Dağıtım

Loglama, metrik, Docker ve CI/CD ile üretim dağıtımını yönetebilirsiniz

Kimler İçin Uygundur?

  • Üçüncü parti servislerle entegrasyon kuran
  • kendi servislerini sunan orta-ileri düzey backend geliştiricileri

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Üçüncü parti servislerle entegrasyon kuran ve kendi servislerini sunan orta-ileri düzey backend geliştiricileri.
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.
AADP kısaltması neyi ifade ediyor?
Kısaltma, kursun API istemci ve sunucu geliştirme odağını gösteren bir ad etiketidir; içerik DVA tarafından Python ekosistemine göre hazırlanmıştır.
Asenkron programlama kapsanıyor mu?
Evet, httpx.AsyncClient, asyncio ve FastAPI async uç noktaları ile eşzamanlı istek örnekleri üçüncü günde işlenir.

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. Building API Clients and Servers with Python (AADP) Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

PythonSupport Vector Machine (SVM) Math: Building & Applying SVM Models in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Support Vector Machine (SVM) Math: Building & Applying SVM Models in Python Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Support Vector Machine (SVM) Math: Building & Applying SVM Models in Python eğitimi: sVM'nin matematiksel temelini scikit-learn uygulamalarıyla birleştirin.

Detayları Gör →
PythonTime Series Forecasting with Python Eğitimi
Yazılım Geliştirme Eğitimleri

Time Series Forecasting with Python Eğitimi

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

Time Series Forecasting with Python eğitimi: zaman serisini anlayıp klasik ve ML tabanlı tahmin modelleri kurun. 3 gün uygulamalı lab ve DVA sertifikası.

Detayları Gör →
PythonVeri Analizi için Python Eğitimi
Yazılım Geliştirme Eğitimleri

Veri Analizi için Python Eğitimi

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

Veri Analizi için Python eğitimi: python ile veri okuma, temizleme, özetleme ve görselleştirme yeteneği kazanın. 3 gün uygulamalı lab ve DVA sertifikası.

Detayları Gör →
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 →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn