Merhaba, bu yazımda Golang nedir, neden tercih ediyoruz, diğer dillerden farkları gibi konuları ele alacağım.
Golang, Google tarafından 2007 yılında geliştirilmeye başlanan ve 10 Kasım 2009’da duyurulan açık kaynak programlama dilidir. Öğrenmesi yeni başlayanlar için kolay denilse de ben en azından bir Python kadar kolay olmadığını düşünüyorum. Tabii farklı programlama dilleri bilen birisi çok rahat bir şekilde öğrenebilir.
Golang Kullanım Alanları
Bulut ve ağ servisleri, komut satırı arayüzleri, web geliştiriciliği, nesnelerin interneti (IoT), DevOps gibi birçok alan, Go’nun yelpazesi içindedir. Golang; Cloudflare, Dropbox, Netflix, PayPal, Riot Games, Twitch, Uber gibi markaların dikkatini çekmiş ve kullanmaya başlanmıştır.
Neden Go?
Golang'in ne olduğunu ve nerelerde kullanıldığını gördük. Şimdi de Go'yu tercih etmemizin nedenlerini görelim.
Concurrency (Eşzamanlılık)
Birbirinden bağımsız çalışmaların birleşerek çalıştırılmasına eşzamanlılık diyoruz.Bir işlemci, işleri parçalara ayırır ve çok hızlı bir şekilde anlık olarak bu parçaları çalıştırır. Bu da bize tüm işlemlerimiz aynı anda oluyormuş gibi gösterir. Parallelikte iş parçacıkları için farklı thread’ler oluşturulur. Eşzamanlılıkta ise yeni bir iş eklendiği zaman işler iş parçacıklarına ayrıldıktan sonra tek bir thread ile bu işler gerçekleştirilebilir.Eşzamanlılık genelde parallelik ile karıştırılır fakat eşzamanlılık daha farklıdır. Örneğin, “parallelism” tek bir işlemcide çalışamaz fakat “concurrency” çalışabilir.
Yüksek Performans
Öğrenirken yaptığınız ufak çaplı çalışmalarda fark edemeseniz de büyük projelerde Golang, kendini kanıtlamıştır. Performans konusunda Python ile karşılaştırıldığında öne çıkmaktadır. Hatta Golang, C dilleri ile rekabet içerisindedir diyebiliriz.
Düşük RAM İhtiyacı
Golang ile yapılan projelerde hızlı olmasının yanı sıra az RAM kullanmaktadır. Golang kodu derlendiğinde, yürütülebilir başka bir dosya oluşturulur. Oluşturulan dosya başka bir aracı kod değil, direkt olarak makine kodudur. Bu sayede Go ile geliştirdiğiniz projelerde RAM yönetimi hakkında çok da endişelenmenize gerek yoktur.
Web Geliştiriciliği, Bulut Bilişim, Ağ Sistemleri ve daha nicesi
Golang, birçok proje ve ürün için çok iyi bir çözümdür. Kolaylıkla ölçeklenebilir ve güvenli uygulamalar geliştirmenizi sağlar. Ayrıca çeşitli platformlarda hızlı bir şekilde barındırma yeteneği sağlar.
Garbage Collection
Garbage collection yani Türkçe anlamıyla çöp toplama, bilgisayarın kaynaklarının doğru yönetilmesini sağlamak için yapılan işlemlere deniyor.
Golang’da da Garbage Collection (GC) bulunuyor. Bu sayede Go ile yazılmış ürünler kaynakları kullandıktan sonra artık ihtiyacı olmayan kaynakları işletim sisteminin kullanımına GC ile açmış oluyor. Bu da şöyle gerçekleşiyor; kodlarınız içinde bir değer tutması için değişken belirliyorsunuz. Değişken kullanılırken hafızada saklanıyor ve kaynak kullanıyor. Değişken programın devamında kullanılmayacaksa GC tarafından toplanıyor. Diğer orta seviyeli dillerde bunu programcının kendisinin ayarlaması gerekiyor.
Golang ve Python Karşılaştırması
Diğer dillere göre fazlasıyla meşhur olan Python ile Go’nun genel bir karşılaştırmasını yapalım.
Sonuç
Sonuç olarak hangisini seçmek konusunda yine geliştirici, geliştirici ekip ya da proje yöneticileri karar vermelidir. Yapılacak işin içeriğine, zamanına, hedeflerine göre değişkenlik gösterebilir. Yeni başlayanlar için ise önce Python'ı önerebilirim. Hem daha fazla Türkçe kaynağa sahip hem de öğrenmesi biraz daha kolay. Golang hakkında daha fazla şey öğrenmek isterseniz buradan sitesini ziyaret edebilirsiniz.
Bu habere henüz yorum yazılmamış, haydi ilk yorumu siz bırakın!...