Nemo'nun cevabına dayanmak için:
println
dilde yerleşik bir işlevdir. Spesifikasyonun Bootstrapping bölümündedir . Bağlantıdan:
Mevcut uygulamalar, önyükleme sırasında yararlı olan çeşitli yerleşik işlevler sağlar. Bu işlevlerin eksiksiz olduğu belgelenmiştir ancak dilde kalmaları garanti edilmez. Sonuç döndürmezler.
Function Behavior
print prints all arguments; formatting of arguments is implementation-specific
println like print but prints spaces between arguments and a newline at the end
Bu nedenle, geliştiriciler için yararlıdırlar çünkü bağımlılıkları yoktur (derleyicide yerleşiktirler), ancak üretim kodunda yoktur. Bunu not etmek print
ve println
bildirmekstderr
stdout
de önemlidir , değil .
fmt
Bununla birlikte, tarafından sağlanan aile , üretim kodunda olacak şekilde inşa edilmiştir. stdout
Aksi belirtilmedikçe, tahmin edilebilir şekilde rapor ederler . Bunlar daha çok yönlü (edilmektedir fmt.Fprint*
birine bildirebilirsiniz io.Writer
gibi os.Stdout
, os.Stderr
hatta bir net.Conn
. Tipi) ve uygulama özgü değildir.
Çıktıdan sorumlu çoğu paketin fmt
bağımlılığı vardır, örneğin log
. Programınız üretimde herhangi bir çıktı üretecekse fmt
, büyük olasılıkla istediğiniz pakettir.