Penggunaan Channel Select Range Timeout
Adanya channel sangat membantu kita untuk mengelola goroutine yang sedang berjalan pada program kita. Ada kalanya kita juga perlu mengelola goroutine banyak dan dibutuhkan banyak channel juga. Maka, disinilah kegunaan select
. select
memudahkan kita mengontrol komunikasi data lewat channel. Cara penggunannya sama seperti seleksi kondisi switch
.
Pengenalan Channel Pada Golang
Channel adalah penghubung goroutine yang dari satu ke yang lainnya. Channel ini sifat-nya synchronous
karena ada blocking. Channel bisa didefinisikan dengan bentuk variabel dengan keyword chan
. Variabel ini memiliki tugas untuk mengirim dan menerima data.
Pengenalan Go Routine Pada Golang
Penggunaan go-routine saat proses yang akan dieksekusi sebagai goroutine harus dibungkus kedalam fungsi. Pada saat pemanggilan fungsi tersebut ditambahkan di depannya dengan perintah go
. Dengan demikian proses tersebut akan dideteksi sebagai goroutine baru.
Integrasi Code Analysis Sonarcube Golang
Persyaratan
- Install Docker
- Install Install SonarQube Commnunity
- Install Java
- Install sonar-scanner-cli
Pengenalan SonarQube
SonarQube adalah alat peninjauan kode otomatis untuk mendeteksi bug, kerentanan, dan code smells dalam kode yang dibuat. SonarQube bisa terintegrasi dengan alur kerja dalam banyak proyek dalam pemeriksaan kode yang berkelanjutan.
Cara Mengatasi Error Handling pada Golang
Saat ini Santekno akan membahas tentang penanganan Error pada bahasa Golang. Kita akan mempelajari dari penanganan yang mudah sampai beberapa implementasi yang begitu kompleks. Golang sudah menyediakan penanganan Error
dengan mudah, kita bisa juga melakukan modifikasi sedikit agar Error
tersebut bisa lebih mudah dipahami oleh kita sendiri dan orang yang nantinya akan berkolaborasi dengan kita. Hal yang pertama yang akan kita lakukan yaitu dengan mengkostumisasi Error
bawaan dari golang.
Teknik Membuat Mocking Unit Test Pada Golang
Saat kita membuat fungsi atau sedang melakukan code terkadang kita suka kesusahan untuk melakukan unit test di beberapa titik yang tidak bisa kita cover dengan unit test. Maka berikut ini ada beberapa cara teknik melakukan unit test dengan teknik mocking. Tetapi sebenarnya kita juga bisa menggunakan Third-party yang sudah tersedia dibeberapa library sehingga tinggal langsung kita pakai saja.
Cara Membuat Integration Test Pada Golang
Melakukan integration test untuk API setidaknya kita harus bisa menjalankan aplikasi-nya terlebih dahulu agar bisa dilakukan pengetesan secara terintegrasi.
Hal ini perlu kita siapkan beberapa case, test case yang mencakup kebutuhan dari integration Test tersebut. Misalkan dari API Endpoint
kita yang sudah dikerjakan itu memiliki resource database
, cache
ataupun eksternal lain yang berhubungan dengan keberlangsungannya suatu API Endpoint tersebut.
Cara Membuat Unit Test Menggunakan Library Moq Pada Golang
Melakukan unit test dengan cara mocking ini biasanya digunakan jika sudah beberapa fungsi yang dilakukan dengan format interface
sehingga kita bisa asumsikan jika memanggil fungsi interface
tersebut kita meyakini bahwa harus menghasilkan program yang benar.
Cara Membuat Unit Benchmark Pada Golang
Package testing
selain berisikan tools untuk testing juga berisikan tools untuk benchmarking. Cara pembuatan benchmark sendiri cukup mudah yaitu dengan membuat fungsi yang namanya diawali dengan Benchmark
dan parameternya bertipe *testing.B
.
Cara Membuat Unit Test Pada Golang
Unit Testing Menggunakan Library Go
Pemrograman tidak mudah bahkan programmer
terbaik tidak mampu menulis program yang bekerja persis seperti yang diinginkan setiap saat. Oleh karena itu bagian penting dari proses pengembangan perangkat lunak adalah pengujian (testing
). Menulis test
untuk kode kita adalah cara yang baik untuk memastikan kualitas dan meningkatkan keandalan.
Mengenal Hashes Cryptography Pada Golang
Hashes & Cryptography
Fungsi hash
mengambil satu set data dan menguranginya ke ukuran tetap yang lebih kecil. Hash sering digunakan dalam pemrograman untuk segala hal mulai dari mencari data hingga mendeteksi perubahan dengan mudah. Fungsi hash
di Go dibagi menjadi dua kategori yaitu kriptografi
dan non-kriptografi
. Fungsi hash
non-kriptografi
dapat ditemukan di bawah paket hash
dan termasuk adler32
, crc32
, crc64
dan fnv
.
Mengenal Container List Dan Sort pada Golang
Selain arrays
dan maps
, Go memiliki beberapa koleksi lagi yang tersedia di bawah paket kontainer. Kita akan melihat paket container/list
sebagai contoh.