DEV Community

Aydın Yakar
Aydın Yakar

Posted on • Updated on

Golang 101: Değişkenler (Variables)

Değişkenler tanımlanma yöntemleri açısından sabit değişkenler ve değişkenler olarak ikiye ayrılır. Her iki tanımlama yönteminin türleri aynıdır. Sabit değişkenler bir defa değer atanır ve akış içerisinde değişmez. Değişken türlerini string, int, float ve bool olarak inceleyeceğiz.

package main

import (
    "fmt"
    "reflect"
)

// global değişken
const global = "Global Değişken"

func main() {

    // sabit değişken
    const sabit string = "Golang!"
    const (
        sabit2 int    = 1
        sabit3 float32 = 3.14
        sabit4 bool   = true
    )
    fmt.Println("Sabit Değişkenler:")
    fmt.Println(global)
    fmt.Println(sabit)
    fmt.Println(sabit2)
    fmt.Println(sabit3)
    fmt.Println(sabit4)

    // var ile tanımlama
    var dize string = "test"
    var (
        dize2 int
        dize3 string = "değişken"
    )

    fmt.Println("\nvar ile tanımlama:")
    fmt.Println(dize)
    fmt.Println(dize2)
    fmt.Println(dize3)

    // var kullanmadan değişken tanımlama
    degisken := 1
    a, b, c := 1, 3.14, "golang öğreniyoruz!"

    fmt.Println("\nvar kullanmadan değişken tanımlama:")
    fmt.Println(degisken)
    fmt.Println(a)
    fmt.Println(b)
    fmt.Println(c)

    // değişken türleri
    fmt.Println("\nDeğişken türünü çıktı alma:")
    fmt.Println("Dize: ", reflect.TypeOf(sabit))
    fmt.Println("Kesirli: ", reflect.TypeOf(sabit3))
    fmt.Println("Tam Sayı: ", reflect.TypeOf(dize2))
    fmt.Println("Boolean: ", reflect.TypeOf(sabit4))

}
Enter fullscreen mode Exit fullscreen mode
Sabit Değişkenler:
Global Değişken
Golang!
1
3.14
true

var ile tanımlama:
test
0
değişken tanımlama

var kullanmadan değişken tanımlama:
1
1
3.14
golang öğreniyoruz!

Değişken türünü çıktı alma:
Dize:  string
Kesirli:  float32
Tam Sayı:  int
Boolean:  bool
Enter fullscreen mode Exit fullscreen mode

çalıştır!

Örnekte çeşitli değişken tanımlama yöntemleri ve başlangıç değeri atamaları yapılmıştır. Başlangıç değerleri sabit değişkenler dışında verilmek zorunda değildir ama örnek olması açısından belirtilmiştir. Değişken türlerini ekrana çıktı alabilmek için reflect paketinin TypeOf fonksiyonu kullanılmıştır.

Sabit Değişkenler (const)

Genellikle değişmesine ihtiyaç duyulmayan ama uygulamanın derlenmesi öncesi elle değiştirilmeye ihtiyaç duyulan değerler için kullanılır. Örneğin versiyon bilgi gibi.

Değişken Türleri

Genel değişken türlerini sırayla detaylandıralım. Karmaşık sayılara değinilmedi.

String (Dize)

Golang 101: Değerler yazısında da değindiğimiz gibi harfler, sayılar ve özel karakterlerden oluşan değişken türüdür.

Integer (Tam Sayı)

İşaretli ve işaretsiz tam sayıları kapsar. Türler: int, int8, int16, int32, int64, uint, uint8.. uinptr. u ile başlayanlar unsigned yani işaretsiz sayıları belirtmektedir. İşletim sistemi mimarisine, işlem yapılacak tam sayının bellekte kaplayacağı alana göre uygun olan kullanılır.

Float (Kesirli Sayı)

Kesirli sayılar float32 ve float64'dır.

Boolean (Mantıksal)

Mantıksal değişkenler true ve false değerlerini alır. Mantıksal işlemlerde ve karşılaştırmalarda kullanılır.

Oldest comments (0)