Dari log.pergi (pelaksanaan log paket) :
167 // Println calls l.Output to print to the logger.
168 // Arguments are handled in the manner of fmt.Println.
169 func (l *Logger) Println(v ...interface{}) { l.Output(2, fmt.Sprintln(v...)) }
login.Println
adalah salah satu fungsi wrapper untuk fmt.Sprintln
, mengapa saya harus menggunakan itu bukan dari fmt.Println
atau fmt.Sprintln
?
Apapun alasan praktis ?
Dua hal yang berbeda:
Mencetak melalui paket log aman dari serentak goroutines (sementara polos fmt
isn't)
Log dapat menambahkan informasi waktu secara otomatis.
Jadi, ini adalah dua hal yang sama sekali berbeda. log adalah untuk penebangan dan fmt
untuk memformat. (Oke, log menggunakan kata kerja dan bendera, tapi itu hanya nyaman).