Ana Sayfa

Go Programlama Diline Dürüst Bir Bakış

1 dk okuma

Bu makale, Go programlama dilini birkaç küçük projede kullandıktan sonra Rust'a geri dönmeyi düşünen bir geliştiricinin Go hakkındaki ilk izlenimlerini ve düşüncelerini sunuyor. Yazar, Go'nun güçlü yönlerini ve beğenmediği bazı özellikleri objektif bir şekilde değerlendiriyor.

Go'nun en beğenilen özelliklerinden biri eşzamanlılık (concurrency) modelidir. Goroutine'ler ve Channel'lar dilin temel bir parçası olarak tasarlandığı için diğer dillerdeki "renkli fonksiyonlar" sorununu başarıyla aşıyor. Bu yerleşik yapıların kullanımı oldukça keyifli ve eşzamanlılığı doğru bir şekilde ele alması etkileyici bulunuyor. Dilin tip sistemi de sadeliğiyle öne çıkıyor; karmaşık kalıtım ağaçlarına izin vermeyip bunun yerine struct embedding (yapı gömme) gibi sentaktik şekerler sunuyor. Ayrıca, bir struct'ın bir arayüzü (interface) açıkça uygulamasına gerek kalmaması, interface{} veya any gibi boş arayüzlerin dinamik tipleme için kullanılabilmesini sağlıyor, bu da Printf ve HTML/metin şablonları gibi yapıların makrolara ihtiyaç duymadan daha basit yazılabilmesine olanak tanıyor.

Yazar, Go'nun sözdiziminin (syntax) ergonomisini de beğeniyor. Tip açıklamalarını daha kısa ve okunabilir bir şekilde yazma imkanı sunması, yazım süresinden tasarruf sağlıyor. Büyük ve küçük harflerin değişken ve tip görünürlüğünü (paket içi veya genel) belirlemesi mantıklı bulunuyor ve Rust'taki sürekli pub anahtar kelimesini yazma zorunluluğundan hoşlanmadığını belirtiyor. Makale, Go'nun beğenilmeyen yönlerinden biri olarak "Enums" konusuna değinmeye başlıyor ancak bu kısım tamamlanmadan bitiyor.

İçgörü

Go programlama dilinin eşzamanlılık, tip sistemi ve sözdizimi gibi temel özelliklerinin bir geliştirici perspektifinden değerlendirilmesi, dilin güçlü ve zayıf yönlerini anlamak için önemli bir bakış açısı sunuyor.

Kaynak