Google Go !
Posted by in GoogleGoogle Go !
Yeni ürün ve hizmet duyuruları ile adını sık sık duyduğumuz, büyük firmaları kendi bünyesine katarak hızla büyüyen Google; Android, Chrome derken şimdi de yeni bir programlama dili ile karşımızda. Robert Griesemer, Ken Thompson ve Rob Pike’ın 2007′nin sonlarına doğru geliştirmeye başladıkları Go dili 2008′in ortalarına doğru bir şekil almaya başlamış. Bu yazıda Go dilinin özelliklerinden, yeniliklerden çalışma prensibinden bahsedip bir kaç küçük kod örneğide vereceğim.
Neden çıktı bu Go ?
Go’nun kendi sitesindeki bilgilere göre: makinelerin hızlarındaki gelişim yavaşlarken, yazılımların hızla gelişmesi. Google bu işin geleceğini düşünüp, eğer yeni bir şeyler yapılmazsa, yazılımların git gite daha yavaş çalışacağını söylüyor. Buna ek olarak bir yazılım geliştirme sürecinin gerçekten uzun bir süreç olduğundan bahsediyor. Bütün bunların önüne geçmek için daha hızlı ve eğlenceli Go’yu karşımıza çıkarmış.
Go’nun özellikleri
Go’nun en büyük hedeflerinden biri static-type bir dilin verimliliği ile dynamic-type olan bir dilin kolaylılığı birleştirmek. Bu yüzden Go için Python ve C++’ın bir karışımı diyebiliriz. Bir de derleme derleme hızını arttırdıklarını söylüyor. Dökümanlarına derleme hızının yavaşlığı anlatan hoş bir karikatürü eklemişler hemen paylaşayım.
package main
import fmt “fmt”
func main () {
fmt.Printf(“Hello, world; or Καλημέρα κόσμε; or こんにちは 世界\n”); // utf-8 desteğine dikkat : )
}
6g ile derleyelim
6g helloworld.go # compile; object goes into helloworld.6
6l helloworld.6 # link; output goes into 6.out
6.out
Hello, world; or Καλημέρα κόσμε; or こんにちは 世界
gccgo ile derleyelim
gccgo helloworld.go
a.out
Hello, world; or Καλημέρα κόσμε; or こんにちは 世界
Son olarak Go’nun deneme aşamasında olduğunu hatırlatırım. Kim bilir belki ileride okullarımızda Google’ın Go’su öğretilir
.
Kaynaklar:
golang.org
Ek: Go’nun maskotu http://imgur.com/U8HcM.gif
Onur AKTAS
http://www.alonon.net
Related posts
You can follow any responses to this entry through the RSS 2.0 You can leave a response, or trackback.
