Python orta düzey görevler
Dosya, ağ, eşzamanlılık ve test konularını birleştiren gerçekçi işyeri görevlerini rehbersiz çözersin.
Seviye 301 · 16 ders · 15 pratik lab
Dersler
Veri ve dosya görevleri
- Görev: diskteki yinelenen dosyaları bul
- Görev: günlükte olağan dışı saatleri bul
- Görev: iki sunucunun yapılandırma farkı
- Görev: üç kaynaktan envanter birleştir
- Kısa görev: bozuk kayıtları ayıkla ve raporla
Ağ ve web görevleri
- Görev: lab ağındaki servis haritası
- Görev: iki API arasında kayıt eşitle
- Görev: hız sınırına uyan istemci
- Görev: imzalı webhook alıcısı
- Kısa görev: kesintileri kaydeden izleyici
Tasarım görevleri
- Görev: eklenti yükleyen uygulama
- Görev: üstel bekleme ile yeniden deneme
- Görev: süreli önbellek katmanı
- Görev: testleri koruyarak eski betiği yeniden düzenle
- Kısa görev: eski aracı modern komut satırı arayüzüyle sar
Bitirme
- Bitirme görevi: terminalde canlı operasyon panosu
Pratik lablar
- İki envanter listesinin farkını çıkarmak: Dünkü ve bugünkü sunucu envanterini karşılaştırıp eklenen, silinen ve alanı değişen kayıtları üç ayrı listede döndüren fonksiyonu yaz.
- Fotoğrafları tarihe göre yeniden adlandırmak: Dosya değişiklik zamanına göre fotoğrafları yıl-ay klasörlerine taşıyıp sıra numarasıyla adlandır; ad çakışmasında üzerine yazma.
- Günlükte giriş patlamalarını bulmak: Beş dakikalık pencerede aynı kullanıcıdan ondan fazla başarısız giriş olan aralıkları kayan pencereyle bul.
- İki sunucunun zamanlanmış işlerini karşılaştırmak: İki crontab dökümünü ayrıştırıp yalnızca birinde olan ve zamanı farklı olan işleri raporla.
- Benzer müşteri kayıtlarını birleştirmek: Yazım farkı olan müşteri kayıtlarını normalleştirme ve benzerlik oranıyla eşleştir; birleştirilenleri ve kararsız kalanları ayrı listele.
- Lab sayfalarının durumunu toplu denetlemek: Bir adres listesindeki lab web sayfalarına istek atıp durum kodu ve yanıt süresini tablo olarak yazdır.
- ETag ile gereksiz indirmeyi önlemek: Lab API'sinden veri çeken istemciye ETag ve If-None-Match desteği ekle; değişmeyen veri yeniden indirilmesin.
- Webhook'ta yeniden oynatmayı engellemek: İmzası doğru ama eski ya da daha önce görülmüş webhook isteklerini zaman damgası ve tek kullanımlık kimlikle reddet.
- İki sistem arasında yalnızca farkı aktarmak: Kaynak ve hedef lab API'lerindeki kayıtları karşılaştır; yalnızca eklenen, değişen ve silinenleri uygulayan eşitleyiciyi yaz.
- Dekoratörle komut kaydı tutmak: Fonksiyonları ada göre kaydeden bir dekoratör yaz ve komut adından doğru fonksiyonu çağıran yönlendiriciyi tamamla.
- Uzun betiği test edilebilir parçalara ayırmak: İki yüz satırlık tek parça rapor betiğini okuma, hesaplama ve yazdırma fonksiyonlarına böl; çıktı bayt bayt aynı kalsın.
- Dağınık global ayarları tek nesnede toplamak: Modüllere yayılmış global ayarları değişmez bir ayar nesnesinde topla ve fonksiyonlara parametre olarak geçir; testler geçsin.
- Bekleme sürelerini sarsıntıyla hesaplamak: Deneme sayısına göre üst sınırlı üstel bekleme süresi üreten ve rastgele sarsıntı ekleyen fonksiyonu yaz.
- Süresi dolan önbellekte yığılmayı önlemek: Süre dolunca aynı değeri onlarca kez hesaplayan önbelleği anahtar başına kilitle; hesap yalnızca bir kez yapılsın.
- Arızalı servise devre kesici koymak: Art arda beş hata sonrası çağrıları otuz saniye kesen ve deneme çağrısıyla yeniden açılan bir devre kesici sınıfı yaz.
Kurs hakkında
Dosya, ağ, eşzamanlılık ve test konularını birleştiren gerçekçi işyeri görevlerini rehbersiz çözersin.
Ne öğreneceksin
- Veri ve dosya görevleri
- Ağ ve web görevleri
- Tasarım görevleri
- Bitirme
Ön koşullar
Aynı yolun 101 ve 201 düzeyindeki konularına hâkim olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde ve ona bağlı özel bir lab ağında geçer. Kurulum gerekmez.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 301 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.