Saat mengembangkan REST API server menggunakan Go, proses debugging dan development bisa terasa kurang efisien. Biasanya, saya menggunakan fungsi log.Println()
untuk menampilkan log di terminal. Namun, setiap kali ada perubahan kode, saya harus menekan shortcut Ctrl + C
untuk menghentikan program, lalu melakukan kompilasi ulang dan menjalankan kembali binary-nya. Alternatifnya, bisa juga menjalankan go run main.go
, tapi tetap saja setiap perubahan mengharuskan program dihentikan dan dijalankan ulang secara manual.
Setelah bertanya di salah satu grup Discord, saya mendapat rekomendasi untuk menggunakan utilitas bernama Air. Air adalah command line utility yang membantu proses development Go dengan fitur hot reload. Dengan Air, setiap kali ada perubahan pada file atau folder yang sedang diawasi (watch), aplikasi akan otomatis dibuild dan dijalankan ulang tanpa perlu intervensi manual.
Cara Kerja Air
Air akan memonitor (watch) file dan folder di direktori proyek Go Anda. Ketika ada perubahan (misal: file disimpan), Air akan otomatis membuild ulang dan menjalankan kembali aplikasi. Ini sangat mempercepat workflow development karena Anda tidak perlu lagi menghentikan dan menjalankan aplikasi secara manual setiap kali ada perubahan kode.
Langkah-langkah Instalasi dan Penggunaan Air
Download Air
Air bersifat cross-platform dan dapat digunakan di berbagai sistem operasi (Windows, Linux, macOS). Untuk Windows, Anda bisa mengunduh file
.exe
dari halaman release Air di GitHub.Pilih file yang sesuai dengan sistem operasi Anda. Untuk Windows, unduh file dengan ekstensi
.exe
.Penempatan File Air
Setelah file terunduh, Anda bisa mengganti nama file jika diperlukan. Untuk penggunaan global, tambahkan file
air.exe
ke dalam environment variablePATH
. Namun, untuk keperluan percobaan, Anda bisa langsung memindahkan fileair.exe
ke direktori proyek Go Anda.Pada gambar di atas, file
air.exe
sudah dipindahkan ke folder proyek Go.Menjalankan Air
Buka terminal di direktori proyek Anda, lalu jalankan perintah berikut:
./air.exe
Jika Anda menggunakan Git Bash di Windows, gunakan perintah
/air.exe
.Setelah dijalankan, Air akan membuat folder
tmp
yang berisi binary hasil build dari filemain.go
. Setiap kali Anda melakukan perubahan pada file yang diawasi, Air akan otomatis membuild ulang dan menjalankan aplikasi.
Keuntungan Menggunakan Air
- Efisiensi: Tidak perlu lagi menghentikan dan menjalankan aplikasi secara manual setiap kali ada perubahan kode.
- Produktivitas: Proses development menjadi lebih cepat dan nyaman.
- Cross-platform: Dapat digunakan di berbagai sistem operasi.
Dengan Air, workflow pengembangan aplikasi Go menjadi jauh lebih praktis. Anda cukup menyimpan perubahan, dan aplikasi akan otomatis di-reload. Tidak perlu repot menghentikan, membuild, dan menjalankan ulang aplikasi secara manual.
Referensi: