Saya sedang mempelajari Go, tetapi saya merasa agak menjengkelkan bahwa ketika mengkompilasi, saya seharusnya tidak meninggalkan variabel atau paket yang tidak digunakan.
Ini benar-benar memperlambat saya. Sebagai contoh, saya hanya ingin mendeklarasikan paket baru dan berencana untuk menggunakannya nanti atau hanya membatalkan perintah untuk menguji. Saya selalu mendapatkan kesalahan dan perlu mengomentari semua penggunaan itu.
Apakah ada cara untuk menghindari jenis check in Go ini?
Jawaban:
Kesalahan itu ada di sini untuk memaksa Anda menulis kode yang lebih baik, dan pastikan untuk menggunakan semua yang Anda deklarasikan atau impor. Ini membuatnya lebih mudah untuk membaca kode yang ditulis oleh orang lain (Anda selalu yakin bahwa semua variabel yang dideklarasikan akan digunakan), dan menghindari beberapa kode mati yang mungkin.
Tetapi, jika Anda benar-benar ingin melewati kesalahan ini, Anda dapat menggunakan pengidentifikasi kosong (
_
):menjadi
Seperti yang dikatakan oleh kostix dalam komentar di bawah, Anda dapat menemukan posisi resmi tim Go di FAQ :
sumber
Anda dapat menggunakan "fungsi null" sederhana untuk ini, misalnya:
Yang bisa Anda gunakan seperti ini:
Ada juga paket untuk ini sehingga Anda tidak harus mendefinisikan
Use
fungsi setiap waktu:sumber
Menurut FAQ :
Saya tidak perlu setuju dengan ini karena berbagai alasan yang tidak layak untuk dibahas. Ini adalah apa adanya, dan itu tidak akan berubah dalam waktu dekat.
Untuk paket, ada
goimports
alat yang secara otomatis menambahkan paket yang hilang dan menghapus yang tidak digunakan. Sebagai contoh:Anda harus dapat menjalankan ini dari editor setengah jalan yang layak - misalnya untuk Vim:
The
goimports
halaman daftar beberapa perintah untuk editor lain, dan Anda biasanya mengaturnya untuk dijalankan secara otomatis ketika Anda menyimpan buffer ke disk.Catatan yang
goimports
juga akan berjalangofmt
.Seperti yang telah disebutkan, untuk variabel cara termudah adalah dengan (sementara) menugaskan mereka ke
_
:sumber
Satu sudut yang sejauh ini tidak disebutkan adalah set alat yang digunakan untuk mengedit kode.
Menggunakan Visual Studio Code bersama dengan Extension dari lukehoban disebut
Go
akan melakukan beberapa sihir otomatis untuk Anda. Ekstensi Go secara otomatis berjalangofmt
,golint
dll, dan menghapus serta menambahimport
entri . Jadi setidaknya bagian itu sekarang otomatis.Saya akui itu bukan 100% dari solusi untuk pertanyaan itu, tetapi betapapun cukup berguna.
sumber
Seandainya ada orang lain yang kesulitan memahami hal ini, saya pikir mungkin akan membantu menjelaskannya dengan cara yang sangat mudah. Jika Anda memiliki variabel yang tidak Anda gunakan, misalnya fungsi yang telah Anda komentari permohonannya (kasus penggunaan umum):
Anda dapat menetapkan variabel tidak berguna / kosong ke fungsi sehingga tidak lagi tidak digunakan :
sumber