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

  1. 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.

    Image 1

    Pilih file yang sesuai dengan sistem operasi Anda. Untuk Windows, unduh file dengan ekstensi .exe.

    Image 2

  2. Penempatan File Air

    Setelah file terunduh, Anda bisa mengganti nama file jika diperlukan. Untuk penggunaan global, tambahkan file air.exe ke dalam environment variable PATH. Namun, untuk keperluan percobaan, Anda bisa langsung memindahkan file air.exe ke direktori proyek Go Anda.

    Image 3

    Pada gambar di atas, file air.exe sudah dipindahkan ke folder proyek Go.

  3. 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.

    GIF 1

    GIF 2

    Setelah dijalankan, Air akan membuat folder tmp yang berisi binary hasil build dari file main.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: