Skip to content

Commit 2968903

Browse files
author
pasali
committed
unit 2 chapter 1
1 parent 78057d1 commit 2968903

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

tr/02.1.md

+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# 2.1 Hello, Go
2+
3+
Go ile uygulamalar geliştirmeden önce, nasıl basit programlar yazabiliriz onu öğrenelim. Temeli atamdan koca bir bina inşa edemezsiniz. Bu yüzden, bu bölümde basit bir program yazarak söz dizimini öğreneceğiz.
4+
5+
## Program
6+
7+
Uluslararası gelenekler göre, bir programala dilini öğrenmeye başlarken genelde "Merhaba dünya" ile kodlanmaya başlanır.
8+
9+
Hazır mısınız? Öyleyse başlayalım!
10+
11+
package main
12+
13+
import "fmt"
14+
15+
func main() {
16+
fmt.Printf("Merhaba, dünya ya da 你好,世界 ya da καλημ ́ρα κóσμ ya da こんにちは世界\n")
17+
}
18+
19+
Aşağıdaki cümleyi ekrana basavaktır.
20+
21+
Merhaba, dünya ya da 你好,世界 ya da καλημ ́ρα κóσμ ya da こんにちは世界
22+
23+
## Açıklama
24+
25+
Bilmeniz gereken ilk şey Go programları `package`(paket)'lerden meydana gelir.
26+
27+
`package<paketİsmi>` (Bu örnekte `package main`) satırı bize bu programın `main` paketine ait olduğunu, ve `main` kelimesi ise bu programın uzantısı `.a` olan bir kütüphane olarak değil bir yazılım olarak derleneceğini söylüyor.
28+
29+
Her çalıştırılabilir program sadece bir `main` paketi içerebilir, ve `main` adında argüman almayan ve bir değer dönemeyen fonksiyona sahip olamalıdır.
30+
31+
`Merhaba, dünya…` yazdırabilmek için, `Printf` adında bir fonksiyon çağırdık. Bu fonksiyon `fmt` paketinden geliyor, `import "fmt"` satırı ile gerekli paketi çağırmış olduk.
32+
33+
Go'daki paket mantığı Python dili ile benzer, ve birkaç avantajı var: Modülerlik (prograını bir çok parçaya ayırabilirsiniz) ve tekrar kullanabilme (her modul başka ugulamalar için kullanılabilir). Paket konseptinden biraz bahsetmiş olduk, daha sonra kendi paketimizi oluşturacağız.
34+
35+
Beşinci satırda, `func` kelimesi `main` fonksiyonumuzu tanımladık. Fonksiyon gövde `{}` parentezlerin arasında; C, C++ ve Java'da olduğu gibi.
36+
37+
Gördüğünüz gibi, herhangi bir arguman almıyor. Argüman alan, belirli bir değer dönen ve birden fazla dönüş değeri olan fanksiyonlar yazmasını öğrenceğiz.
38+
39+
Altıncı satırda, `fmt` paketinden `Printf` fonksiyonunu çağırdık. Çağırma işlemi `<paketİsmi>.<fonskiyonismi>` şeklinde Pthyon'da olduğu gibi.
40+
41+
1.ünitede bahsettiğimiz gibi, peket ismi ve paket dosyalarını içerin dizinin ismi farklı olabilir. Burada `<paket ismi>` `package <paket ismin>`den geliyor, diznin isminden değil.
42+
43+
Yukarıdaki örneğin ASCII olmayan karakterler içerdiğini fark etmişsinizdir. Buradan da anlayacağınız üzeri Go UTF-8'i ön tanımlı olarak destekliyor. Herhangi bir UTF-8 karakterini programınızda kullabilirsiniz.
44+
45+
## Sonuç
46+
47+
Go `package` (Python'daki modüller gibi) mantığını kullanarak programları organize ediyor. `main.main()` (bu fonksiyon `main` paketinde olmalı) fonksiyonu programınızın başlangıç noktası. Go öntanımlı olarak UTF-8 destekliyor, zaten Go'nun oluşturanlardan biri UTF-8 yaratan kişi, bu yüzden Go ilk çıktığınadn beri çoklu dil desteğine sahip.
48+
49+
## Linkler
50+
51+
- [İçerik](preface.md)
52+
- Önceki bölüm: [Temel go bilgisi](02.0.md)
53+
- Sonraki bölüm: [Go Temelleri](02.2.md)

0 commit comments

Comments
 (0)