|
1. hafta
|
|
Derse giriş, ders işleyişi ve değerlendirme yönteminin tanıtılması, modern yazılım sistemlerinde servis kavramının önemi, monolitik ve dağıtık mimarilerin karşılaştırılması, geliştirme ortamının kurulumu ve API istemcilerinin tanıtılması.
|
|
|
2. hafta
|
|
Servis yönelimli mimarinin temel ilkeleri, mikroservis kavramı ve avantajları, istemci sunucu iletişim modeli, senkron ve asenkron iletişim farkları, gerçek dünyadan örnek mimari incelemeleri, basit bir servis örneğinin uygulamalı olarak çalıştırılması.
|
|
|
3. hafta
|
|
HTTP protokolünün yapısı ve çalışma biçimi, istek yanıt döngüsünün ayrıntılı incelenmesi, HTTP yöntemleri ve kullanım amaçları, istek ve yanıt başlıklarının anlamı, tarayıcı geliştirici araçları ve ağ paneli üzerinden gerçek isteklerin gözlemlenmesi.
|
|
|
4. hafta
|
|
HTTP durum kodlarının kategorileri ve anlamları, başarı, yönlendirme, istemci ve sunucu hata kodları, veri biçimleri ve içerik müzakeresi, JSON ve XML karşılaştırması, durum kodlarının doğru kullanımı üzerine uygulamalı örnekler.
|
|
|
5. hafta
|
|
REST mimarisinin tanımı ve kısıtlamaları, kaynak yönelimli tasarım yaklaşımı, uç nokta adlandırma ilkeleri ve iyi tasarım örnekleri, HTTP yöntemleri ile CRUD işlemlerinin eşleştirilmesi, basit bir REST API örneğinin tasarlanması ve uygulanması.
|
|
|
6. hafta
|
|
API sürümleme stratejileri, URL tabanlı ve başlık tabanlı sürümleme karşılaştırması, geriye dönük uyumluluk ilkeleri, kullanım dışı bırakma süreçleri, durumsuz ve önbelleklenebilir API tasarımı, sayfalama ve süzme yaklaşımları, uygulamalı API tasarım atölyesi.
|
|
|
7. hafta
|
|
JSON veri biçiminin yapısı ve sözdizimi, JSON ayrıştırma ve oluşturma işlemleri, JSON şema ile veri doğrulama, iç içe yapılar ve dizilerle çalışma, istemci tarafında ve sunucu tarafında JSON kullanım örnekleri, veri biçimlendirme ve dönüşüm uygulamaları.
|
|
|
8. hafta
|
|
Ara sınav.
|
|
|
9. hafta
|
|
Kimlik doğrulama temelleri, kimlik doğrulama ve yetkilendirme ayrımı, API anahtarı ile basit kimlik doğrulama, temel kimlik doğrulama yöntemi, belirteç tabanlı kimlik doğrulama mantığı, JSON web belirteçlerinin yapısı, oturum açma akışının uygulamalı olarak gerçekleştirilmesi.
|
|
|
10. hafta
|
|
OAuth çerçevesinin tanıtımı, OAuth rolleri ve akış türleri, yetkilendirme kodu akışı, üçüncü taraf uygulamalara yetki verme süreçleri, güvenli belirteç saklama yaklaşımları, gerçek bir OAuth sağlayıcısı ile uygulamalı entegrasyon çalışması.
|
|
|
11. hafta
|
|
API belgeleme yaklaşımları ve standartları, OpenAPI belirtimi ile API tanımlama, otomatik belge üretim araçları, API test araçlarının kullanımı, koleksiyon oluşturma ve çevre değişkenleri, otomatik test senaryoları yazımı ve sürekli test akışlarına giriş.
|
|
|
12. hafta
|
|
Asenkron iletişim ihtiyacı ve kullanım senaryoları, geri çağırma ile bildirim yaklaşımları, web kancalarının çalışma mantığı, web kancası uç noktası tasarımı, olay tabanlı entegrasyon örnekleri, güvenli web kancası imzalama ve doğrulama yöntemleri.
|
|
|
13. hafta
|
|
Üçüncü taraf servislerin entegrasyon süreçleri, ödeme ağ geçidi API entegrasyonu, harita ve konum servisleri kullanımı, sosyal medya ve kimlik sağlayıcı entegrasyonları, hız sınırlamaları ve kota yönetimi, gerçek bir hizmet sağlayıcısının API belgelerinin incelenmesi.
|
|
|
14. hafta
|
|
Hata yönetimi stratejileri, anlamlı hata mesajları tasarlama, geçici ve kalıcı hata ayrımı, yeniden deneme yaklaşımları ve üstel geri çekilme, devre kesici örüntüsü, sistem entegrasyon senaryolarının değerlendirildiği örnek olay çalışmaları ve genel tekrar.
|
|