Daha önce de bahsettiğimiz temiz kod fikrinden hızlıca bahsetmek istiyorum
ve bu, fonksiyon gibi bir şeyle yapmak için iyi bir örnek.
Örneğin, bir sayının çift mi yoksa tek mi olduğunu kontrol eden bir fonksiyonumuz olduğunu varsayalım.
Yani diyelim ki.
Bir sayı alan bir fonksiyon olarak tek veya çifttir.
Peki, nasıl kontrol edeceğiz?
Modulo operatörünü kullanabiliriz.
Eğer diyebilirim.
Modulo iki sayısı, hatırlayın, bize kalanı verir.
Ve eğer çift sayı ise, kalan her zaman sıfır olacaktır.
Yani bu bize çift sayı olup olmadığını söyleyecek.
Yani eğer çift sayı ise.
O zaman geri dönmeni istiyorum.
Doğru.
Ve eğer çift sayı değilse, uyuşuk diyelim.
Kime?
Eşit değil.
Sıfır.
Yani bu tek bir sayı ise, her zaman bir kalan vardır.
Bu durumda false döndürürüz.
Belki de bu fonksiyonu daha açıklayıcı olacak şekilde değiştirelim, yine de true değerini döndürecektir.
Eğer yanlışsa bile.
Eğer eşit değilse.
Yani burada, çift yaparsam ve 50 verirsem ve çalıştırırsam, oh bir hata alırım çünkü burada bir L if deyimi
yaptığımdan emin olmalıyım.
Buraya basmak zorundayız.
O zaman baskı yapalım.
Ve Çalıştır'a tıklayın.
51'i yaparsam ve Çalıştır'a tıklarsam true değerini alıyorum.
Yanlış anladım.
Tamam.
Çalışıyor gibi görünüyor, ancak bu kodu nasıl temizleyebiliriz?
Şey, olay şu.
Bunu biraz daha sıkılaştırmak için bazı yöntemlerimiz var.
Örneğin, yalnızca çift olup olmadığını kontrol ediyorsak, bunu tekrar kontrol etmemize gerçekten gerek yoktur çünkü.
Modulo iki sayısı sıfıra eşit değilse, yani ikiye bölünen bir sayının kalanı her zaman sıfır
değilse.
Her zaman bunun iyi olduğunu, eşit olmayacağını biliyoruz.
Yani bu açıklamaya ihtiyacımız bile yok.
Başka bir şey söyleyebiliriz.
Doğru.
Yani bunu çalıştırırsam.
Bu hala çalışıyor.
Özür dilerim.
Bu yüzden kodumuzu biraz temizledik.
Ama şöyle bir şey var.
Yapabileceğimiz bir başka şey de geri dönüşün fonksiyonu otomatik olarak aştığını bilmemizdir.
Yani açıklamaya bile ihtiyacımız yok.
Burada sadece return diyebilirim çünkü ifade doğru değilse sadece beşinci satıra gidecektir.
Eğer iyi değilse, dördüncü satırı atlayacağım ve beşinci satıra geçeceğim, böylece bunu çalıştırırsam.
Bu hala çalışıyor, tamam mı?
Ama bunu daha da temiz hale getirebiliriz, değil mi?
Çünkü şu anda sadece geri dönüyoruz.
Doğru mu yanlış mı?
Ve genellikle doğrudan true false döndüren böyle bir şeyiniz varsa, genellikle daha iyi bir
yol vardır ve bu da boolean olarak değerlendirilen bir ifade kullanmaktır.
Aslında yapabileceğimiz şey basitçe şunu söylemektir: Hey, tüm bunları kaldırın ve sadece geri dönmenizi istiyorum.
Bunun gibi.
Ve eğer bunu çalıştırırsak.
Hala işler var.
Ve eğer 50 yaparsam.
Bu hala işe yarıyor çünkü burada söylediğimiz şey, bu değer ne ise onu döndürmeni istiyorum.
Ve bu, doğrudan doğru yanlışı değerlendirecek bir ifade oranıdır.
Böylece daha önce elde ettiğimiz sonucun aynısını elde ederiz, ancak bunun ne kadar temiz olduğuna bakın.
Bu sadece güzel, basit bir kod.
Bir geliştirici olarak buraya gelip bunu hemen görebilir miyim?
Tamam.
Even sadece bu işlemi gerçekleştiriyor ve true veya false döndürüyor mu?
Yani bu, temiz kod hakkında düşünmek için iyi bir yoldur.
Kodunuzu nasıl temizleyebilirsiniz?
Ve unutmayın, mükemmel bir çözüm yok.
Kodu her zaman temizleyebilirsiniz, ancak bu şekilde düşünmek gerçekten gelişmiş programcıların düşünme şeklini geliştirmenizi
sağlar.
Bir sonrakinde görüşürüz.
Güle güle.