­čôî Go Giri┼č

Her ge├žen pop├╝lerli─či h─▒zl─▒ca artan dillerinden biri olan Go derslerine giri┼č yap─▒yoruz

Her zaman oldu─ču gibi "Merhaba D├╝nya", art─▒k an itibari ile Go programlama derslerine ba┼čl─▒yoruz. Bunun i├žin ilk olarak Go nedir, nerelerde kullan─▒l─▒r, neden tercih etmeliyim gibi sorular─▒ cevapland─▒rarak e─čitimimize ba┼člayabiliriz.

1. Go Nedir?

Go, di─čer ad─▒yla Golang 2007 y─▒l─▒nda ad─▒mlar─▒ at─▒lan, 2009 itibariyle a├ž─▒k bir ┼čekilde ad─▒ dile getirilen, 2012 ortalar─▒na do─čru Go 1.0ÔÇśa ula┼čan, arkas─▒nda Ken Thompson, Rob Pike ve Robert Griesiemer gibi geli┼čtiricilerin bulundu─ču ve Google taraf─▒ndan desteklenen, basitli─či ve sundu─ču performansla ├Âne ├ž─▒kan, olduk├ža gen├ž say─▒labilecek, a├ž─▒k kaynak bir programlama dili. ÔÇťGo severlerÔÇŁ kendilerini gopher olarak nitelendiriyorlar. Gopher, TCP/IP protokol├╝ olmas─▒na kar┼č─▒n logonun da sembolize etti─či amerikan yersincab─▒ (kemirgen).

Go dili maskotu olan sincap (Gopher)

2. Go ─░le Neler Yap─▒labilir?

  • Go dilinin birincil amac─▒ sistem programlamalar─▒n─▒n yap─▒lmas─▒d─▒r. Aktif bi├žimde sunucu taraf─▒nda kullan─▒lmas─▒ i├žin geli┼čtirilen GoÔÇÖyu, sunucu ve alt sistemler geli┼čtirmek i├žin harika bir dil olarak g├Ârebiliriz.

  • Go web i├žin hem h─▒zl─▒ geli┼čtirme hem de y├╝ksek performans─▒yla kaliteli projeler ├╝retmenizi sa─člayabilir

  • Hen├╝z k─▒s─▒tl─▒ ├Ârneklerle kar┼č─▒m─▒za ├ž─▒k─▒yor olmas─▒na ra─čmen GoogleÔÇÖ─▒n, GoÔÇÖyu mobil i┼čletim sistemi AndroidÔÇÖde kullanma plan─▒ vard─▒r. Gelecekte GoÔÇÖyu bilen geli┼čtiriciler sadece sunucu ve sistem taraf─▒ndaki i┼čleri halletmekle kalmayarak, kendi Android mobil uygulamalar─▒n─▒ da Go ile verimli bi├žimde geli┼čtirebilecekler.

  • Go g├Âm├╝l├╝ sistemlerde kullan─▒lan bir programlama dili olarak da kar┼č─▒m─▒za ├ž─▒kabilir. Geli┼čtirici toplulu─čunun b├╝y├╝k bir b├Âl├╝m├╝ buna inan─▒yor olsa bile, g├Âm├╝l├╝ sistemlerde hali haz─▒rda s├╝regelen C ve C++ ha├žl─▒ sava┼člar─▒ nedeniyle bunu ┼čimdilik kestirmek tam olarak m├╝mk├╝n olmayabilir.

3. Neden Go Kullanmal─▒y─▒m?

  • Go'da bir i┼či yapman─▒n genellikle sadece bir yolu vard─▒r. Bu da herkes taraf─▒ndan anla┼č─▒lan d├╝zenli kodlar ve d├╝zen demek.

  • Go tek bir dosya'ya derleniyor. Bir tane binary'yi kopyalamak yeterli. ├ľzetle mevcut kodunuzu onlarca sunucuya sorunsuzca yerle┼čtirebilirsiniz.

  • Kar─▒┼č─▒k ┼č├Âz dizimi kurallar─▒ndan kurtulabilirsiniz. Go'da sadece 25 tane keyword var (C de 37 tane var; C++ da 84 var ve say─▒ gittik├že art─▒yor)

  • Basit ve geriye d├Ân├╝k uyumlulu─ču ayr─▒ bir avantaj─▒.

  • E┼čzamanl─▒ ├žal─▒┼čma (concurrency), static typed ve garbage collection ise di─čer ├Ânemli avantajlar─▒ndan birisi.

4. Go Dilini Kimler Kullan─▒yor?

Avantajl─▒ ve pratik bir programlama dili olmas─▒ Go dilini dev markalar─▒n hedefi haline getirmi┼čtir. Google, Go dili arac─▒l─▒─č─▒yla kullan─▒c─▒lar─▒na daha h─▒zl─▒ bir internet deneyimi arma─čan etti. Ancak Google d─▒┼č─▒nda Go dilini kendi sistemini iyile┼čtirmek i├žin kullanan daha farkl─▒ teknoloji ┼čirketleri de vard─▒r.

Bu ┼čirketlerden baz─▒lar─▒:

  • Google

  • Amazon

  • Dropbox

  • Ubuntu

  • Facebook

  • Twitter

  • Apple

  • Github

  • Koding

Go kullanan di─čer siteleri g├Ârmek i├žin T─▒klay─▒n─▒z. Listede T├╝rkiye'den de bir├žok firma mevcut.

ÔÇő