Bu yazıda beraber Go nedir? Neden ortaya çıktı? Neden öğrenmeliyiz? sorularının cevaplarını inceledikten sonra, geliştirme ortamını hazırlayıp ufak ufak kodlar yazacağız. Aslında bu dilde çok tecrübeli değilim, yeni başladığım firmada bazı projeler Golang ile yazılmış. Bu yüzden hem öğrenecek hem de öğrendiklerimi size aktarmaya çalışacağım.
Go nedir? Go; 2007 yılında geliştirilmeye başlanmış, Google tarafından desteklenen, açık kaynak kodlu bir programlama dilidir. İlk kararlı sürümü 2012 yılında yayınlanmıştır.
Go; basit, güvenilir ve verimli bir yazılım oluşturmayı kolaylaştıran açık kaynaklı bir programlama dilidir.
https://golang.org/
Neden geliştirildi? Google’ın yaşadığı performans, zaman, uyumluluk, derleme gibi problemleri çözmek için geliştirmiştir. Go‘nun bir çok avantajı olduğu gibi, dezavantajları da var. Generics ve error handling olmaması dezavantaj gibi gözükmekte fakat bu özellikler performans kaybına sebep olduğu için bilerek konulmamış. Hatta performanslı çalışacağı bir yol bulmadıkça da eklemeyeceklermiş.
Neden öğrenmeliyiz? E öğrenmesi çok kolay 🙂 Java veya C#’da olduğu gibi OOP’un derinliklerinde kaybolmuyor tam aksine kod yazarken şöyle bir ohhh diyorsunuz.
- İçerisinde sadece 25 tane keyword var :
break default func interface select case defer go map struct chan else goto package switch const fallthrough if range type continue for import return var
- Performans odaklı
- Tek bir binary dosyasına derlenir ve bunu çalıştığı sisteme göre yapar. Bağımlılığı yoktur ve runtime’ı içinde gelir. Yalnız bu durumda da output olarak çıkan bu dosyanın büyük olma gibi bir durum ortaya çıkıyor.
- Native olarak gelen concurreny mimarisi gerçekten etkileyici. Channel denilen kavramlar üzerinden aynı anda birden fazla fonksiyon çalıştırılabiliyoruz. Bu konuyu daha sonra derinlemesine inceleyelim bence 🙂