Go Standart Kütüphane Tanıtımı
Bu makaleyi yazdığım sırada Go'nun dağıtım sürümü 1.21'e ulaştı ve bu sitenin kurulmasından bu yana bir yıldan fazla zaman geçti.
Go dilinin standart kütüphanesi oldukça zengindir (veri yapıları hariç) ve işlevleri de oldukça güçlüdür. API'ler geliştiriciler için oldukça dostanedir ve standart kütüphaneyi ustaca kullanabilmek günlük geliştirme için büyük bir yardım sağlayacaktır. Örneğin, herhangi bir dış bağımlılık olmadan, sadece net/http, html/template ve database/sql kütüphanelerini kullanarak bağımsız ve eksiksiz bir Web projesi geliştirebilirsiniz.
Standart kütüphanenin içeriği uzun süredir güncellenmedi çünkü standart kütüphanenin içeriği gerçekten çok fazla. Bu nedenle aşağıda bazı yaygın standart kütüphanelerin işlevleri kısaca özetlenecektir, böylece ilginizi çekenleri seçip öğrenebilirsiniz. Her standart kütüphane paketi yorumları bu paketin ne işe yaradığını detaylı olarak açıklayacaktır.
fmt, biçimlendirilmiş giriş ve çıkış işlemleri için pakethtml, html şablon işlemleri paketinet, bir dizi ağ işlemi sağlayan paket, oldukça güçlüflag, komut satırı parametre ayrıştırma paketireflect, yansıma işlem paketilog, yerleşik log paketisort, sıralama işlem paketiregex, düzenli ifade paketiimage, görüntü işlem paketitime, zaman işlem paketiunicode, unicode karakter kümesi işlem paketiunsafe, tip sınırı olmayan işaretçi işlemleri sağlarsyscall, işletim sistemi tarafından sağlanan sistem çağrı paketitesting, test paketi, esas olarak test yazarken kullanılırsync, eşzamanlı işlem paketicontext, bağlam paketistrconv, dize dönüşüm paketistrings, dize işlem paketibytes, byte slice işlem paketimaps, map işlem paketislices, slice işlem paketiio, bir dizi temel IO arayüzü tanımlar, örneğin yaygın olarak kullanılanCloser,Writervb. ve bazı temel IO işlem fonksiyonlarıio/fs, bir dizi dosya sistemi arayüzü tanımlar, dosya sistemine soyutlama olarak düşünülebiliros, işletim sistemi ile etkileşim paketi, bir dizi somut fonksiyon sağlar, yukarıdaki ikisinin somut uygulaması olarak düşünülebiliros/signal, işletim sistemi sinyal paketi, işletim sistemi sinyallerini dinlemek için kullanılır, esas olarak programın zarif bir şekilde kapatılmasını sağlamak için kullanılıros/exec, işletim sistemi komut paketi, işletim sistemi komutlarını yürütmek için kullanılıros/user, işletim sistemi kullanıcı paketi, işletim sistemi kullanıcı bilgilerini almak için kullanılırbufio, buffer'lı IO okuma ve yazma paketipath, eğik çizgiyle ayrılmış yolları işleyen paket, örneğin url gibipath/filepath, dosya yollarını işleyen paketmath, matematik işlem paketimath/bits, bit işlem paketimath/cmplx, karmaşık sayı işlem paketi, ayrıca bazı trigonometrik fonksiyonlar için araç fonksiyonları sağlarmath/rand, sahte rastgele paketmath/big, büyük sayı yüksek hassasiyetli hesaplama paketicontainer/heap, minimum yığın uygulamasıcontainer/list, çift yönlü bağlı liste uygulamasıcontainer/ring, halka uygulamasıarchive/zip, zip sıkıştırma arşiv paketiarchive/tar, tar arşiv dosyası paketicompress, sıkıştırma algoritma uygulama paketi, örneğin gzip, flatedatabase/sql, veritabanı ile etkileşim paketiencoding, kodlama işleme paketi, altında birçok alt paket var, örneğinjson,xmlvb. vebase64gibicrypto, şifreleme işleme paketi, altında birçok alt paket var, örneğin sha1, rsa vb.go/ast, Go kaynak kodu soyut sözdizim ağacı eşleme paketigo/parser, Go kaynak kodunu soyut sözdizim ağacına ayrıştıran paketgo/importer, import ediciye erişim sağlargo/format, Go dili biçimlendirme paketiarena, manuel olarak bellek ayırma ve serbest bırakma işlevi sağlar, deneysel aşamadaruntime, çalışma zamanı işlem paketi, Go'da birçok işlem bu paket tarafından implement edilir
