Go programlama dilini test yazarak öğren
  • Giriş
  • Go programlama dilinin temelleri
    • Go kurulumu
    • Hello, World
    • Integerlar
    • Iterasyon
    • Arrayler ve slicelar
    • Structlar, methodlar & interfaceler
    • Pointerlar & errorlar
    • Maps
    • Dependency Injection
    • Mocking
    • Concurrency
    • Select
    • Reflection
    • Sync
    • Context
    • Intro to property based tests
    • Maths
    • Reading files
  • Bir uygulama geliştir
    • Giriş
    • HTTP server
    • JSON, routing ve embedding
    • IO ve sorting
    • Command line & package structure
    • Time
    • WebSockets
  • Sorular ve cevaplar
    • OS Exec
    • Error types
    • Context-aware Reader
    • Revisiting HTTP Handlers
  • Meta
    • Why unit tests and how to make them work for you
    • Anti-patterns
    • Intro to generics
    • Contributing
    • Chapter Template
Powered by GitBook
On this page
  • Bu fikrin sahibi quii'i destekleyebilirsiniz
  • Türkçe çeviriye katkı sağlayanlar
  • Go ile test-driven development öğrenin
  • quii'nin önceden yaptıkları
  • Neler işe yaramadı
  • Neler işe yaradı
  • Benim(quii) için işe yarayan nedir
  • Bu kimler içindir
  • Neye ihtiyacınız olacak

Was this helpful?

Edit on Git

Giriş

NextGo kurulumu

Last updated 1 year ago

Was this helpful?

Bu fikrin sahibi quii'i destekleyebilirsiniz

Türkçe çeviriye katkı sağlayanlar

Go ile test-driven development öğrenin

  • Go programlama dilini test yazarak keşfedin.

  • Go programlama dili öğrenmek ve TDD pratiği yapmak için iyi bir dil, çünkü öğrenmek ve test yazmak için basit(basit != kolay) bir programlama dili.

  • Bu seri ardından, Go'da iyi test edilmiş sistemler yazacağınızdan emin olabilirsiniz.

quii'nin önceden yaptıkları

Go programlama dilini, yazılım ekiplerini tanıtma konusunda biraz deneyimim var ve Go'yu merak eden bazı kişilerden, Go sistemlerinin son derece etkili yazılımcılarına dönüştürülecek bir ekibin nasıl büyütüleceği konusunda farklı yaklaşımlar denedim.

Neler işe yaramadı

Mavi kitabı okumak

Bu kitabı seviyorum ama gerçek anlamda bir kararlılık göstermeniz gerekiyor. Kitap kavramları açıklarken çok ayrıntılı, bu harika bir şey ama süreç yavaş ve istikrarlı bir şekilde ilerlemeli ve bu herkes için iyi, uygun değil.

Bir çok insan herhangi bir bölümü okuyup araştırmaları yapmadan geçiyordu.

Problem çözmek

Programlama egsersizleri(katalar) eğlenceli ama genellikle dili öğrenmekle sınırlıdır. Programlama egzersizlerini çözerken goroutinelerini kullanman pek olası değil.

Bir diğer problemse, değişken seviyelerde coşkuya sahip olmak. Bazı insanlar, diğerlerinden daha iyi öğreniyor ve yaptıklarını, öğrendiklerini gösterirken diğer insanların aşina olmadığı şeylerden bahsederek, onların kafasını karıştırabiliyor. Bu gibi durumlarsa, öğrenme sürecinizin sistematik olarak düzene sokulmamış ve geçiçi olduğunu hissettiriyor.

Neler işe yaradı

Zaman geçtikçe, yazılım ekibi dilin temellerine dair sağlam bir birikim elde etti, böylece takım olarak sistemler oluşturmaya başlayabilirdik.

Bu bana gitar öğrenmeye çalışırken, gam pratiği yapmayı andırdı.

Ne kadar artist olursanız olun, temelleri bilmeden ve mekaniklere çalışmadan iyi müzik yapamazsınız.

Benim(quii) için işe yarayan nedir

Yeni bir programlama dili öğrenirken, genellikle REPL(Read-eval-print loop)'ı ile başlarım, en sonundaysa daha fazla yapıya ihtiyacım olur.

Yapmayı sevdiğim şey, dilin kavramlarını keşfetmek ve fikirleri testler ile sağlamlaştırmak. Test kodları, bana yazdığım kodların doğru olup olmadığını gösteriyor ve ne öğrendiğimi belgelendiriyor.

Bir grupla öğrenme ve kendi deneyimlediğim yoldan yaptığım çıkarımlar ile diğer takımlar için yararlı olacağını umduğum bir şey ortaya çıkaracağım. Küçük testler yazarak Go ve TDD'nin temellerini öğrenecek, böylece mevcut yazılım tasarım bilgileriniz ile birlikte harika sistemler sunabileceksiniz.

Bu kimler içindir

  • Go programlama dilini öğrenmekle ilgilenen kişiler

  • Go programlama dilini zaten bilen fakat test etmeyi daha fazla keşfetmek isteyen kişiler

Neye ihtiyacınız olacak

  • Bir bilgisayar

  • Yazı düzenleyici

  • Programlamaya dair biraz deneyim. Mesela if, değişkenler, fonksiyonlar gibi kavramları hali hazırda anlamış olmak

  • Terminali kullanmaktan çekinmemek

Denediğimiz yaklaşımlardan biri okumak ve her hafta alıştırmalarla birlikte bir sonraki bölümünü tartışmaktı.

Şimdiye kadarki en etkili yol, örneklerini baştan sona okuyarak, yavaş yavaş keşfetmek ve grup halinde bunları tartışmaktı. Bu yaklaşım, "x bölümünü ödev için oku"dan daha etkileşimli bir yoldu.

Bu sayfa tarafından çevrildi.

Twitter @quii
quii'e bir kahve ısmarla
quii'e GitHub'da sponsor ol
@bariscanyilmaz
@rasimthegrey
@halilkocaoz
mavi kitabı
go by example
Go
MIT license
@halilkocaoz
Denise tarafından çizildi
İngilizce versiyonu