Turkish Golang Tutorial Guide #1 : Setup, Structure, Syntax

in #utopian-io8 years ago (edited)

Hi everyone, this is a Turkish tutorial content about Golang (Go) programming language. It will be a contet serial abut this language. This post will be first part and will be about environment setup, program structure, basic syntax and data types.

Golang ve GoLand Setup


Bir metin düzenleyicisiyle (Notpad vb.) oluşturduğunuz dosyalara kaynak dosyalar denir. Programın kaynak kodunu içerirler. Go programlarının kaynak dosyaları genellikle ".go" uzantısıyla adlandırılır. Bu aslında her programlama dili için geçerli bir kuraldır. Yaratıldığı dilin kabul görülmüş uzantısını alır kaynak dosyaları. Python ".py"gibi. Programlamaya başlamadan önce bir metin düzenleyicinizin veya Go için tasarlanmış bir IDE'ye sahip olduğunuzdan emin olun.

Badges
Windowsgo1.4.windows-amd64.msi
Linuxgo1.4.linux-amd64.tar.gz
Macgo1.4.darwin-amd64-osx10.8.pkg
FreeBSDgo1.4.freebsd-amd64.tar.gz

Go programlama dilini ve GoLand IDE'sini indirdikten sonra kurulum kısmına geçeceğiz .Önce Go'yu kuruyoruz.

Şimdi de GoLand IDE'yi kuracağız.

Bu işlemlerden sonra Go progrmalama dili ve kullanacağımız IDE olan GoLand'ı indirip kurmuş oluyoruz. Buraya kadar olan kısım bir çok uygulamadan alışık oladuğumuz next next next finish kısmıydı :)

Proje Oluşturma ve Temel Syntax


İndirme işlerinden sonra GoLand ile projemizi oluşturuyoruz.

Ardından açtığımız projede ilk örnek uygulamamızı yazıyoruz. Tabi yazılım camiasında ilk örnek "Hello World!" dür. Gelenek bozulmasın ama biraz esnesin bizde "Hello Utopian!" yapalım.

Go özünde fonksiyonel bir dil olduğu için syntax'ı da ona göre şekilleniyor doğal olarak fakat daha öncesinden fonksiyonel bir dil ile çalışan varsa bu konuda zorlanmayacaktır. Burada import ettiğimiz fmt aslında içinde birçok metodu barındıran bir pakettir. Println bunlardan birisi. Ekrana yazı yazdıracağımız için bu işlemi sağlayacak metodu barındıran paketi ilk başta import ettik. Bu biraz aslında Java ve C#'ın syntax'ını anımsatıyor bana.

Veri Tipleri


Int-Float
int8-128 to 127
int16-32768 to 32767
int3232-bit integers
int6464-bit integers
float3232-bit floating-point
float6464-bit floating-point

Veri tiplerinden bahsettik çünkü diğer programlama dillerinin aksine Go veri tiplerini biraz farklı kullanıyor syntax'ı içerisinde. İlk başlarda garip geliyor insana fakat, sonra alışıyor zamanla. Ama bu bir sonraki yazının konusu.

Genel Görüş


Yazının başında bahsetmeyi unuttum bari sonuna ekliyeyim dedim. Ben daha önce Go kullanmadım hiç, ilk defa bu postu yazarken indirip, kurup, kurcalamaya başladım. Uzun bir yazı serisi olarak düşünüyorum ben bunu. Hem ben bir şeyler öğreniyor olucam, hem de öğrendiklerimi yazarak bir nevi not tutmuş olucam. Adım adım mümkün olduğunca günlük bir şekilde Go ile pratikler yapıp bunları post olarak girmeye çalışacağım.

Genel görüşüm ise Go'nun gerçekten oldukça eğlenceli bir dil olduğu yönünde. Daha öncesinde Python içinde aynı şeyleri hissetmiştim ama platonik kaldı. Yakın zamanda belki tekrar yazarım uyudun mu? diye. Syntax'ın farklı olması işi eğlenceli kılıyor bana kalırsa. Çünkü farklı olan şey insanı motive eder öğrenme açısından. GoLand'in ara yüzüde Android Studio ile PyCharm'ın karışımı gibi biraz. Kullanımı oldukça rahat ve sade.



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Beynimi yaktın üstad :D

Sen yanmazsan, ben yanmazsam nasıl çıkar karanlık aydınlığa :D

bu monomyth bi harika dostum

Thank you for the contribution. It has been approved.

[utopian-moderator]

Hey @monomyth I am @utopian-io. I have just upvoted you at 5% Power!

Achievements

  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Work on your followers to increase the votes/rewards. My vote is on the human input. Good luck!
  • Contribute more often to get higher and higher rewards. I want to see you often!
  • Wondering why other contributions got more? I introduced a competition factor. My vote is based also on how competitive the category used is.

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x