Giriş

Denise tarafından çizildi

İngilizce versiyonu

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

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

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ı

Şimdiye kadarki en etkili yol, go by example ö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.

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

MIT license

Bu sayfa @halilkocaoz tarafından çevrildi.

Last updated