Yolculuk
Go (Golang) Öğren
Ücretsiz, interaktif online Go kursu. Her derste Go yazıyorsun — syntax, struct'lar, slice'lar, interface'ler, goroutines, channels — concurrency işin içinden çıkılmaz hale geldiğinde devreye giren AI ipuçları ve bitirdiğinde ücretsiz sertifikayla.
20,998+ codders kayıtlı
- Başlangıç dostu
Yapay zeka destekli kodlama yardımı
Uygulamalı interaktif dersler
Her derste sesli anlatım
Bilgini sınamak için testler
Ücretsiz tamamlama sertifikası
Müfredat
Bölüm 1
Temeller
Bölüme başlaBaşlaGenişletDaraltTemel kavramlar ve temel becerilerle sağlam bir temel oluşturunGo'ya Giriş
4 ders423- 01Go Nedir?Görev
- 02Merhaba DünyaGörevQuizSes
- 03PrintlnGörevQuizSes
- 04Go YorumlarıGörevQuizSes
Değişkenler ve Temel Veri Tipleri
10 ders1069- 01Değişken nedir?GörevQuizSes
- 02`:=` ile Tür ÇıkarımıGörevQuizSes
- 03Tam Sayılar (int)GörevQuizSes
- 04Ondalıklı SayılarGörevQuizSes
- 05BooleanlarGörevQuizSes
- 06StringlerGörevQuizSes
- 07Sıfır DeğerlerGörevQuizSes
- 08SabitlerGörevQuizSes
- 09İsimlendirme KurallarıGörevQuizSes
- 10Özet - Değişkenler ve TürlerGörev
Temel Operatörler
7 ders744- 01Aritmetik OperatörlerGörevQuizSes
- 02Bölme OperatörüGörevQuizSes
- 03Modulo OperatörüGörevQuizSes
- 04Atama OperatörüGörevQuizSes
- 05Bileşik Atama OperatörleriGörevQuizSes
- 06Artırma ve AzaltmaGörevQuizSes
- 07Özet - HesaplamalarGörev
Karşılaştırma ve Mantıksal Operatörler
7 ders742- 01Karşılaştırma Operatörleri - Bölüm 1GörevQuizSes
- 02Karşılaştırma Operatörleri - Bölüm 2GörevQuizSes
- 03Mantıksal VE OperatörüGörevQuizSes
- 04Mantıksal VEYA OperatörüGörevQuizSes
- 05Mantıksal DEĞİL OperatörüGörevQuizSes
- 06Operatör Önceliği TemelleriGörevQuizSes
- 07Özet - Karşılaştırma YapmaGörev
Temel Giriş/Çıkış
5 ders532- 01Biçimlendirilmiş ÇıktıGörevQuizSes
- 02Biçim BelirteçleriGörevQuizSes
- 03Veri Tiplerini YazdırmaGörevQuizSes
- 04Temel Kullanıcı Girdisi AlmaGörevQuizSes
- 05Özet - Giriş ve ÇıkışGörev
Kontrol Akışı: Koşullu İfadeler
10 ders1069- 01`if` İfadesiGörevQuizSes
- 02`else` Anahtar KelimesiGörevQuizSes
- 03`else if` Anahtar KelimesiGörevQuizSes
- 04`if` İçinde Değişken GölgelemeGörevQuizSes
- 05Değişkenleri BaşlatmaGörevQuizSes
- 06`switch` İfadesiGörevQuizSes
- 07İfadeli `switch`GörevQuizSes
- 08İfadesiz `switch`GörevQuizSes
- 09`fallthrough` Anahtar KelimesiGörevQuizSes
- 10Özet - Karar VermeGörev
Kontrol Akışı: Döngüler
7 ders743- 01`for` Döngüsü Nedir?GörevQuizSes
- 02`for` Döngüsü - TemelGörevQuizSes
- 03`for` Döngüsü - Sadece KoşulGörevQuizSes
- 04`break` Anahtar KelimesiGörevQuizSes
- 05`continue` Anahtar KelimesiGörevQuizSes
- 06İç İçe DöngülerGörevQuizSes
- 07Özet - İşlemleri TekrarlamaGörev
Fonksiyonlar
9 ders962- 01Fonksiyonları AnlamakGörevQuizSes
- 02Fonksiyon TanımlamaGörevQuizSes
- 03Fonksiyonları ÇağırmaGörevQuizSes
- 04Fonksiyon ParametreleriGörevQuizSes
- 05Tek Bir Değer DöndürmeGörevQuizSes
- 06Birden Fazla Değer DöndürmeGörevQuizSes
- 07İsimlendirilmiş Dönüş DeğerleriGörevQuizSes
- 08Fonksiyon Kapsamı TemelleriGörevQuizSes
- 09Özet - Yeniden Kullanılabilir Kod OluşturmaGörev
İşaretçiler
7 ders644- 01İşaretçi Nedir?QuizSes
- 02İşaretçi Değişkenlerini TanımlamaGörevQuizSes
- 03Adres OperatörüGörevQuizSes
- 04İşaretçi Referansını ÇözmeGörevQuizSes
- 05Fonksiyonlarda İşaretçi KullanımıGörevQuizSes
- 06Nil İşaretçilerGörevQuizSes
- 07Özet - İşaretçileri AnlamakGörev
Bileşik Tipler: Diziler
7 ders650- 01Dizilere GirişQuizSes
- 02Dizileri TanımlamaGörevQuizSes
- 03Dizilere İlk Değer AtamaGörevQuizSes
- 04Dizi Elemanlarına ErişmeGörevQuizSes
- 05`len` ile Dizi UzunluğuGörevQuizSes
- 06Diziler Üzerinde YinelemeGörevQuizSes
- 07Çok Boyutlu DizilerGörevQuizSes
Bileşik Tipler: Dilimler
10 ders965- 01Dilimlere GirişQuizSes
- 02Dilim Literallerini TanımlamaGörevQuizSes
- 03`make` ile Dilim OluşturmaGörevQuizSes
- 04Dilim Uzunluğu vs KapasiteGörevQuizSes
- 05Dilim Elemanlarına ErişimGörevQuizSes
- 06Eleman EklemeGörevQuizSes
- 07Mevcut Dilimleri/Dizileri DilimlemeGörevQuizSes
- 08Dilimler Üzerinde YinelemeGörevQuizSes
- 09Dilimleri KopyalamaGörevQuizSes
- 10Özet - Dinamik ListelerGörev
Bileşik Tipler: Mapler
10 ders965- 01Maplere GirişQuizSes
- 02Map Literallerini TanımlamaGörevQuizSes
- 03`make` ile Map OluşturmaGörevQuizSes
- 04Anahtar-Değer Ekleme ve GüncellemeGörevQuizSes
- 05Map Değerlerine ErişimGörevQuizSes
- 06Anahtar Varlığını Kontrol EtmeGörevQuizSes
- 07Map Öğelerini SilmeGörevQuizSes
- 08Map UzunluğuGörevQuizSes
- 09Mapler Üzerinde YinelemeGörevQuizSes
- 10Özet - Anahtar-Değer DepolamaGörev
Bileşik Tipler: Struct'lar
8 ders854- 01Özel Tipler TanımlamaGörevQuizSes
- 02Struct Örnekleri OluşturmaGörevQuizSes
- 03Struct Alanlarına ErişmeGörevQuizSes
- 04Struct Pointer'larıGörevQuizSes
- 05Struct'ları BaşlatmaGörevQuizSes
- 06Gömülü Struct'larGörevQuizSes
- 07Anonim Struct'larGörevQuizSes
- 08Özet - Özel Veri YapılarıGörev
Temel Hata Yönetimi
8 ders858- 01Hata KavramıGörevQuizSes
- 02`error` ArayüzüGörevQuizSes
- 03Hata Döndüren FonksiyonlarGörevQuizSes
- 04Hataları Kontrol EtmeGörevQuizSes
- 05Basit Hatalar OluşturmaGörevQuizSes
- 06Formatlanmış Hatalar OluşturmaGörevQuizSes
- 07Temel Hata YönetimiGörevQuizSes
- 08Özet - Problemleri Ele AlmaGörev
Bölüm 2
Mantık ve Akış
Bölüme başlaBaşlaGenişletDaraltVeri yapıları ve akış kontrolüne odaklanarak ileri düzey Go programlamasını ustalaşın. Karmaşık diziler, koleksiyonlar, hata yönetimi ve zaman yönetimi ile çalışmayı öğrenin.İleri Seviye Kontrol Akışı
5 ders528- 01`fallthrough` ile SwitchGörevQuiz
- 02İç İçe Döngülerden ÇıkmaGörevQuiz
- 03Belirli Bir Döngüye Devam EtmeGörevQuiz
- 04`goto` İfadesiGörevQuiz
- 05Özet - İleri Seviye Döngü KontrolüGörev
Structlar ve Metotlar
6 ders439- 01Structlarda Metot TanımlamaGörevQuiz
- 02Value Receiver'larGörevQuiz
- 03Pointer Receiver'larGörevQuiz
- 04Receiver SeçimiQuiz
- 05Metotlar ve FonksiyonlarQuiz
- 06Özet - Struct DavranışıGörev
Arayüzler (Temeller)
8 ders757- 01Arayüz Nedir?Quiz
- 02Bir Arayüz TanımlamaGörevQuiz
- 03Bir Arayüzü UygulamaGörevQuiz
- 04Arayüz Tiplerini KullanmaGörevQuiz
- 05Boş ArayüzGörevQuiz
- 06Tip OnaylamalarıGörevQuiz
- 07Tip SeçimiGörevQuiz
- 08Özet - Şekiller ve DavranışlarGörev
Proje: Basit Görev Listesi
Proje6 ders1- 01Proje KurulumuGörev
- 02Görev EklemeProje
- 03Tüm Görevleri GörüntülemeProje
- 04Görev TamamlamaProje
- 05Görev SilmeProje
- 06Hepsini Bir Araya GetirmeProje
Derinlemesine Map'ler
5 ders432- 01Struct Map'leriGörevQuiz
- 02Map Değeri Olarak Pointer'larGörevQuiz
- 03Nil Map KontrolüGörevQuiz
- 04Map'leri KarşılaştırmaQuiz
- 05Özet - Kelime Frekansı SayacıGörev
Deyimsel Go: Kümeler
7 ders648- 01Go'da Küme DeyimiQuiz
- 02Bir Küme OluşturmaGörevQuiz
- 03Kümeye Eleman EklemeGörevQuiz
- 04Eleman Varlığını Kontrol EtmeGörevQuiz
- 05Kümeden Eleman SilmeGörevQuiz
- 06Küme Üzerinde YinelemeGörevQuiz
- 07Özet - Benzersiz Kullanıcı AdlarıGörev
Derinlemesine Hata Yönetimi
7 ders650- 01Özel Hata TürleriGörevQuiz
- 02`%w` ile Hataları SarmalamaGörevQuiz
- 03`errors.Is` ile Sarmalı AçmaGörevQuiz
- 04`errors.As` ile Sarmalı AçmaGörevQuiz
- 05`panic` Kavramını AnlamakQuiz
- 06`recover` KullanımıGörevQuiz
- 07Özet - Güvenli BölmeGörev
Proje: Basit Envanter
Proje6 ders1- 01Projeye Genel BakışGörev
- 02Stok KontrolüProje
- 03Yeni Öğe EklemeProje
- 04Stok Miktarını GüncellemeProje
- 05Rapor OluşturmaProje
- 06Hepsini Bir Araya GetirmeProje
Paketler ve Kapsam
7 ders550- 01Paket Nedir?Quiz
- 02Dışa Aktarılan ve AktarılmayanlarGörevQuiz
- 03Basit Bir Paket OluşturmaGörevQuiz
- 04Paket Takma AdlarıGörevQuiz
- 05Boş Tanımlayıcı `_`Quiz
- 06`init` FonksiyonuGörevQuiz
- 07Özet - Bir Yardımcı Araç OluşturmaGörev
Zamanla Çalışmak
8 ders857- 01Şu Anki Zamanı AlmaGörevQuiz
- 02Belirli Bir Zaman OluşturmaGörevQuiz
- 03Zamanı FormatlamaGörevQuiz
- 04Zaman Dizelerini AyrıştırmaGörevQuiz
- 05Zaman SüresiGörevQuiz
- 06Zaman AritmetiğiGörevQuiz
- 07Uyutma ve Ticker'larGörevQuiz
- 08Özet - Basit ZamanlayıcıGörev
Final Meydan Okumaları
3 ders3- 01Temel Kişi ListesiGörev
- 02Basit Sayı DoğrulayıcıGörev
- 03Benzersiz Öge ToplayıcıGörev
Bölüm 3
Nesne Yönelimli Programlama
Bölüme başlaBaşlaGenişletDaraltSınıflar, nesneler ve yeniden kullanılabilir yapılarla kodu organize etmeyi keşfedinGo OOP Temelleri
11 ders1189- 01Harici DosyalarGörevQuiz
- 02Go Çalışma Alanı ve ModüllerGörevQuiz
- 03Paketler ve İçe AktarmalarGörevQuiz
- 04Dışa Aktarılan ve Aktarılmayan İsimlerGörevQuiz
- 05Go'da OOP'ye GirişGörevQuiz
- 06Sınıf Olarak Struct'larGörevQuiz
- 07Struct'larda Metot TanımlamaGörevQuiz
- 08Pointer ve Değer AlıcılarGörevQuiz
- 09Struct BaşlatmaGörevQuiz
- 10Yapıcı FonksiyonlarGörevQuiz
- 11Özet - Basit Hesap MakinesiGörev
Türler ve Struct'lar: Derinlemesine İnceleme
7 ders752- 01Temel ve Bileşik TürlerGörevQuiz
- 02Özel Tür TanımlamalarıGörevQuiz
- 03Struct EtiketleriGörevQuiz
- 04Anonim Struct'larGörevQuiz
- 05İç İçe Geçmiş Struct'larGörevQuiz
- 06Sıfır Değerler ve VarsayılanlarGörevQuiz
- 07Özet - RehberGörev
İşaretçiler ve Bellek
6 ders644- 01Go'da İşaretçi TemelleriGörevQuiz
- 02Struct İşaretçileriGörevQuiz
- 03Değer ile Geçme ve Referans ile GeçmeGörevQuiz
- 04new() FonksiyonuGörevQuiz
- 05Go'da Garbage CollectionGörevQuiz
- 06Özet - Linked List OluşturucuGörev
Arayüzler
9 ders969- 01Arayüzlere GirişGörevQuiz
- 02Örtük UygulamaGörevQuiz
- 03Sözleşme Olarak ArayüzGörevQuiz
- 04Boş Arayüz (any)GörevQuiz
- 05Tür OnaylamaGörevQuiz
- 06Tür SeçimiGörevQuiz
- 07Arayüz BileşimiGörevQuiz
- 08Stringer ve Error ArayüzleriGörevQuiz
- 09Özet - Şekil HesaplayıcıGörev
Kalıtım Yerine Kompozisyon
7 ders749- 01Go'da Neden Kalıtım YokGörevQuiz
- 02Struct Gömme TemelleriGörevQuiz
- 03Metot YükseltmeGörevQuiz
- 04Birden Fazla Struct GömmeGörevQuiz
- 05Gömme vs AgregasyonGörevQuiz
- 06Gömülü Metotları GölgelemeGörevQuiz
- 07Özet - Çalışan HiyerarşisiGörev
Go'da Polimorfizm
6 ders643- 01Interface'ler ile PolimorfizmGörevQuiz
- 02Go'da Duck TypingGörevQuiz
- 03Interface Karşılama KurallarıGörevQuiz
- 04Polimorfik KoleksiyonlarGörevQuiz
- 05Dependency InjectionGörevQuiz
- 06Özet - Payment ProcessorGörev
Kapsülleme
5 ders536- 01Dışa Aktarılan ve Aktarılmayan AlanlarGörevQuiz
- 02Paket Seviyesinde KapsüllemeGörevQuiz
- 03Getter ve Setter MetotlarıGörevQuiz
- 04Go'da Bilgi GizlemeGörevQuiz
- 05Özet - Öğrenci KayıtlarıGörev
Hata Yönetimi ve OOP
7 ders754- 01error ArayüzüGörevQuiz
- 02Özel Hata TürleriGörevQuiz
- 03Hata Sarmalama (fmt.Errorf)GörevQuiz
- 04Sentinel HatalarGörevQuiz
- 05errors.Is() ve errors.As()GörevQuiz
- 06Panic, Defer ve RecoverGörevQuiz
- 07Özet - Dosya AyrıştırıcıGörev
Eşzamanlılık ve OOP
8 ders863- 01Goroutine TemelleriGörevQuiz
- 02Kanallar ve İletişimGörevQuiz
- 03Tamponlu ve Tamponsuz KanallarGörevQuiz
- 04Select İfadesiGörevQuiz
- 05sync.Mutex ve sync.RWMutexGörevQuiz
- 06sync.WaitGroupGörevQuiz
- 07Thread-Safe Struct TasarımıGörevQuiz
- 08Özet - Worker PoolGörev
Generics (Go 1.18+)
6 ders645- 01Generics'e GirişGörevQuiz
- 02Tür ParametreleriGörevQuiz
- 03Tür KısıtlamalarıGörevQuiz
- 04Generic Struct'larGörevQuiz
- 05Generic Metotlar İçin Geçici ÇözümGörevQuiz
- 06Özet - Generic KoleksiyonGörev
Standart Kütüphane ve OOP
6 ders644- 01io.Reader ve io.WriterGörevQuiz
- 02sort.Interface ArayüzüGörevQuiz
- 03fmt.Stringer ArayüzüGörevQuiz
- 04Struct'lar ile encoding/jsonGörevQuiz
- 05http.Handler ArayüzüGörevQuiz
- 06Özet - REST API ModelleriGörev
İleri Düzey OOP Kavramları
6 ders655- 01Functional Options DeseniGörevQuiz
- 02Go'da Builder DeseniGörevQuiz
- 03Metot ZincirlemeGörevQuiz
- 04Tür Takma Adları vs. TanımlamalarGörevQuiz
- 05Reflection TemelleriGörevQuiz
- 06Kod Üretimine Genel BakışGörevQuiz
Tasarım Kalıpları Bölüm 1
6 ders651- 01Tasarım Kalıplarına GirişGörevQuiz
- 02Singleton KalıbıGörevQuiz
- 03Factory KalıbıGörevQuiz
- 04Abstract Factory KalıbıGörevQuiz
- 05Observer KalıbıGörevQuiz
- 06Strategy KalıbıGörevQuiz
Tasarım Kalıpları Bölüm 2
7 ders764- 01Komut KalıbıGörevQuiz
- 02Adaptör KalıbıGörevQuiz
- 03Dekoratör KalıbıGörevQuiz
- 04Şablon Metot KalıbıGörevQuiz
- 05Durum KalıbıGörevQuiz
- 06Kompozit KalıbıGörevQuiz
- 07Dekoratör olarak MiddlewareGörevQuiz
Proje: Kütüphane Yönetimi
Proje7 ders1- 01Projeye Genel Bakış ve YapıGörev
- 02Kitap ve Kullanıcı Struct'larıProje
- 03Ödünç Alma SistemiProje
- 04Interface'ler ile AramaProje
- 05JSON Kalıcılık KatmanıProje
- 06Admin CLI ArayüzüProje
- 07Test ve EntegrasyonProje
Final Zorlukları
3 ders3- 01E-Öğrenme PlatformuGörev
- 02Bankacılık SistemiGörev
- 03Oyun Karakter SistemiGörev
Neden Coddy ile Go (Golang) öğrenmelisin
- Tarayıcıda gerçek Go kodu yaz ve çalıştır. Go toolchain kurulumu yok, ayarlanacak GOPATH yok. Her ders Go programını sunucu tarafında derler ve çıktıyı anında gösterir.
- Idiomatik Go: paketler, struct'lar, slice'lar ve map'ler, interface'ler, hata yönetimi, goroutines, channels. Yani backend ve CLI yazarken gerçekten kullanacağın Go kalıpları.
- Yapay zeka ipuçları, Go kodunu hata ayıklarken ve goroutine ile channel hatalarını çözerken cevabı vermeden sana yol gösterir; böylece concurrency modeli kafa karıştırmak yerine yerine oturur.
- Bitirdiğinde ücretsiz Golang sertifikası. Go bilgisinin giderek daha çok arandığı backend, cloud-infrastructure ve DevOps pozisyonları için güvenilir bir referans.
Go (Golang) öğrenme hakkında sık sorulan sorular
Go (Golang) öğrenmek kolay mı?
Go, modern dillerin bilinçli olarak en sade olanlarından biri. Küçük bir dil tanımı, kalıtım yok, varsayılan olarak generic karmaşıklığı yok ve güçlü bir standart kütüphane var. Yeni başlayanların çoğu ilk çalışan Go programını ilk saat içinde yazıyor, birkaç hafta içinde de goroutines yazmaya başlıyor.
Go (Golang) ne için kullanılır?
Backend servisleri, bulut altyapısı, CLI'lar ve DevOps araçları. Docker, Kubernetes, Terraform ve cloud-native altyapının büyük bir kısmı Go ile yazılmış. Dil; hızlı derleme, kolay eşzamanlılık ve tek bir statik binary üretme etrafında kurgulanmış — bu da onu sunucular ve komut satırı araçları için doğal bir tercih yapıyor.
Go öğrenmek ne kadar sürer?
Go'nun temelleri — söz dizimi, fonksiyonlar, struct'lar, slice'lar, map'ler — günlük pratikle bir-iki haftada oturuyor. interface'leri, goroutines ve channel'ları rahatça kullanmak genelde iki-altı hafta daha alıyor. Go servislerinde üretim seviyesine gelmek ise büyük ölçüde gerçek bir kod tabanında çalışmaya bağlı.
Go mu öğrenmeliyim, Python mı?
Hedefine göre seç. Python; veri işleri, scripting ve AI için daha hızlı verimli olmanı sağlar. Go ise backend servisler, altyapı araçları ve hızlı, statik tipli, dahili concurrency'ye sahip bir binary istediğin her yerde parlar. İkisi birbirini iyi tamamlar — birçok backend ekibi her ikisini de kullanır.
Golang'ı online ve ücretsiz öğrenebilir miyim?
Evet. İnteraktif Go kursu ücretsiz — tüm dersler, kodlama alıştırmaları, quizler ve sertifika dahil. Go derleyicisi sunucu tarafında çalışıyor, yani kodlamaya başlamak için Go'yu yerel olarak kurmanıza ya da GOPATH ayarlamanıza gerek yok.
Go kursunu bitirince sertifika alıyor muyum?
Evet. Go kursunu bitirdiğinizde, özgeçmişinize ekleyebileceğiniz veya LinkedIn'de paylaşabileceğiniz ücretsiz bir tamamlama sertifikası alırsınız. Geliştirdiğiniz Go projeleri veya GitHub repo'larının yanında doğrulanabilir bir kanıt.