YazılımGolang Dili Nedir? Yazılım Nasıl Geliştirilir?

Golang Dili Nedir? Yazılım Nasıl Geliştirilir?

-

Go, Google Go,  isimleriyle de bilinen golang dili  2007 yılında  Ken Thompson,  Rob Pike ve  Robert Griesemer tarafından geliştirilmiş ve günümüz itibariyle Google firmasının destekleyip geliştirmeye devam ettiği açık kaynaklı ve ücretsiz bir yazılım dilidir.  Yorumlama özelliği yerine derleme ve statik yazım özelliklerini barındıran  golang,  C programlama diliyle de benzer özellikler taşımaktadır. Bu programlama dili için ekstra kaynak veya kütüphaneler de yine Google firması tarafından üretilmektedir.

Golang ile Hangi Projeler Geliştirilebilir?

  • Golang dilinin ortaya çıkış  amacı  sistem programlamalarının daha etkili bir şekilde yapılmasıdır.   Golang dili  sunucu ve  sistem geliştirme alanında özellikleri bulunan öğrenmesi kolay bir dildir.
  •  Golang hızlı ve yüksek performans sağlayan bir dildir. Yüksek kapasiteli web geliştirme projeleri oluşturmanıza olanak tanır.
  • Yazılım sektöründe yeni bir dil olduğu için kısıtlı projeleri bulunmasına rağmen mobil platformlarda da geliştirme seçeneği bulunmaktadır.  Go dilinde uzmanlaşan kişiler sadece sunucu ve web tarafında yaptıkları geliştirmelerin yanında kendi mobil oyunlarını ve programlarını (Yalnızca Android) bu dil ile geliştirebilecek.

Neden Golang Kullanılmalıdır?

  • Sunucu ve sistem geliştirme üzerine bir yazılım dili olduğu için birçok sunucuyla birlikte hatasız bir şekilde çalışabilir.
  • Dil, kuralları bakımından diğer dillere göre daha sadedir. Karmaşık sözcük yapılarına sahip değildir.
  • Diğer sistemlerle entegre çalışabilme (concurrency) ve statik tipli bir yazılım olması tercih edilme sebeplerinden birisidir.
  • Derleme aşaması için tek bir kaynak kullanıyor. Yani bir tane ikili sistemi derleyiciye sokmak yeterli oluyor.
  • Geçmişe dönük bir yazılım dilidir. Diğer bir deyişle eski sürümlerde yazılmış bir web projesi güncel sürümlerde de desteklenmektedir.
  • Makine diline çevirmek için ekstra programlara ihtiyaç duymayan Galang kullanıcılarının zaman tasarrufunu yapmasını sağlar.
  • Golang kendisi için ayrılmış olan bellek ve ram alanını en kaliteli şekilde kullanmak üzerine tasarlanmıştır.

Golang Dilini Kullanan Firmalar

Kullanıcılarına daha hızlı web geliştirme ve internet deneyimi sunan golang, bir çok firma tarafından kullanılmaya başlandı. Golang dilini tercih eden firmalar şunlardır:

  • Facebook
  • Twitter
  • Apple
  • Github
  • Ubuntu
  • Amazon
  • Dropbox
  • Uber
  • Medium
  • Trendyol
  • Netflix
  • Youtube

Golang Yazılımı Nasıl Kurulur?

Golang programlama dili paketlerini bilgisayarınıza indirmek için golang.org resmi sitesini ziyaret edebilirsiniz.

Bilgisayarınıza indirmek için https://golang.org/dl

Yazılım dokümantasyon kaynaklarına erişmek için https://golang.org/doc/

Yazılım dilinde bulunan paketleri görüntülemek için https://golang.org/pkg/

Web üzerinden geliştirme aracını kullanmak için ise https://play.golang.org/ linklerini takip etmelisiniz.

Golang Geliştirme Ortamları  (IDE) Nasıl Kurulur?

Golang yazılımını indirdikten sonra sunucu , sistem ya da mobil platform geliştirme işlemlerinizi yapmak için ayrı bir yazılıma ihtiyaç duyacaksınız.  En çok kullanılan golang geliştirme ortamları  şunlardır:

  • Vim  :  https://www.vim.org/download.php
  • Atom : https://atom.io
  • Visual Studio : https://visualstudio.microsoft.com/tr/downloads/
  • Emacs : https://www.gnu.org/software/emacs/download.html
  • Eclipse : https://www.eclipse.org/downloads/
  • Intellij: https://www.jetbrains.com/idea/download/
  • LiteIDE Metin Editörü  : Resmi sitesi liteide.org
  • Sublime Text Metin Editörü  : Resmi sitesi sublimetext.com

Kurmak istediğiniz geliştirme  ortamlarının resmi web sitelerine giderek kişisel bilgisayarınıza uygun olan sürümleri indirebilirsiniz.

En Çok Kullanılan Golang Kütüphaneleri

  • ORCA
  • Beego
  • Gorilla Toolkit
  • Gobot
  • Martini

Golang ile Yazılım Geliştirme

Println ile Çıktı Almak

Golang yazılım geliştirme   için istediğiniz bir geliştirme ortamını kurarak merhaba_dunya.go ismiyle klasör oluşturarak ilk projeniz için kod yazmaya başlayabilirsiniz. Golang dersleri  için öğretilen ilk metod ekranda çıktı göstermektir. “Merhaba Dünya” kelimesini kullanıcılara gösterebilmek için şu dize kullanılmalıdır:

Package main 
Import  “fmt”
Func main () {
Fmt.println(“Merhaba Dünya”)
}

Yukarıdaki örnekte ana paketi ve fmt ön işlemci kütüphanelerini içeri aktardıktan sonra println komutu ile mesajımızın gösterilmesini söyledik. Go dili oldukça hassas bir dildir. Func main ibaresinden sonraki açılan süslü parantez fonksiyonun hemen yanında olmalıdır. Aksi takdirde hata mesajı ile karşılaşabilirsiniz.

CLI Üzerinden Görüntüleme

Yukarıda verilen örnekteki dosya belleğin içerisinde saklanıyor. Bunu komut satırı üzerinden görüntülemek için aşağıdaki ifade kullanılmalıdır:

Go run merhaba_dunya.go

Komutunu çalıştırdığınızda ekrana println alanındaki metin değeri çıkacaktır.

Golang Program Yapısı

Her programlama dilinde olduğu gibi  go dilinde de temel bir program yapısı bulunmaktadır. Bu program yapısının içerisinde şunlar bulunur:

Belgeler

Yorum alanları içerisinde oluşturulan ve kullanıcılara gösterilmeyen belgeler içerisinde  oluşturulan programın ismi,  hangi sürümde oluşturulduğu,  programın açıklama alanı , programı kimin yazdığı,  ve oluşturulma tarihi gibi ifadeler yer alır.

Önişlemci terimleri

Import “fmt” ile ifade edilen bu bölümde , herhangi bir projeyi derleyici alanına göndermeden önce bu program için olması gereken yazılımların içeriye aktarılması gerektiğini söyler. 

Main() fonksiyonu

Her program başlatıldığında kullanılması gereken ana fonksiyondur.  Bu fonksiyon olmadığında yapılan projeler hata veya sorunlarla karşılaşarak doğru çalışmaz.  Dolayısıyla main fonksiyonu go dilinin beynidir denilebilir.

Yerel  değişken

Oluşturulacak fonksiyon içerisinde kullanılacak olan terimlerin önceden tanımlandığı alandır.  Daha düzenli kod ve fonksiyon oluşturulabilmesi açısından oldukça önemlidir.

Program yorum alanı

Program yorum alanları, kullanıcılar tarafından görüntülenmesi istenmeyen yapıları içerir.  Örneğin yazılan kodun hangi işlevi çalıştırdığı ya da daha sonraki geliştiriciler için bırakılan kısa notlar. Kullanımı şu şekildedir:

/*  Burası fonksiyonun başlatıldığı alandır.  */

Kullanıcıların yazdığı kod alanları

Belirli bir olayı veya dömgüyü çalıştırmak için main() ana fonksiyonundan sonra gelen tüm alanlardır.

Golang Yazılım Dilinde Kullanılan Veri Türleri

Golang  dilinde kullanılan 3 farklı veri türü bulunmaktadır.

Sayılar (Numbers)

Sayılar  işaretli ve işaretsiz tam sayılar olmak üzere 2 kategori üzerinde incelenebilir. Bit sayısına göre farklı şekillerde tanımlanan sayıları aşağıda verilen tabloya göre tanımlayabiliriz:

İşaretli Tam Sayılar

Verinin TipiBoyutuBulunduğu Aralık
int88 bit-128 ile 127
int1616 bit-215   ile 215-1
int3232 bit-231 ile 231-1
int6464 bit263 ile 263-1
İntDeğişebilirDeğişebilir

İşaretsiz Tam Sayılar

Verinin TipiBoyutuBulunduğu Aralık
uint88 bit0 ile 127
uint1616 bit0 ile 216-1
uint3232 bit0 ile 232-1
uint6464 bit0 ile 264-1
UintDeğişebilirDeğişebilir

Doğru-Yanlış (Boolean)

Karar vermek için oluşturulan fonksiyonlarda kullanılır.  İfade doğruysa true yanlışsa false değerini döndürür.  

Kelimeler (String)

Bazı söz dizelerini, kelimeleri ya da özel karakterleri tutmak için kullanılan veri türüdür. “” işareti arasına  yazılır.

Golang Değişken Tanımlama

Değişkenler  belirli türdeki dosyaları saklamak için kullanılan bellek  yapılardır. Her değişken oluşturulduğunda o değişken için bilgisayarın belleğinde yer ayrılır ve çağırma komutu girildiğinde bellekte saklanan değer görüntülenir.  Golang dili  ile değişken şu şekilde tanımlanmalıdır:

var <değişkenin adı> <değişkenin tipi>  = <değişkene eşit olan değer>  bu yapıya göre aşağıdaki gibi bir kod yapısı kullanımı doğru olacaktır.

İlgili kütüphaneler dahil edilir. Daha sonra;

Func main() {
var sehirBilgisi string  Bu alana değişken tanımlaması yapılır.
sehirBilgisi = “istanbul”
fmt.println(sehirBilgisi)
} 

Çıktı olarak fonksiyon içerisinde sehirBilgisi değişkenine eşit olan “İstanbul ” ifadesi bastırılır.

Sabit Değişken

Tanımlandıktan sonra üzerinde güncelleme işlemlerinin yapılamayacağı değişkenlerdir.  Kullanımı:

Const <sabit değişken ismi> = sabit değer 
Package main 
Import “fmt”
Func main() {
const benimMeslegim string = “Web Geliştirme ”
fmt.println(ismim)
} 

Aritmetik Operatörler

Golang programlama dili  içerisinde yer alan aritmetik operatörler şunlardır:

A=40 B=20 değeri için

+ : İki değişkeni birbiriyle toplar. Çıktı: 60

– : İki değişkenin farkını almak için kullanılır. Çıktı: 20

* : İki değişkeni birbiriyle çarpar. Çıktı: 800

/ : İki değişken arasında bölme işlemi yapar. Çıktı: 2

% : Bölüm sonucunda kalanı göterir. Çıktı: 0

Golang Dili Koşul Yapıları

Oluşturulan fonksiyonlar doğru-yanlış mantığı ile çalışmaktadır.  Yani 1. Değer olan if alanına ilerleyen fonksiyon tanımlanan değer ile karşılaştırma yapar sonuç doğruysa fonksiyon yazdırılır. Doğru değilse hemen altındaki if ya da else fonksiyonuna ilerleyerek doğru olan koşulu bulduğunda ekrana yazdırır.

If  :  Bu blok yalnızca doğru koşullarda çalışmaktadır.

If-Else :  En az 1 doğru ve 1 yanlış koşul olduğu durumlarda kullanılan fonksiyon yapısıdır.

İç-içe If : If fonksiyonu içerisinde başka bir if fonksiyonu tanımlanması sonucunda oluşan yapıdır.

Switch : Switch alanları bir durumun birden fazla sonucu olduğunda oluşturulurlar.

Golang Döngüler

Döngüler bir olayın işleyişini kontrol etmek, değiştirmek  ya da  birden fazla değerin görüntülenmesini istediğimiz durumlarda kullanılan yapılardır. Golang dili  içerisinde 3 döngü komutu bulunmaktadır.

  • Fonksiyonu kırmak için break
  • Fonksiyonu geçmek için continue
  • Belirlenen alana ilerlemek için goto komutu kullanılır.

Golang ile Range(Aralık,Dizi) Oluşturma

Range kavramı belirli bir ögeye ait alt kategorileri listelendirmek için kullanılır.  Range aralığı oluşturmak için içerisinde yer alan kategoriler for döngüsü içerisinde tutulur.

For key(anahtar) value(değer) := range collection (aralık koleksiyonu) {
// Bu alana sınıflandırmak istediğiniz anahtar kelimeleri yerleştirebilirsiniz.
// Alt çizgi işaretiyle saklamak istemediğiniz anahtar kelimeleri belirterek atlayabilirsiniz. 
} 
Ana Range yapısı şu şekilde oluşturulmalıdır: 
Package main
Import “fmt”
 Func main() {
yazilimDilleri  := [] string {“HTML” , “CSS” , “Javascript” , “Python” , “PHP” , “Java”}
fmt.println(“Popüler Diller:  ”)
for  x,y  := range yazilimDilleri {
fmt.println(x,y)
}
}

Bu alanda ilk olarak ana paketleri içeriye aktardıktan sonra yazılım dilleri listelendi. Daha sonra Komut satırına yazılacak olan string değeri tanımlandıktan sonra “range” ifadesiyle  dizi içerisinde yer alan değerler ekrana yazdırıldı.

Golang Slice Yapısı

Array yapılarına benzerlik gösterir.  Aynı sınıfa ait birden çok verinin bir alan içerisinde depolanacağı durumlarda slice komut yapısı kullanılır.  Oluşturulan dizi içerisindeki veriler dinamik olarak değişmez.  Bir dizinin boyut bilgisini girmeden tanımlamak için  “make” ifadesi verilmelidir. Örneğin :

  1. var numaralar []int /*  Büyüklük bilgisi olmayan slice yapısı   */
  2. var numaralar  == []int{5,5,5,5,5} /*5 uzunluğa sahip 5 rakamının slice yapısı */
  3. var numaralar =make([]int,5,5)  /*Boyut belirlemeden dizi oluşturma */

Len() ve cap() Fonksiyonunun Slice Yapısında Kullanılması

Slice dizilerinde kapasite ve uzunluk değerlerine erişmek için kullanılan fonksiyonlardır. len() oluşturulan dizinin uzunluğunu cap() ise içerisindeki elemanların kapasite bilgisini verir.

İçerisinde 6 eleman bulunan 9 kapasiteye sahip bir dizi fonksiyonu oluşturalım.

İlk olarak ana fonksiyon olan main ve fmt belirtmeleri yapılır. Daha sonra ;

Func main() {
Var numaralarim = make([]int,6,9)
printSlice(numaralarim)
}
Func printSlice(n [] int){
Fmt.printf(“uzunluk = %d kapasite = %d diziElemanlari = %v\n” , len(n) , cap(n) , n )
}

Yukarıdaki kodların çıktısı şu şekilde görüntülenmelidir:

Uzunluk = 6  kapasite=9 diziElemanlari [0,0,0,0,0,0]

Golang Dilini Öğrenmek İçin Kullanılacak Kaynaklar

İnternet üzerinde bulunan golang dersleri bu dili öğrenmek için en iyi kaynaklardan birisidir. Bu yazılım dilini öğrenmek için en çok kullanılan kaynaklar şunlardır:

  • Youtube
  • Udemy
  • Tour of Golang
  • Go by Example
  • Coursera Golang Programları
  • Tutorials Point – Temel Golang Komutları

Yorum Yapabilirsiniz

Please enter your comment!
Please enter your name here

Son Makaleler

Windows 10 Kayıt Defteri Temizleme İşlemi Nasıl Yapılır?

Windows 10 kayıt defteri temizleme işlemi kullanıcılar için bazı zamanlarda oldukça önemli olabiliyor. Çünkü bu işlem sayesinde bilgisayarda oluşan...

Arduino vs Raspberry Pi: En iyi Kart hangisi?

Tek kartlı bilgisayarlar, yeni başlayanlar için geliştirme ve öğrenme sürecinde kullanılabilmeleri nedeniyle son yıllarda oldukça popüler hale geldi. Tek kartlı...

Hidrofilik polimerler Yeşil bir geleceğin anahtarı

Surrey Üniversitesi ve Bristol Üniversitesi'nden araştırmacılar, rüzgar ve güneş gibi öngörülemeyen kaynaklardan gelen karbonsuz yenilenebilir enerjiyi evcilleştirmek ve depolamak...

Ember JS Nedir, Niçin Kullanılır?

Ember js, web uygulamaları geliştirmek için kullanılan açık kaynaklı ve ücretsiz bir JavaScript çerçevesidir. Daha açık bir dille, bir...

Kuantum Fiziği Neden Önemlidir ve Olmasaydı Neler Olurdu?

Bütün fizikçilerin bildiği gibi kuantum fiziği çok karmaşık bir konudur. Çünkü bu fizik evreninde bizim bildiğimiz kurallar geçerli değildir....

Simyanın Önemi ve Simya ile Bilim İlişkisi

Yüzyıllardır inanlar simyanın uğraşları içerisine girmişlerdir. Bu uğraşların temel amaçlarına yazımı içerisinde değineceğiz. Ancak çok genel bir çerçeve ile...

Önerilen Makaleler

Windows 10 Kayıt Defteri Temizleme İşlemi Nasıl Yapılır?

Windows 10 kayıt defteri temizleme işlemi kullanıcılar için bazı...

Arduino vs Raspberry Pi: En iyi Kart hangisi?

Tek kartlı bilgisayarlar, yeni başlayanlar için geliştirme ve öğrenme...

ilgili diğer makalelerBAĞLANTILI
sizin için öneriliyor