Go ve CLI Uygulamalarına Giriş
Golang olarak da bilinen Go, Google tarafından tasarlanmış açık kaynaklı bir programlama dilidir. Sadeliği, güvenliği ve performansı vurgulayarak onu komut satırı arayüzü (CLI) uygulamaları oluşturmak için mükemmel bir seçim haline getirir. CLI uygulamaları, kullanıcıların genellikle sistem yönetimi, otomasyon ve komut dosyası oluşturma görevleri için kullanılan, metin tabanlı bir arabirim aracılığıyla etkileşimde bulunabileceği araçlardır. Go, aşağıdakileri sunduğu için CLI geliştirme için çok uygundur:
- Basitlik: Go'nun sözdiziminin anlaşılması ve yazılması kolaydır, bu da geliştiricilerin CLI uygulamalarını hızlı bir şekilde oluşturmasına ve sürdürmesine olanak tanır.
- Performans: Go derlenmiş ve statik olarak yazılmış bir dildir, yani optimize edilmiş ikili dosyalar üreterek hızlı ve verimli CLI uygulamaları sağlar.
- Eşzamanlılık desteği: Go, rutinler ve kanallar gibi yerleşik eşzamanlılık ilkellerine sahiptir ve sorunsuz paralel işleme ve sonuç olarak daha hızlı ve daha duyarlı CLI uygulamaları sağlar.
- Statik ikili derleme: Go, uygulamaları harici bağımlılıkları olmayan tek, bağımsız bir ikili dosyada derleyerek CLI uygulamanızın kolay dağıtımını ve dağıtımını kolaylaştırır.
- Güçlü standart kitaplık: Go'nun standart kitaplığı, dosyalarla çalışma, ağ oluşturma ve komut satırı argümanlarını işleme gibi yaygın CLI geliştirme görevlerini basitleştiren çok sayıda yerleşik paket sağlar.
Bu makalede, ortamınızı ayarlamak ve uygulamanızı yapılandırmaktan komut satırı bağımsız değişkenlerini işlemeye ve üçüncü taraf paketlerden yararlanmaya kadar Go kullanarak CLI uygulamaları geliştirmenin temellerini öğreneceksiniz.
Başlarken: Go'yu Yükleme ve Ortamınızı Kurma
Go ile CLI uygulamaları yazmaya başlamadan önce sisteminize Go programlama dilini kurmalısınız.
- Resmi Go indirme sayfasını ziyaret edin, platformunuz için uygun ikili paketi seçin (Windows, macOS veya Linux) ve kurulum talimatlarını izleyin.
- Kurulum tamamlandığında, terminalinizde
go version
çalıştırarak Go'nun doğru şekilde kurulduğunu doğrulayın. Bu komut kurulu Go sürümünü göstermelidir. - Go çalışma alanınızın konumunu (Go projelerinizin ve bağımlılıklarınızın depolanacağı yer) belirleyen
GOPATH
ve Go kurulum dizininize işaret edenGOROOT
dahil, Go için gerekli ortam değişkenlerini yapılandırın. -
go
komutunun sisteminizinPATH
değişkeninde olduğundan emin olun. Bu, Go komutlarını herhangi bir dizinden yürütmenize izin verir.
Go yüklendikten ve ortamınız yapılandırıldıktan sonra, ilk CLI uygulamanızı oluşturmaya hazırsınız.
CLI Uygulamanızı Yapılandırma: Paketler ve Modüller
CLI uygulamanızı düzgün bir şekilde yapılandırmak, bakım ve ölçeklenebilirlik için çok önemlidir ve kodunuzun düzenli ve gezinmesi kolay olmasını sağlar. Go'da kod organizasyonu, paketler ve modüller aracılığıyla sağlanır.
Paketler: Paketler, Go'nun kodu düzenleme ve bölümlere ayırma yöntemidir. Bir paket, aynı dizinde bulunan bir veya daha fazla kaynak dosyadan ( .go
uzantılı) oluşur. Bir paketteki her dosya, dosyanın başında package
anahtar kelimesiyle belirtilen paket adını bildirmelidir. Tipik bir Go CLI uygulamasının en az iki paketi vardır:
-
main
: Bu, uygulamanızın giriş noktası için varsayılan pakettir. Bu,main()
işlevinin bulunduğu yerdir ve CLI uygulamanız için başlangıç noktası görevi görür. CLI'ye özgü tüm mantık ve komutlar ana paketin içine yerleştirilmelidir. -
internal
veyapkg
: Bu paketler, CLI mantığınızdan ayrılmış yeniden kullanılabilir kod içerir. Proje içinde yalnızca kendi Go kodunuz tarafından içe aktarılması gereken kod içininternal
ve herhangi bir Go projesi tarafından içe aktarılabilen kod içinpkg
kullanabilirsiniz.
Modüller: Modüller, Go uygulamalarında bağımlılıkları ve sürüm oluşturmayı yönetmenin bir yoludur. Go 1.11'de tanıtılan bu özellikler, geliştiricilerin paket bağımlılıklarını bildirmesine ve gerekli sürümü belirlemesine olanak tanır. Yeni bir Go modülü oluşturmak için projenizin kök dizinine gidin ve aşağıdaki komutu yürütün:
go mod init your.module.name
Bu komut, kök dizinde projenizin bağımlılıklarını listeleyen bir go.mod
dosyası ve her bağımlılığın sağlama toplamlarını tutan bir go.sum
dosyası oluşturur. Paketleri içe aktardığınızda veya üçüncü taraf kitaplıkları kullandığınızda Go, go.mod
ve go.sum
dosyalarındaki bağımlılıkları otomatik olarak takip edecektir.
Görüntü kaynağı: Go Programlama Dili
Paketleri ve modülleri etkin bir şekilde kullanarak, Go CLI uygulamanız için temiz ve verimli bir kod yapısını koruyabilir, gelecekte projenizi geliştirmeyi, hata ayıklamayı ve genişletmeyi daha kolay hale getirebilirsiniz.
Komut Satırı Argümanları ve Bayrakları
Komut satırı bağımsız değişkenleri ve bayrakları, CLI uygulamalarının temel bileşenleridir ve kullanıcıların uygulamanın davranışını kontrol etmesine ve gerekli girdiyi sağlamasına olanak tanır. Go'da, standart kitaplığın flag
ve os.Args
paketlerini kullanarak komut satırı bağımsız değişkenleri ve bayraklarıyla çalışabilirsiniz.
os.Args'ı kullanma
os.Args
paketi, komut satırı bağımsız değişkenlerine doğrudan erişim sağlar. Bu, os.Args[0]
çalışan programın adı olduğu ve girdilerin geri kalanının programa iletilen bağımsız değişkenleri temsil ettiği bir dize dilimidir.
İşte os.Args
kullanımına bir örnek:
ana paket içe aktarmak ( "fmt" "işletim sistemi" ) ana fonksiyon() { argCount := len(os.Args) fmt.Printf("Argüman sayısı: %d\n", argCount) fmt.Println("Bağımsız Değişkenler:", os.Args) }
Programı çalıştırarak, verilen argümanların sayısını ve listesini göreceksiniz.
Bayrak Paketini Kullanma
flag
paketi, komut satırı bayraklarıyla çalışmanın daha karmaşık ve esnek bir yoludur. Çeşitli veri türlerine sahip bayrakları tanımlamanıza ve girişi uygun şekilde ayrıştırmanıza olanak tanır.
flag
paketini kullanmanın bir örneği aşağıdadır:
ana paket içe aktarmak ( "bayrak" "fmt" ) ana fonksiyon() { var ( isim dizisi yaş yükseklik float64 ) flag.StringVar(&isim, "isim", "John Doe", "Adınız") flag.IntVar(&yaş, "yaş", 21, "Yaşınız") flag.Float64Var(&height, "height", 180.0, "Boyunuz (cm olarak)") flag.Ayrıştır() fmt.Printf("Ad: %s\n", ad) fmt.Printf("Yaş: %d\n", yaş) fmt.Printf("Yükseklik: %.1f\n", yükseklik) }
Bayrakları tanımladıktan sonra, sağlanan komut satırı girişini ayrıştırmak ve tanımlanmış değişkenleri doldurmak için flag.Parse()
çağırırsınız. Daha sonra bu değişkenleri uygulamanız boyunca kullanabilirsiniz.
Komutlar ve Alt Komutlar Oluşturma
Karmaşık CLI uygulamalarında, işlevlerinizi ve seçeneklerinizi daha iyi organize etmek için komutlar ve alt komutlar oluşturmak isteyebilirsiniz. Go'da komutlar ve alt komutlarla çalışmak için popüler bir üçüncü taraf paketi github.com/spf13/cobra
.
Cobra'ya Başlarken
Başlamak için Cobra paketini yüklemeniz gerekir:
git -u github.com/spf13/cobra/cobra adresine gidin
Kurulduktan sonra, Cobra ile yeni bir CLI uygulaması oluşturabilirsiniz:
kobra init my-cli --pkg-name=my-cli
Bu komut, Cobra tabanlı bir CLI uygulaması için gerekli yapı ve dosyalarla my-cli
adlı yeni bir dizin oluşturur.
Komutları Tanımlama
Cobra tabanlı bir uygulamada, komutları cobra.Command
örneklerini tanımlayarak oluşturursunuz. Her komutun bir Use
alanı (komutun nasıl kullanıldığını gösterir), bir Short
alanı (kısa bir açıklama sağlar) ve bir Long
alanı (daha ayrıntılı bir açıklama sağlar) vardır.
Ayrıca, her komutun, komutun mantığını yürüten bir işlevi içeren bir Run
alanı olmalıdır. Bu işlevi genellikle komutun bayraklarını ve bağımsız değişkenlerini yakalamak için bir kapatma olarak tanımlayacaksınız.
İşte basit bir "selamla" komutu oluşturmaya bir örnek:
selamCmd := &cobra.Command{ Kullanım: "selam", Kısa: "Birini selamlayın", Uzun: "Bu komut, özelleştirilebilir bir mesajla birini karşılar.", Çalıştır: func(cmd *cobra.Command, args []string) { // Selamlama komutu için mantık }, }
Bir alt komut oluşturmak için başka bir cobra.Command
örneği tanımlayabilir ve AddCommand
yöntemini kullanarak üst komutun alt öğesi olarak ekleyebilirsiniz. Örneğin, "selamla" komutu altında bir "güle güle" alt komutu oluşturabilirsiniz:
güle güleCmd := &cobra.Command{ Kullanım: "güle güle", Kısa: "Birine veda et", Uzun: "Bu alt komut, belirli bir dilde birine veda ediyor.", Çalıştır: func(cmd *cobra.Command, args []string) { // Güle güle alt komutu için mantık }, } greetCmd.AddCommand(güle güleCmd)
Etkileşimli İstemler ve Kullanıcı Girişi
Etkileşimli bilgi istemleri, kullanıcılara bir dizi soru boyunca rehberlik ederek ve yanıtlarına göre girdi toplayarak CLI uygulamanızın kullanıcı deneyimini iyileştirebilir. Go'da etkileşimli istemlerle çalışmaya yönelik popüler bir üçüncü taraf paketi github.com/AlecAivazis/survey/v2
.
Ankete Başlarken
Öncelikle, Anket paketini yüklemeniz gerekir:
git -u github.com/AlecAivazis/survey/v2 adresini edinin
Etkileşimli İstemler için Anketi Kullanma
Anket, Input
, Select
, MultiSelect
, Confirm
ve daha fazlasını içeren bir dizi önceden tanımlanmış bilgi istemi türü sağlar. Bilgi istemi oluşturmak için, istenen bilgi istemi tipini başlatır ve survey.Ask
işlevini çağırırsınız.
ana paket içe aktarmak ( "fmt" "github.com/AlecAivazis/survey/v2" ) ana fonksiyon() { değişken adı dizisi namePrompt := &survey.Input{ Mesaj: "Adın ne?", } hata := anket.Ask([]*survey.Question{{ İsim: "isim", İstemi: namePrompt, Doğrula: anket.Gerekli, }}, &isim) eğer hata != sıfır { fmt.Println("Hata:", hata) geri dönmek } fmt.Printf("Merhaba, %s!\n", ad) }
Bu kod parçacığı, bir ad toplamak ve bir karşılama mesajı görüntülemek için Anketin Input
isteminin kullanımını gösterir. Validate
alanı, kullanıcı girişi için özel doğrulama mantığı uygulamak üzere ayarlanabilir.
Harici Kitaplıklarla Çalışma
Birçok CLI uygulamasında, işlevselliği geliştirmek ve geliştirme sürecini kolaylaştırmak için harici kitaplıklara güvenmek yaygındır. Go, geliştiricilerin harici kitaplıklarla sorunsuz bir şekilde çalışmasını sağlayan bağımlılık yönetimine modern ve verimli bir yaklaşım sunar. Go 1.11'de tanıtılan Go modülleri, projenizdeki paket bağımlılıklarını bildirmenize ve gerekli paketleri indirme, oluşturma ve kurma sürecini otomatikleştirmenize olanak tanır. CLI uygulamanızdaki harici kitaplıkları yönetmek için şu adımları izleyin:
- Bir Go modülü başlatın: CLI uygulamanızın kök dizininde,
go mod init <module-name>
komutunu çalıştırın ve '<module-name>' yerine istediğiniz modül adını yazın. Bu komut, proje dizininizdego.mod
adlı yeni bir dosya oluşturacaktır. - Dış kitaplıklar ekleyin: Bir dış kitaplığı içe aktarmak istediğinizde, gerekli içe aktarma ifadelerini kaynak kodunuza ekleyin. Projenizi ilk oluşturduğunuzda veya çalıştırdığınızda Go, bu kitaplıkların gerekli sürümlerini otomatik olarak indirip yükleyecek ve
go.mod
vego.sum
dosyalarını güncelleyecektir. - Kitaplıkları güncelleyin: Harici bir kitaplığı güncellemek için
go get -u
komutunu ve ardından paket adını kullanabilirsiniz. Bu, paketigo.mod
dosyanızdaki değişiklikleri yansıtacak şekilde en son sürüme günceller. - Kullanılmayan kitaplıkları kaldırın: Kullanılmayan kitaplıkları
go.mod
dosyanızdan temizlemek içingo mod tidy
komutunu çalıştırın. Bu, artık ihtiyaç duyulmayan veya geliştirme sırasında geçersiz hale gelen tüm kitaplıkları kaldırır.
Go modüllerini kullanmak, harici kitaplıklarla çalışırken çeşitli avantajlar sağlar. Örneğin, kodun okunabilirliğini artırır ve bağımlılık yönetimini basitleştirerek daha bakım yapılabilir ve modüler bir CLI uygulaması sağlar.
Hataları İşleme ve Günlüğe Kaydetme
CLI uygulamanızın sağlamlığını sağlamak için uygun hata işleme ve günlük kaydı çok önemlidir. Go, hatalar ve günlüklerle çalışmak için son derece pratik ve ergonomik bir yaklaşım sunar. Go'daki hataları işlemek için standart errors
paketini kullanabilirsiniz. CLI uygulamalarınızdaki hatalarla çalışırken en iyi uygulamalardan bazıları şunlardır:
- Panik yerine hata döndürün: Uygulamanızın paniğe kapılmasına ve çökmesine neden olmak yerine, işlevlerden hata döndürün ve bunları uygun şekilde ele alın. Bu, CLI uygulamanızda daha iyi kontrol akışı ve kurtarma mekanizmaları sağlar.
- Özel hata türlerini kullanın:
errors.New
işlevini kullanarak veyaerror
arayüzünü uygulayarak kendi hata türlerinizi oluşturun. Özel hata türleri, bir hata oluştuğunda neyin yanlış gittiği hakkında daha spesifik bilgiler iletmenizi sağlar. - Hataları kaynağına yakın bir şekilde ele alın: Mümkün olduğunda, hataları olabildiğince kaynağına yakın bir şekilde ele alın. Bu, kodunuzun basitliğini korumaya yardımcı olur ve karmaşık durumlarda hata işleme hakkında akıl yürütmeyi kolaylaştırır.
Günlük kaydı için Go standart kitaplığı, basit ve esnek bir günlük kaydı arabirimi sağlayan log
paketini sunar. Paketi, farklı önem düzeylerine sahip iletileri günlüğe kaydetmek ve çıktı hedefini özelleştirmek için kullanabilirsiniz. Daha gelişmiş günlük kaydı özellikleri için, popüler github.com/sirupsen/logrus
paketiyle yapılandırılmış günlük kaydı kullanmayı düşünün. CLI uygulamanızda etkili bir şekilde oturum açmaya yönelik bazı ipuçları:
- Doğru kayıt düzeyini seçin: Kritik hatalar, uyarılar ve düzenli bilgi mesajları arasında ayrım yapmak için günlük seviyelerini kullanın. Bu, günlükleri daha uygulanabilir hale getirir ve sorunları daha verimli bir şekilde belirlemeye yardımcı olur.
- Günlük mesajlarına bağlam dahil et: Günlük tutarken, değişken değerleri ve işlev adları gibi ilgili bağlamı sağlayın. Bu, sorun giderme sırasında sorunları izlemeyi kolaylaştırır.
- Yapılandırılmış günlüğe kaydetmeyi düşünün: Günlük mesajlarını JSON gibi makine tarafından okunabilen bir biçimde yaymak için yapılandırılmış günlük kaydını kullanın. Bu özellikle merkezi kayıt sistemleri, günlük toplama ve analiz araçları için kullanışlıdır.
CLI Uygulamalarını Test Etme ve Kıyaslama
Kalite güvencesi, güvenilir CLI uygulamaları geliştirmenin bir başka hayati yönüdür. Go'nun yerleşik test ve kıyaslama desteği, etkili birim testleri yazmanıza ve CLI uygulamanızın performansını ölçmenize olanak tanır. Go'nun testing
paketi, birim testleri yazmanıza, bunları paralel olarak çalıştırmanıza ve test kapsamı raporları oluşturmanıza olanak tanır. Test uygulamalarınızı geliştirmek için aşağıdaki teknikleri kullanın:
- Test işlevleri oluşturun: CLI uygulama bileşenleriniz için test işlevleri yazın ve bunların önüne
Test
,TestMyFunction
gibi ekleyin. Bu işlevleri, test edilen kaynak dosyanın yanında ayrı bir_test.go
dosyasına yerleştirin. - Test tablolarını kullanın: Tek bir test işlevi kullanarak birden çok girdi-çıktı kombinasyonunu test etmek için test tablolarını (tabloya dayalı testler olarak da bilinir) kullanın. Bu yaklaşım, test kodunuzu basitleştirir ve daha bakım yapılabilir hale getirir.
- Testleri paralel olarak çalıştırın: Testleri aynı anda çalıştırmak için test işlevlerinizdeki
t.Parallel()
işlevinden yararlanın. Bu, özellikle kaynak yoğun testlerle uğraşırken test takımınızın yürütülmesini hızlandırabilir. - Test kapsamı raporları oluşturun: Kod kapsamı raporları oluşturmak için
go test -cover
komutunu kullanın. Bu, kodunuzun daha kapsamlı testler gerektiren alanlarını belirlemenize yardımcı olur ve daha yüksek derecede test kapsamı sağlar.
CLI uygulama bileşenlerinizin performansını ölçmek için Go, aynı testing
paketi aracılığıyla kıyaslama için destek sağlar. Kriterleri aşağıdaki gibi kullanın:
- Kıyaslama işlevleri oluşturun: Kıyaslama işlevlerini yazın ve
BenchmarkMyFunction
gibiBenchmark
ile önek ekleyin. Bu işlevleri, ilgili test işlevlerini içeren aynı_test.go
dosyasına yerleştirin. -
testing.B
parametresini kullanın: Kıyaslamak istediğiniz kodu,testing.B
parametresi tarafından kontrol edilen bir döngü içinde çalıştırın (örn.for i := 0; i < bN; i++ { ... }
.testing.B
parametresi, istatistiksel olarak anlamlı bir ölçüm elde etmek içintesting
paketi tarafından otomatik olarak ayarlanır. - Kıyaslama sonuçlarını analiz edin: Deneylerinizi çalıştırmak ve sonuçları analiz etmek için
go test -bench
komutunu kullanın. Bu, CLI uygulamanızın optimizasyon gerektiren alanlarını belirlemenize ve performans iyileştirmelerinin etkisini ölçmenize yardımcı olabilir.
Sonuç olarak, güvenilir ve verimli CLI uygulamaları oluşturmak için harici kitaplıkların doğru yönetimi, hata işleme, günlük kaydı, test etme ve kıyaslama hayati önem taşır. Bu makalede özetlenen çeşitli araçlardan, tekniklerden ve en iyi uygulamalardan yararlanarak, Go tabanlı CLI uygulamanızın yüksek düzeyde kalite ve mükemmelliğe ulaşmasını sağlayabilirsiniz. Ayrıca, Go'nun gücünü AppMaster gibi çok yönlü platformlarla birleştirmek, yazılım geliştirme süreçlerini büyük ölçüde hızlandırabilir ve böylece olağanüstü sonuçlar elde edebilir.
CLI Uygulamanızı Dağıtma ve Dağıtma
Go'da Komut Satırı Arayüzü (CLI) uygulamanızın geliştirilmesini tamamladıktan sonra, son adım, kullanıcıların erişmesi ve kullanması için uygulamayı dağıtmak ve dağıtmaktır. Go programlama dili ve oluşturma araç zinciri, platformlar arasında dağıtması ve paylaşması kolay, bağımsız, statik olarak bağlantılı yürütülebilir dosyalar oluşturmanıza olanak tanır.
Yürütülebilir Dosyayı Oluşturma
Go CLI uygulamanızı oluşturmak için go build
komutunu ve ardından hedef paket veya dosyayı kullanın:
go build ./path/to/your/package
Veya:
go build main.go
Bu komut, mevcut platformunuz (örn. Windows, macOS, Linux) için yürütülebilir bir ikili dosya oluşturacak ve onu mevcut çalışma dizinine yerleştirecektir. Varsayılan olarak, ikili dosyanın adı, paketin adıyla veya kaynak dosyanın adıyla uzantısız (örn. main
) eşleşir.
Ancak, çıktı ikili dosya adlarını belirtebilir ve -o
işaretini ve ortam değişkenlerini kullanarak farklı platformları hedefleyebilirsiniz:
GOOS=linux GOARCH=amd64 go build -o custom-name ./path/to/your/package
Yukarıdaki örnekte, Go derleme işlemine bir AMD64 mimarisi ile Linux'u hedefleme talimatını vermek için GOOS
ve GOARCH
ortam değişkenlerini ayarladık ve çıktı ikili dosya adını custom-name
olarak ayarladık.
Farklı Platformlar İçin Çapraz Derleme
Go, çapraz derlemeyi basitleştirir ve karmaşık yapı yapılandırmaları olmadan çeşitli platformlar için hızlı bir şekilde yürütülebilir dosyalar oluşturabilirsiniz. Go CLI uygulamanızı birden çok platform için çapraz derlemek üzere GOOS
ve GOARCH
ortam değişkenlerini uygun şekilde ayarlayın. Aşağıdaki örnek, Windows, macOS ve Linux için bir Go CLI uygulamasının nasıl çapraz derleneceğini gösterir:
# For Windows 64-bit GOOS=windows GOARCH=amd64 go build -o mycli-windows.exe ./path/to/package # For macOS 64-bit GOOS=darwin GOARCH=amd64 go build -o mycli-macos ./path/to/package # For Linux 64-bit GOOS=linux GOARCH=amd64 go build -o mycli-linux ./path/to/package
CLI Uygulamanızı Dağıtma
Go CLI yürütülebilir ikili dosyalarınızı, projenizin web sitesinde veya README belgelerinde doğrudan indirme seçenekleri sağlayarak dağıtabilirsiniz. Alternatif olarak, paketleme sistemlerini, havuzları veya paket yöneticilerini kullanarak platforma özel paketler olarak dağıtın. Bazı popüler paket yönetim sistemleri şunları içerir:
- Homebrew - Paketleri kurmak ve yönetmek için kullanıcı dostu bir söz dizimine sahip, macOS ve Linux için bir paket yöneticisi.
- APT (Debian tabanlı sistemler) - Ubuntu gibi Debian tabanlı Linux dağıtımları için bir paket yöneticisi.
- RPM (Red Hat tabanlı sistemler) - Fedora gibi Red Hat tabanlı Linux dağıtımları için bir paket yöneticisi.
Nihai Düşünceler ve Kaynaklar
Go ile güçlü CLI uygulamaları oluşturmak keyifli ve ödüllendirici bir süreçtir. Basitlik, performans ve ikili dağıtım avantajları, Go'yu bu amaç için ideal bir programlama dili seçimi yapar. Go CLI uygulamalarınızı geliştirmeye devam ederken, bilginizi genişletmek ve becerilerinizi geliştirmek için ek kaynaklar keşfetmeyi düşünün:
- Resmi Go Belgelendirmesi - Go programlama dili ve standart kitaplığı hakkında kapsamlı bir kılavuz.
- Go Learning Kaynakları - Öğreticiler, kitaplar ve kurslar dahil olmak üzere Go öğrenme kaynaklarının kapsamlı bir listesi.
- Müthiş Go - Konuya göre kategorilere ayrılmış, Go paketlerinin, kitaplıklarının ve kaynaklarının derlenmiş bir listesi.
- Örnek Olarak Git - Çeşitli Go özellikleri için özlü örnekler ve açıklamalar içeren, Go'ya uygulamalı bir yaklaşım.
Ayrıca, arka uç programlama dili olarak Go (golang) kullanan AppMaster.io gibi no-code platformları keşfetmeyi düşünün. AppMaster.io, tek bir satır kod yazmadan web, mobil ve arka uç uygulamaları geliştirmenize olanak tanıyan sezgisel bir sürükle ve bırak arabirimi sağlar. Hem Go hem de AppMaster.io gibi no-code platformları anlayarak, gelecekte daha da karmaşık yazılım çözümleri geliştirmek için iyi bir donanıma sahip olacaksınız.