WEB PROGRAMMING IN GO: CREATING A GO WEB SERVER EĞİTİMİ

Go ile üretime hazır web sunucusu yazın

net/http, ServeMux, handler, middleware, JSON API, context, zaman aşımı, TLS, graceful shutdown ve test.

Go standart kütüphanesiyle http.Server, yönlendirme, middleware, JSON API, context, TLS, graceful shutdown ve test konularını uygulamalı öğreten 2 günlük backend eğitimi.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Go net/http ile sunucu geliştirme

Eğitim, Go standart kütüphanesiyle web sunucusu geliştirmeyi kapsar: http.ListenAndServe ve http.Server yapılandırması, ServeMux ve Go 1.22 desen eşleme, Handler ve HandlerFunc, middleware zincirleri, JSON encode/decode, request context ve zaman aşımı, statik dosya sunumu, TLS, graceful shutdown, log/slog, httptest ile test ve Docker ile paketleme.

Süre ve Format

2 Gün. Her gün dört modül; HTTP Sunucusu ve Yönlendirme; Middleware, Güvenlik ve İşletim ekseninde ilerleyen uygulamalı program.

Seviye

Orta Seviye — Go net/http ile web sunucusu: handler, middleware, JSON API ve zarif kapanış

Öğrenme Metodu

Her konu çalışan bir Go sunucusu üzerinde kodlanır; curl ve httptest ile davranış doğrulanır.

Neden Bu Eğitim?

⚙️Standart kütüphane

Harici çatı olmadan sağlam HTTP servisleri yazarsınız.

🧵Eşzamanlılık

Goroutine ve context ile isteği güvenle yönetirsiniz.

🚀Üretime hazır

Zaman aşımı, TLS ve zarif kapanışla servisi canlıya hazırlarsınız.

Anahtar Konular

Go web sunucusuGolang net/httpGo REST APIGo middlewareGo HTTP serverGo eğitimiGolang backendgraceful shutdownGo contexthttptest
“Go'da sunucu yazmak, az kodla çok sorumluluk taşımayı öğrenmektir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Go temeli

Go sözdizimi, struct, interface ve hata yönetimi.

2
HTTP bilgisi

HTTP metotları ve durum kodları.

3
Kurulum

Go 1.22+ kurulu geliştirme ortamı.

4
Komut satırı

curl ve temel terminal kullanımı.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı http.Server yapılandırır, yönlendirme kurar ve istek verilerini işleyen handler'lar yazar.
Modül 1
net/http Temelleri
  • http.ListenAndServe ve http.Server alanları
  • Handler arayüzü ve HandlerFunc
  • ResponseWriter ve durum kodu yazma
  • Request: URL, Header, Body
  • http.Error ve NotFound
  • Zaman aşımları: Read, Write, Idle
Modül 2
Yönlendirme
  • ServeMux ve desen eşleme (metot ve {id})
  • PathValue ile yol parametresi
  • Sorgu parametreleri: URL.Query()
  • Alt yönlendirici ve StripPrefix
  • Statik dosyalar: FileServer
  • 405 Method Not Allowed
Modül 3
Form ve JSON
  • ParseForm ve FormValue
  • json.NewDecoder ve DisallowUnknownFields
  • json.NewEncoder ve Content-Type
  • Yapı etiketleri (json:"...")
  • İstek gövdesi boyut sınırı (MaxBytesReader)
  • Doğrulama ve hata cevabı biçimi
Modül 4
Depolama ve Durum
  • Bellek içi depo ve sync.Mutex
  • database/sql ile bağlantı havuzu
  • Repository deseni
  • Bağımlılık enjeksiyonu: struct alanları
  • Ortam değişkeniyle yapılandırma
  • Basit CRUD API
Günün hedefiKatılımcı middleware zinciri kurar, güvenlik ve zaman aşımlarını ayarlar, sunucuyu test edip paketler.
Modül 1
Middleware
  • func(http.Handler) http.Handler kalıbı
  • Loglama ve istek kimliği
  • Panic recovery
  • CORS başlıkları
  • Kimlik doğrulama (Bearer token)
  • Zincir sırası ve sarmalama
Modül 2
Context ve Eşzamanlılık
  • r.Context() ve iptal
  • context.WithTimeout
  • Goroutine içinde istek verisi
  • Paylaşılan duruma güvenli erişim
  • errgroup ile paralel çağrılar
  • Rate limiting (golang.org/x/time/rate)
Modül 3
Güvenlik ve TLS
  • ListenAndServeTLS ve sertifika
  • Güvenlik başlıkları (HSTS, CSP)
  • Girdi doğrulama
  • Parola özetleme (bcrypt)
  • Gizli bilgi yönetimi
  • Ters vekil (Nginx) arkasında çalışma
Modül 4
Test ve Dağıtım
  • httptest.NewRecorder ve NewServer
  • Tablo tabanlı testler
  • Graceful shutdown: Server.Shutdown ve sinyaller
  • log/slog ile yapılandırılmış log
  • Çok aşamalı Dockerfile
  • Sağlık kontrolü ve metrikler

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Sunucu yapılandırma

http.Server'ı zaman aşımlarıyla yapılandırabilirsiniz.

✅
Yönlendirme

Metot ve parametre destekli rotalar tanımlayabilirsiniz.

✅
JSON API

Güvenli JSON okuma ve yazma yapabilirsiniz.

✅
Middleware

Log, recovery ve kimlik doğrulama zincirleri yazabilirsiniz.

✅
Context kullanımı

İstek iptali ve zaman aşımını doğru yönetebilirsiniz.

✅
TLS ve güvenlik

HTTPS ve güvenlik başlıklarını uygulayabilirsiniz.

✅
Test

httptest ile handler ve sunucu testleri yazabilirsiniz.

✅
Dağıtım

Graceful shutdown'lu servisi Docker imajı olarak paketleyebilirsiniz.

Kimler İçin Uygundur?

  • Go dilinin temelini bilen
  • REST API veya web servisi yazmak isteyen backend geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Go temelini bilen ve web servisi geliştirmek isteyen backend geliştiricileri için uygundur.
Gin veya Echo kullanılıyor mu?
Hayır, standart kütüphane net/http kullanılır; çatılara geçişte neyin gerektiği tartışılır.
Hangi Go sürümü?
Go 1.22 ve sonrası desen eşleme özellikleri kullanılır.
Veritabanı işleniyor mu?
database/sql ile bağlantı havuzu ve basit CRUD gösterilir.
Sertifika verilir mi?
Katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Web Programming in Go: Creating a Go Web Server Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Yazılım Geliştirme GenelFreeRTOS: Geri Planlama Süreci için Programlama Eğitimi
Yazılım Geliştirme Eğitimleri

FreeRTOS: Geri Planlama Süreci için Programlama Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

FreeRTOS ile task, scheduler, kuyruk, semafor, mutex, ISR ve bellek yönetimi: ESP32/STM32 üzerinde gerçek zamanlı programlama.

Detayları Gör →
Yazılım Geliştirme GenelFront–End Development (Web Arayüz Geliştirme) Eğitimi
Yazılım Geliştirme Eğitimleri

Front–End Development (Web Arayüz Geliştirme) Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Front-end eğitimi: semantik HTML5, CSS Flexbox/Grid, duyarlı tasarım, ES6 JavaScript, DOM, Fetch API ve erişilebilirlik.

Detayları Gör →
Yazılım Geliştirme GenelFSD Getting Started: Introduction to Full Stack Development Eğitimi
Yazılım Geliştirme Eğitimleri

FSD Getting Started: Introduction to Full Stack Development Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Full stack geliştirmeye giriş eğitimi: HTTP, HTML/CSS/JS, Node.js, Express, REST API, SQL/NoSQL ve bulutta yayınlama.

Detayları Gör →
Yazılım Geliştirme GenelFSD Programming Languages: FSD Back End & Miscellaneous Tools Eğitimi
Yazılım Geliştirme Eğitimleri

FSD Programming Languages: FSD Back End & Miscellaneous Tools Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Back end dilleri Node.js, Python Flask ve Java Spring ile aynı API; Redis, RabbitMQ, Postman, Nginx ve Docker yardımcı araçları.

Detayları Gör →
Yazılım Geliştirme GenelFull Stack Development: Business Logic & Persistence Layers Eğitimi
Yazılım Geliştirme Eğitimleri

Full Stack Development: Business Logic & Persistence Layers Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Full stack iş mantığı ve kalıcılık katmanları: DDD, JPA/Hibernate, transaction, kilitleme, N+1, Flyway ve katman testleri.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn