
İleri Düzey Go
Derleyici iç yapısı, runtime, scheduler, cgo, unsafe paketi, assembly, build tag'leri
1Derleyicinin ürettiği assembly kodunu incelemeye olanak tanıyan Go toolchain aracı hangisidir?
Derleyicinin ürettiği assembly kodunu incelemeye olanak tanıyan Go toolchain aracı hangisidir?
Cevap
go tool compile -S komutu, Go derleyicisinin ürettiği assembly kodunu görüntüler. Bu araç, derleyici optimizasyonlarını anlamak ve performans açısından kritik kodu analiz etmek için gereklidir. Standart bir derleme sırasında aynı sonucu elde etmek için go build -gcflags=-S de kullanılabilir.
2Go'daki unsafe paketinin ana amacı nedir?
Go'daki unsafe paketinin ana amacı nedir?
Cevap
unsafe paketi, düşük seviyeli bellek işlemleri gerçekleştirmek için Go'nun tip sistemini atlamaya olanak tanır. Bellek adreslerini doğrudan değiştirmeyi sağlayan Pointer, Sizeof, Alignof ve Offsetof gibi fonksiyonları sunar. C koduyla birlikte çalışabilirlik veya kritik optimizasyonlar gibi belirli durumlar dışında kullanımı önerilmez.
3Go scheduler (GPM) goroutine yürütmesini nasıl düzenler?
Go scheduler (GPM) goroutine yürütmesini nasıl düzenler?
Cevap
Go scheduler GPM modelini kullanır: G goroutine'leri, P mantıksal işlemcileri (GOMAXPROCS) ve M sistem thread'lerini temsil eder. Her P, goroutine'lerden oluşan yerel bir run queue'ya sahiptir. Bir M bir syscall'da bloke olduğunda, P ayrılabilir ve goroutine yürütmesine devam etmek için başka bir M ile ilişkilendirilebilir. Bu tasarım, minimum context switch ile verimli zamanlama sağlar.
cgo nedir ve hangi bağlamda kullanılmalıdır?
Hedef OS veya mimariye göre kodu koşullu olarak derlemeye olanak tanıyan direktif hangisidir?
+17 mülakat soruları
Diğer Go mülakat konuları
Go Temelleri
Go Veri Yapıları
Go Arayüzleri
Hata Yönetimi
Goroutine Temelleri
Channels
Go Modules
HTTP Sunucusu
HTTP İstemcisi
JSON Kodlama
Database/SQL
context Paketi
Testing
Eşzamanlılık Desenleri
Senkronizasyon İlkelleri
Go Web Framework'leri
REST API Tasarımı
gRPC
Reflection
Bellek Yönetimi
Performans Optimizasyonu
Generics
Go Design Patterns
Microservices
Güvenlik ve Kimlik Doğrulama
Docker & Containerization
Kubernetes Basics
CLI Geliştirme
Bir sonraki mülakatın için Go'de uzmanlaş
Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.
Ücretsiz başla