Wednesday, July 6, 2022

Dart Ders Notlarım 9: Bool Veri Tipi ve Null Safety Felsefesi

 

Dart Ders Notlarım 9: Bool Veri Tipi ve Null Safety Felsefesi



void main() {

/**bool değişken tipi 2 tane değer alır. doğru ve yanlış şeklinde.

 * true ve false ingilizce olarak iki değerden birini alır.

 * iki durumdan hangisinin geçerli olduğunu bulmaya olanak sağlar.

 * mesela kullanıcı aktif mi pasif mi ? hernagi bir yerde kullanılabilir bir bilgi.

 

 * mesela ilk kez mi giriyor programa? ilk kez giriyorsa ilk girişte karşılaşması 

 * gereken bilgi ekranlarını gösterirsin.ikinci giriyorsa direkt ana ekrana atarsın kişiyi.

 *bunun gibi nice senaryolar için kullanabileceğimiz bir değişken tipi.

 tanımlama zaten bildiğimiz mantıkla yapılıyor.

 */


  bool sistemAcikmi = true;

  print(sistemAcikmi);


  /*bool için birde ilişkisel operatörleri kullnabiliriz. yani büyüktür ve küçüktür

 ifadeleriyle de bool değişkenine değer tanımlaması yapabiliriz.*/


  bool kucukMu = 5 < 3;

  print(kucukMu);

  /*burada çıktımız false olarak ekrana gelecek. 

  çünkü küçük değil demek sorduğumuz sorunun cevabı.

  ilişkisel operatörlerin değeride doğru veya yanlış olarak çıkacağı için

  bu şekilde değer atamalarıda yapabiliriz*/


  /*şimdi de null kavramına bakalım biraz.null kelimesi boşluk anlamına geliyor

  ingilizce olarak. boşluk demek aslında bir değere sahip değil anlamında.

  yoksa e=" " içi boş bir değer girersem buda boş anlamında olur ama 

  değer olarak değil.


  bir başka cümleyle ifade edersek boş bir değerdir. ama null bir değer değildir.

  örneğin hesap değişkeninde 0 değeri varsa bu hesapta para olmadığı anlamına gelir.

  ancak değişkende bir değer vardır. Veya hesap değişkeni null ise bu hesapta

  para olmadığı anlamına gelmez. ya ne demektir. bu hesaptaki para bilgisi değişkene 

  yüklenmemiş demektir. değişkende bir bilgi yok. o değer mevcut değil

  hesapta para olup olmadığı bilgisi boş demek. bu bilgi girilince ancak o zaman

  hesapta para var mı yoksa yok mu anlaşılır. 

  null ve 0 ikiside "yok" gibi anlama

  geliyor gözüküyor lakin öyle değildir gözüktüğü üzere :)

  tablo gibi yaparsak;

  değişken = 0    => değişkende değer var  => hesapta para yok

  değişken = null => değişkende değer yok  =>hesapta para var mı yok mu bilgi yok


  değişkene boşluk değeri atanabilir. bu boşluk da olsa bir değerdir.

  null ise değersiz demekdir. hiç bir değer yok anlamında...


   */


  int a;

  // print(a); yorumu kaldırırsanız hata verdiğini göreceksiniz.

  //var ve dynamic dışındaki değişkenlerde değer vermediğimiz zaman

  //ekrana çıktısını alamayız.


  var b; // değişkene değer vermeden sadece ismini belirledik

  print(b); //ekrana null diye bir değer dönecektir.Yani değişkende değer yok.


  dynamic c; //değişkene değer vermeden sadece ismini belirledik

  print(c); //ekrana null diye bir değer dönecektir.Yani değişkende değer yok.


  var d = "null"; // değişkene null diye text bir değer verdik.

  //burdaki null yazısı text bir değerdir.değer olmadan gelen null gibi değil.

  print(d); //ekrana yine null değerini verdi.


  var e = " "; //değişkene boşluk değerini verdik. bir değer var.

  // boş ama değerli :)

  print(e); // ekrana bir kare boşluk çıktısı verecek.


  var f = ""; //değişkene boşluk dahi vermedik ama çift tırnak var.

  //burda da boşluk var ama yine de bir değerdir o boşluk.

  print(f); //ekrana yine bir kare boşluk verir.


  //aşağıda görüldüğü gibi var ve dynamic değişkenlere sırasıyla int ve double

  //değerlerini atadık ve hiç hata almıyoruz. programın akışında tiplerini

  //değiştirebiliyoruz.string de olur bu arada. ve bool bile :)

  c = 10;

  c = 10.2;

  c = "mehmet";

  c = true;

  b = 10;

  b = 10.2;

  b = "ahmet";

  b = false;

}

void main() {
/**bool değişken tipi 2 tane değer alır. doğru ve yanlış şeklinde.
 * true ve false ingilizce olarak iki değerden birini alır.
 * iki durumdan hangisinin geçerli olduğunu bulmaya olanak sağlar.
 * mesela kullanıcı aktif mi pasif mi ? hernagi bir yerde kullanılabilir bir bilgi.
 
 * mesela ilk kez mi giriyor programa? ilk kez giriyorsa ilk girişte karşılaşması
 * gereken bilgi ekranlarını gösterirsin.ikinci giriyorsa direkt ana ekrana atarsın kişiyi.
 *bunun gibi nice senaryolar için kullanabileceğimiz bir değişken tipi.
 tanımlama zaten bildiğimiz mantıkla yapılıyor.
 */

  bool sistemAcikmi = true;
  print(sistemAcikmi);

  /*bool için birde ilişkisel operatörleri kullnabiliriz. yani büyüktür ve küçüktür
 ifadeleriyle de bool değişkenine değer tanımlaması yapabiliriz.*/

  bool kucukMu = 5 < 3;
  print(kucukMu);
  /*burada çıktımız false olarak ekrana gelecek.
  çünkü küçük değil demek sorduğumuz sorunun cevabı.
  ilişkisel operatörlerin değeride doğru veya yanlış olarak çıkacağı için
  bu şekilde değer atamalarıda yapabiliriz*/

  /*şimdi de null kavramına bakalım biraz.null kelimesi boşluk anlamına geliyor
  ingilizce olarak. boşluk demek aslında bir değere sahip değil anlamında.
  yoksa e=" " içi boş bir değer girersem buda boş anlamında olur ama
  değer olarak değil.

  bir başka cümleyle ifade edersek boş bir değerdir. ama null bir değer değildir.
  örneğin hesap değişkeninde 0 değeri varsa bu hesapta para olmadığı anlamına gelir.
  ancak değişkende bir değer vardır. Veya hesap değişkeni null ise bu hesapta
  para olmadığı anlamına gelmez. ya ne demektir. bu hesaptaki para bilgisi değişkene
  yüklenmemiş demektir. değişkende bir bilgi yok. o değer mevcut değil
  hesapta para olup olmadığı bilgisi boş demek. bu bilgi girilince ancak o zaman
  hesapta para var mı yoksa yok mu anlaşılır.
  null ve 0 ikiside "yok" gibi anlama
  geliyor gözüküyor lakin öyle değildir gözüktüğü üzere :)
  tablo gibi yaparsak;
  değişken = 0    => değişkende değer var  => hesapta para yok
  değişken = null => değişkende değer yok  =>hesapta para var mı yok mu bilgi yok

  değişkene boşluk değeri atanabilir. bu boşluk da olsa bir değerdir.
  null ise değersiz demekdir. hiç bir değer yok anlamında...

   */

  int a;
  // print(a); yorumu kaldırırsanız hata verdiğini göreceksiniz.
  //var ve dynamic dışındaki değişkenlerde değer vermediğimiz zaman
  //ekrana çıktısını alamayız.

  var b; // değişkene değer vermeden sadece ismini belirledik
  print(b); //ekrana null diye bir değer dönecektir.Yani değişkende değer yok.

  dynamic c; //değişkene değer vermeden sadece ismini belirledik
  print(c); //ekrana null diye bir değer dönecektir.Yani değişkende değer yok.

  var d = "null"; // değişkene null diye text bir değer verdik.
  //burdaki null yazısı text bir değerdir.değer olmadan gelen null gibi değil.
  print(d); //ekrana yine null değerini verdi.

  var e = " "; //değişkene boşluk değerini verdik. bir değer var.
  // boş ama değerli :)
  print(e); // ekrana bir kare boşluk çıktısı verecek.

  var f = ""; //değişkene boşluk dahi vermedik ama çift tırnak var.
  //burda da boşluk var ama yine de bir değerdir o boşluk.
  print(f); //ekrana yine bir kare boşluk verir.

  //aşağıda görüldüğü gibi var ve dynamic değişkenlere sırasıyla int ve double
  //değerlerini atadık ve hiç hata almıyoruz. programın akışında tiplerini
  //değiştirebiliyoruz.string de olur bu arada. ve bool bile :)
  c = 10;
  c = 10.2;
  c = "mehmet";
  c = true;
  b = 10;
  b = 10.2;
  b = "ahmet";
  b = false;
}






Share This

0 comments:

Soru, Görüş, Öneri ve Eklemek İstediklerinizi Yazabilirsiniz...