Kodlamada Validasyon ve Else if yapısı

     
     
validation control, else if
 Merhabalar herkese kodlama ile ilgili yazılarımdan bir diğerindeyiz.Bu yazıda validasyon kontrollerini anlatmaya çalışıp else if yapısına örnek veriyor olacağım. Bir önceki yazımda  if else kontrollerini anlatmış ve örnek üzerinde uygulamaya çalışmıştım. Bir kaç tane de soru yazmıştım ekstrem durumlarda(kullanıcının rastgele ve mantıksız değerler girmesi) nasıl önlem alabiliriz diye.
       Bir programcı kod yazarken her aşamada hitap ettiği kullanıcıyı düşünmelidir.Yani eğer sayısal işlem içeren bir program tasarladıysa mesela ders notlarını hesaplayıp ortalama bulan kodu yazmıştık önceki yazıda burada kullanıcının birinci ya da ikinci notu girmesi gerektiğinde ne bekleriz? 0 ile 100 arasında bir sayı girmesini bekleriz değil mi ? Fakat biz o an kullanıcıya müdahale edemeyiz klavye kullanıcının önündedir ve istediği şeyi girebilir.Örneğin "1.notu giriniz:" komutuna "450" de girebilir. Peki ben programcı olarak bu soruna nasıl bir çözüm bulmalıyım? Her zaman kullanıcı için yeterince açık, anlaşılır olmalı ve beklenmedik bir girişte uyarı vermeliyim. Hataya açık kapı bırakmamak için yapılan tüm bu kontrollere yani kullanıcının olması gerektiği gibi girilmesinin sağlanmasına validasyon kontrolleri(validation control) denmektedir.Burada biz bunu manuel yapıyor olacağız konsol uygulaması üzerinden gittiğimiz için fakat normalde form ya da web uygulaması oluşturduğumuzda bu kontroller hazır olarak yer almaktadır.
Bu kontrolü else if yapısını kullandığımız bir örnekle açıklayalım.Üniversite sisteminde vize ve finale giren bir öğrencinin ortalamasını bulup hangi harf notu karşılığına denk geldiğini bulalım.
Bunun için aşağıdaki tabloya göre bir if  else if  else yapısı oluşturmalıyız.
Not:Ortalama vizenin %40'ı finalin %60'ı alınarak oluşturulacaktır. Kodlar derleyicide yazılıp test edilmiştir. 
notların harf notu karşılığı


harf notu hesaplama kodu c#
harf notu hesaplama kodu c#


harf notu hesaplama kodu c#


   
       
     Örneğimizin kodlarını oluşturduk fakat baktığımızda kodda yine yeterli olmayan bir yer olduğunu görüyoruz.Kullanıcı yanlış sayı girdiği zaman uyarı çıkıyor fakat tekrar kullanıcıdan not alınması gerekirken programdan çıkıyor. Bu sorunu döngü kullanarak çözebiliriz. Bu örnekte yazmadım çünkü döngüleri anlattıktan sonra kullanmak daha mantıklı olacaktır. 

       Yukarıdaki kodda kullanılan yapı daha önce anlattığım if else yapısından farklı olarak else if ile oluşturuldu. Bunu normal if 'lerle de oluşturabilirdik fakat genellikle aralıklar şeklinde ifade edilen sorularda else if yapısını kullanmak daha mantıklıdır.Örneğin başka bir soru havanın derecesine bağlı olarak soğuk,normal,sıcak olduğuna karar veren bir program tasarlanabilir.Bunun gibi örnekler çoğaltılabilir.
       Yazdığım yazılarda program çıktıları koyarak bu böyle yapılır demek yerine işin mantığını anlatmayı daha yararlı görüyorum bu yüzden örnekler verip kodu yazmaktan ziyade yazılan kodu nasıl oluşturuyoruz nasıl bir yol izliyoruz bunları yazıyorum. Varsa anlatımla alakalı önerileriniz yorum yapabilirsiniz umarım faydalı bir yazı olmuştur. 😊
 





     

Yorum Gönder

0 Yorumlar