08. Komentar dan catatan untuk dirimu sendiri — Solusi PR
File solusi .go ada di
exercises/08/homework/solutions/.
Soal 1 — Beri anotasi pada program
Soal. Tambahkan header dan dua komentar mengapa tanpa mengubah output.
Cara berpikir. Komentar tidak pernah mempengaruhi output, jadi ini murni komunikasi. Header menjelaskan apa yang dilakukan file; komentar di dalam kode menjelaskan pilihan yang mungkin dipertanyakan pembaca.
Solusi yang dikerjakan.
// Mencetak satu baris papan skor kecil untuk satu pemain.
// Dipakai untuk memeriksa rumus skor dengan mata.
package main
import "fmt"
func main() {
fmt.Println("Player: Keiko") // untuk sekarang papan skor hanya mencatat satu pemain
// Semua orang memulai ronde dengan 50. Angka 25 adalah hadiah karena tidak terkena damage.
fmt.Println("Score:", 50+25)
}Output, sama seperti sebelumnya:
Player: Keiko
Score: 75
Kesalahan umum.
// tambah 50 dan 25di atas baris cetak hanya mengulangnya. Jelaskan mengapa 25 adalah bonusnya, bukan bahwa itu ditambahkan.
Soal 2 — Temukan bug dengan mengomentari
Soal. Matikan satu baris sehingga outputnya adalah
start lalu end.
Solusi yang dikerjakan.
package main
import "fmt"
func main() {
fmt.Println("start")
// fmt.Println("this line should not be here")
fmt.Println("end")
}Kesalahan umum.
- Menghapus baris daripada mengomentarinya. Mengomentari mempertahankannya kalau kamu ingin memakainya kembali.
Soal 3 — Matikan sebuah blok
Soal. Gunakan satu blok /* */ untuk
mematikan tiga baris di tengah.
Solusi yang dikerjakan.
package main
import "fmt"
func main() {
fmt.Println("first")
/*
fmt.Println("middle 1")
fmt.Println("middle 2")
fmt.Println("middle 3")
*/
fmt.Println("last")
}Output:
first
last
Kesalahan umum.
- Lupa penutup
*/. Go tidak diam-diam mematikan sisa file; Go berhenti dengancomment not terminateddan tidak menjalankan apa pun.
Tantangan — Mengapa, bukan apa
Soal. Ganti komentar yang mengulang kode dengan yang berguna.
Cara berpikir. Untuk setiap baris, tanyakan "apakah pembaca sudah tahu ini dari kodenya?" Kalau ya, komentar itu hanya gangguan — hapus atau beri alasannya.
Solusi yang dikerjakan. Sebelum:
package main
import "fmt"
func main() {
fmt.Println("Lives:", 3) // print 3 lives
fmt.Println("Lives:", 3-1) // print 3 minus 1 lives
}Sesudah:
package main
import "fmt"
func main() {
fmt.Println("Lives:", 3) // awal standar; tiga kesempatan per permainan
fmt.Println("Lives:", 3-1) // pemain berjalan masuk ke lava
}Kesalahan umum.
- Menulis ulang setiap komentar alih-alih menghapusnya. Kadang komentar terbaik adalah tidak ada komentar — kalau kodenya jelas, diam saja sudah cukup.
Selesai?
Kamu sekarang bisa meninggalkan catatan yang membantu, bukan yang mengganggu, dan menyalakan serta mematikan kode tanpa menghapusnya. Berikutnya adalah Perintah cetak, lebih dalam tentang menampilkan hal-hal di layar.