Kodu gözden geçirme ve yeniden düzenleme

Vaka Çalışması: Python ile Yazılım Geliştirme

Mark Pedigo

Principal Data Scientist

Periyodik kod incelemesinin faydaları

  • Daha iyi kod kalitesi
    • Tutarsızlıkları erkenden yakala
  • Bilgi paylaşımı
    • İş birliği
    • Uyumlu kalma
  • Tutarlılık ve en iyi uygulamalar
    • Yüksek standartlar

Bir bilgisayarda iki kişi kod gözden geçiriyor

Vaka Çalışması: Python ile Yazılım Geliştirme

Kod inceleme örneği

def factorial(n):
    if n == 0:
        return 1
    else:
        result = 1
        for i in range(1, n + 1):
            result *= i
        return result

Şunlarla ilgili geribildirim ver:

  • İşlevsellik
  • Okunabilirlik
    • Örnek - Gereksiz else
  • Sınır durumları
    • Örnek - Faktöriyelde negatif sayılar
Vaka Çalışması: Python ile Yazılım Geliştirme

Kodu yeniden düzenlemenin faydaları

  • Daha iyi kod kalitesi
  • Daha kolay bakım
  • Azalan teknik borç

Spagetti, akış şemasına dönüşüyor

Vaka Çalışması: Python ile Yazılım Geliştirme

Yeniden düzenleme örneği

# Original code
def factorial(n):
    if n == 0:
        return 1
    else:
        result = 1
        for i in range(1, n + 1):
            result *= i
        return result
# Refactored code
def factorial(n):
    if n < 0:
        raise ValueError("Not defined")

if n == 0: return 1
result = 1 for i in range(1, n + 1): result *= i return result
Vaka Çalışması: Python ile Yazılım Geliştirme

Yeni formül için yeni fonksiyon

Önceki formül $$m = P \cdot \frac{r (1 + r)^N}{(1+r)^N - 1}$$ burada $m$ aylık ödeme, $P$ kredi tutarı, $r$ aylık faiz oranı ve $N$ aylık ödeme sayısıdır

Yeni formül $$P = m \cdot \frac{(1+r)^N - 1}{r (1 + r)^N}$$

Vaka Çalışması: Python ile Yazılım Geliştirme

Yol haritası

Projenin hangi bölümlerini bitirdiğimizi ve hangilerine başlayacağımızı gösteren yol haritası

Vaka Çalışması: Python ile Yazılım Geliştirme

Hadi pratik yapalım!

Vaka Çalışması: Python ile Yazılım Geliştirme

Preparing Video For Download...