BLOG BLOG

Category: Golang
Golang – Map

İkili değerleri tutmamıza yarayan yapılardır. Değerleri
anahtar – değer (key – values)
şeklinde tutmakta ve dizilerde kullandığımız index değer artık tanımlamış olduğumuz anahtar değer olmaktadır.

Mapler daha önce programlama dilleri ile uğraşanlar varsa kolaylıkla anlayabilecekleri dilden anlatmak gerekirse direk dictionary demektir.

Mapleri iki farklı şekilde tanımlayabiliriz.

Birincisi değerlerini başlangıçta vermediğimiz şekliyle;

a := make(map[string]int)

a değişkeni burada map’dir.

Bir diğeri ise;

a := map[string]int{"ali": 76, "veli": 22}

Her iki a değişkeni de map olup yazdırdığımızda karşımıza

package main

import "fmt"

func main() {
	a := make(map[string]int)
   	fmt.Println(a)
	
	b := map[string]int{"ali": 76, "veli": 22} 
	mt.Println(b)
}

Çıktısı;

map[]
map[veli:22 ali:76]

https://play.golang.org/p/WHIt_4_KRjT
bu şekildedir.

Golang – For Döngüsü

Go Programlama dilinde genelde klasik programlama dilinde görülen for, while, do-while döngüleri, yerini sadece for döngüsüne bırakmıştır. Yazılımlarımızı sadece for döngüsü ile yapabileceğimiz şekilde for döngüsünü özelleştirmişlerdir.

Zaten yazılımcıların alışkanlıklarına da baktığımızda sadece bir döngü türünü benimseyip devamlı onu kullanma eğilimdedir. Aynı şeyi if else – switch tercihinde de yaşarız. Tabii ki bunların kullanılıp kullanılmayacağı yerler var ama her ikisi de kullanıyorsa eğer ilk önce ellerimiz tercih ettiğimiz yazmak isteyecektir.

Yani sonuç olarak. Ya for ‘cular ya da whilec ‘cılar vardır.(ford cular değil yalnız yanlış okumayınız :)). Ve for‘la yapabildiğiniz bir döngüyü while, while ile yapabildiğiniz bir döngüyü for ile yapabilirsiniz. Bu yüzden go programlama dili gereksiz bütün ayrıntılardan kurtulmak adına sadece for döngülerini kullanmaktadır. Kullanımlarına baktığımızda zaten içinde while‘ı da barındırdığını göreceğiz.

Üç kullanım şekli vardır;

For Döngüsü (While Benzeri)

package main
import "fmt"

func main() {
            i := 1

            for i<10 {
            fmt.Println(i)
            i = i + 1    
            }
}

Diğer programlama dillerini bilenler için gördüğünüz üzere while döngüsünden bir farkı bulunmamaktadır.

İlk defa programlama dili öğrenenler için ise;

i ‘nin değişkeninin değerini 1 olarak tanımladık. for yazdıktan sonra hemen yanına koşulunu belirtiyoruz. Bu koşul ise i<10  dur. Ve bu koşul doğrulandığı müddetçe döngü devam edecektir. i , 10′ a eşit  olduğu anda ise döngü sonlanacaktır.

Döngü içinde ise  i = i + 1 diyerek i ‘ yi her seferinde 1 artırıyoruz.

Döngülerde yer alması gereken başlangıç değeri, bitiş değeri ve artış miktarını bu döngüde sağladık. Klasik olarak yazılan for döngüsünde, bunu tek satırda belirtirken burada 3 satırda yazdık

For Döngüsü (Klasik Kullanım)

package main
import "fmt"

func main() {
      for i := 1; i < 10 ; i ++ {
         fmt.Println(i)
      }
}

yukarda kullanılan for döngüsü ile ik döngü arasında fark yoktur. Burada

i := 1

değeri ile i yi tanımlamış olduk.  i < 10 ile bitiş değerini belirttik ve i++ ile artış miktarını belirttik.

Sonsuz Döngü

For döngüsünün son yazım şekli ise sonsuz döngüdür;

package main
import "fmt"

func main() {
      for {
         fmt.Println(“merhaba”)
         break
      }
}

Sonsuz döngüden çıkma deyimi ise break’ dir. Bu döngü bir defa çalışacaktır. Eğer break keyword’ü olmasaydı sonsuz çalışcaktı.

go:missing Git command

Yeni bir linux sunucunuz var. Burayı takip ederek go yu kurdunuz. Ve github dan projenizi çekeceksiniz.

Go da işletim sistemini öğrenme

osName aslında işletim sisteminin ismini verirken neden switch e soktuk derseniz. Mac os için darwin yazıyorda o yüzden…

Go da işletim sistemli bazlı çalışma

Go programlama dilinde işletim sistemine özgü programlama yaptığınızda derlediğiniz sistemde hatalar alacaksınız.

Her seferinde GoPath mi ayarlayacağım

Hayır tabiki!

Bash profile da default olarak tanımlayabilirsiniz. Tanımladıktan sonra huzura erersiniz.

Golang Yükselen Diller Arasında

Tiobe nin 2016 verilerine baktığımızda Go programlama dili +2 yükselişle en iyi çıkışı yakalayanlar arasında. Bu şekilde büyümeye devam ederse ilerleyen yıllarda en iyi diller arasında yerini alacağa benziyor.

Golang – Değişkenler

Go Programlama dilinde değişkenleri 3 farklı şekilde tanımlayabiliyoruz. Aşağıdaki üç tanımlama şeklide geçerlidir.

Go dynamic typing dediğimiz. Değişkenin türünü kendi belirleyen yapıya sahiptir.

Golang – Anahtar Kelimeleri

Anahtar kelimeler demek programı yazarken o kelimeleri tanımlama amaçlı kullanamazsınız demek.

Golang için IDE (Geliştirme Ortamı)

Golang yazmak isteyenler başlarda doğru düzgün bi IDE bulamazken bugün gelinen noktada oldukça farklı seçeneklere sahibiz. IDE nedir derseniz Integrated Development Environment der kenara çekilirdim ama örnek ver örnek ver diyor içimden bi ses; Visual Studio, NetBeans, Eclipse, Xcode gibi bizim geliştirme ortamımız. Tümleşik Geliştirme Ortamı diye geçiyor sallayın bu kısmını.

Golang Ticker

Bazen anlamsız bişeye takılabiliyorum…

Golang timeouts

Yazdığımız programlarda zaman aşımı gerektiği zaman aşağıdaki gibi kullanabiliriz. Bu yaptığım örnek timeouts ‘u anlamak için güzel bir örnek oldu gibi.

Go mu Node.js mi ?

Backend tarafında Rest Api yazmamız gerektiğinde bizi bekleyen kaos…

Acaba hangisini tercih etmeliyim ?