Ana Sayfa > Listeler > Verimli Kod Yazmak İçin Bilinmesi Gereken 6 Teknik

Verimli Kod Yazmak İçin Bilinmesi Gereken 6 Teknik

Verimli kod yazmak aslında zor bir şey değildir. Yazılan etkili kod, yalnızca kodun işlevselliğini geliştirmekle kalmaz, aynı zamanda programın zaman ve alan karmaşıklığını da azaltır. Bunun yanı sıra yazılan kodun kalitesine karar vermedeki en önemli faktörlerden birisi hızdır. Örneğin, kodunuz beklenilen sonucu veriyor ancak bu kodu çalıştırması uzun zaman alıyorsa yazdığınız bu kod etkili bir kod olmaktan çıkar. Aynı zamanda yazılan kodlar temiz, anlaşılır ve okunabilir olmalıdır. Bu şartları sağlayan koda yeni özellik eklenmesi, hata ayıklama gibi süreçler oldukça kolay hale gelir. Bu yazımızda verimli kod yazmak için bilinmesi gereken 6 teknik listeleyeceğiz.

Fonksiyon Oluşturma

verimli-kod-yazmak-için-teknik-fonksiyonlar

Eğer kod bloğunuz tekrarlanıyorsa veya benzer yapıya sahipse, bunun için bir fonksiyon oluşturularak genelleştirilmesi gerekir. Bir fonksiyon oluşturmak, kodunuzu hesaplama açısından daha ucuz ve çok daha okunabilir yapacaktır.

def fonksiyon(a,b,c):
      #kodunuzu buraya yazın

Aynı kodu tekrar tekrar yazmak yerine, kod bloğunu çalıştırmak için tek bir fonksiyon çağırmamız gerekecek.

Gereksiz İşlemleri Ortadan Kaldırın

Ayrı verilerin tekrar tekrar işlenmesi, gerekli değerin değişkenlere kaydedilmesiyle önlenebilir. Veriler, kodun daha hızlı çalışması için bir sözlükte veya bir dizide saklanabilir. Örneğin:

x = "abc"
for i in range(100):
     print(i* len(x))

Yukarıdaki kod bloğunda, x değişkeninin uzunluğu for döngüsü nedeniyle 100 defa hesaplanacaktır. Bu gereksiz hesaplamayı, x değişkeninin uzunluğunun bir değişkene atanmasıyla önleyebiliriz.

x = "abc"
y = len(x)
for i in range(100):
     print(i*k)

Görüldüğü üzere değişkenin uzunluğu her seferinde tekrardan hesaplanmak durumunda kalmamıştır. Bu yöntem, büyük kodlar için çok etkili olabilir.

Gereksiz Değişken Oluşturmaktan Kaçının

etkili-kod-yazmak-için-teknik-degisken

Bir fonksiyonda, belirli bir değeri döndürmek istiyorsak, onu bir değişkende saklama yerine direkt döndürmeliyiz. Örneğin:

def function(b,c):
      a = sum(b,c)
      return a

Yukarıda belirtilen kodu bu şekilde yazmak yerine şu şekilde yazabiliriz:

def function(b,c):
       return (sum(b,c))

Uygun Algoritmalar Kullanın

uygun-algoritma

Kodunuz için uygun algoritmayı seçmek hayati önem taşır. Yalnızca verimli kodlama stilleri, sizin kodunuzu verimli ve hızlı yapmaz. Büyük kod parçalarında bile düşük zaman ve alan karmaşıklığına sahip bir algoritma bulmaya çalışın.

Dinamik Programlama Kavramını Öğrenin

Dinamik programlama, belirli bir problem sınıfına (belirli değerlerin birden çok kez hesaplanmasını gerektiren, kodun yüksek zaman karmaşıklığına neden olan problemler) uygulanabilecek bir yaklaşımdır. Bu teknik, kodu önemli ölçüde optimize eder ve çok daha verimli hale getirir.

Buradaki konsept, problemi alt problemlere bölmek ve sonucu (değerleri bir liste veya sözlükte saklamak) gelecek için kaydetmektir. Böylece problemi tekrar hesaplamak zorunda kalmayız.

If-Else Kullanımını En Aza İndirin

If-Else yaklaşımı, herhangi bir problemi çözmek için kullanılan en yaygın ve kolay yaklaşımlardan birisidir. Ancak If-Else’in fazla kullanımı okunabilirliği azaltır ve karmaşıklığı artırır.

Etkili bir kod elde etmek için uygun strateji uygulanmalıdır. Bunlardan birkaçı:

  • Gereksiz blokları ortadan kaldırın. Örneğin:
def fonksiyon():
      if a == True:
          #bunu yap
      else:
          #bunu yap

Yukarıdaki kodda else bloğunu kaldırırsak kodumuz daha etkili olacaktır.

def fonksiyon():
      if a == True:
           #bunu yap

      #bunu yap
  • If-Else’i bir sözlükte saklamak: Bu yöntem, bir koşula bağlı olarak bir işlem gerçekleştirmemiz gerektiğinde ve daha sonra bazı işlemler ekleneceğinde kullanılabilir.
ilk_degisken = "degisken"

if ilk_degisken=="a":
   ikinci_degisken=1
elif ilk_degisken =="b":
    ikinci_degisken = 2
elif ilk_degisken=="c":
     ikinci_degisken= 3
else:
   ikinci_degisken = 4

Yukarıdaki kod bloğuna başka bir işlem yaptırmak istesek tekrardan If-Else bloğu eklememiz gerekecektir ki bu pek hoş bir yaklaşım değil. Şimdi bir sözlük kullanarak aynı sorunu deneyelim.

birinci_degisken = "degisken"
sozluk = {'a':1, 'b':2,'c':3}
ikinci_degisken = sozluk.get(birinci_degisken,4)

Yukarı kod bloğunda, if ve elif koşulları bir sözlükte saklanır ve ikinci_degisken’in değeri .get() metodu kullanılarak kolayca elde edilir (burada .get() metodunun ikinci parametre else ifadesi gibi davranır). Bu yaklaşım, kodun daha temiz ve kolay okunabilir görünmesini sağlar.

Verimli kod yazmak için listelemiş olduğumuz 6 teknik, kodunuzu iyileştirmede büyük öneme sahiptir. Bunların yanı sıra kodlama pratiği yapmakta oldukça önemlidir.

Teknoloji'den geri kalmamak için e-posta listemize abone olun!

Muğla Sıtkı Koçman Üniversitesi Bilgisayar Mühendisliği 3.sınıf öğrencisi.



Yorum yapın