Kualitas kode dari suatu program(aplikasi) merupakan salah satu indikator yang harus diperhatikan bagi programmer karena sangat berpengaruh terhadap performa dari program tersebut.
Kualitas kode sangat perlu dijaga untuk memastikan program yang dibuat memiliki minim bugs atau defect serta memastikan bahwa syntax kode yang digunakan telah mengacu pada standar pemrograman
Terdapat beberapa aturan-aturan serta kaidah penulisan kode program yang harus diperhatikan oleh programmer untuk menjaga kualitas kode program. Contoh sederhannya adalah adannya kaidah tentang urutan import package/library pada typescript.
Mengapa perlu melakukan cek kualitas kode program ?
Kode dibawah ini tidak mengikuti kaidah yang ada terkait urutan import package.
import { bModel } from './../b.model' import { aModel } from './../a.model'
baris kode diatas dianggap tidak berkualitas karena package di import secara tidak terurut. Seharusnya package di import berdasarkan urutan abjadnya (a-Z) atau ascending. Sehingga penulisan kode untuk import package yang benar adalah sebagai berikut ini
import { aModel } from './../a.model' import { bModel } from './../b.model'
masih banyak kaidah-kaidah lain yang perlu diperhatikan untuk menjaga kualitas program. Contoh diatas hanyalah salah satunya. Oleh karena itu diperlukan sebuah program atau aplikasi yang dapat mendeteksi kualitas kode. Salah satu aplikasi yang populer untuk mendeteksi kualitas kode adalah sonarqube dan sonarscanner.
penggunaan aplikasi untuk melakukan cek kualitas kode harus dilakukan secara otomatis karena banyaknya baris kode yang dituliskan oleh programmer, sehingga sangat tidak mungkin untuk melakukan cek secara manual.
Sonarqube merupakan software opensource yang dapat mendeteksi kualitas kode atas berbagai bahasa pemrograman mulai dari java, javascript, typescript dan lain sebagainnya. Sehingga tidak perlu khawatir terkait kompatibilitas ataupun terkait licensing (pemberian izin untuk penggunaan komersil)
Cara install sonarqube
1.Persyaratan untuk install sonarqube
pastikan software dibawah ini telah terinstall pada komputer atau laptop sebelum melakukan install pada sonarqube.
- JDK versi 9 ke atas
- Browser (Chrome/firefox atau internet explorer).
Setelah memastikan JDK terinstall dengan versi diatas, maka selanjutnya dapat mengunduh sonarqube dan sonarscanner pada tautan link dibawah ini
sonarqube
https://www.sonarqube.org/downloads/
sonarscanner
https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/
pastikan selalu menggunakan versi yang paling stabil baik untuk sonarqube maupun sonar scanner.
2. Pastikan java dan sonarscanner telah ada pada system environment variables.
tambahkan sonarscanner dan java pada system environment variable (jika belum ada) seperti pada gambar dibawah ini.
2.1 java – JDK 11 system environment variables.
pastikan untuk meletakan path dari java SDK ini pada urutan paling atas.
Sonarqube tidak support versi 11 ke atas. Sehingga direkomendasikan untuk menggunakan versi 11.07
unduh java jdk versi 11.07 pada tautan link dibawah ini
https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html
2.2 Sonarscanner – system environment variables
Pada kasus ini, letak dari sonarscanner adalah pada folder dibawah iin
C:/Users/degananda.ferdian/Documents/Workspace/Fullstack Workspace/QC/sonar-scanner-cli-4.3.0.2102-windows
maka tambahkan lah path bin pada lokasi diatas sehingga menjadi seperti berikut
kemudian tambahkan path sonarscanner diatas pada system environment variables seperti pada gambar dibawah ini
3. Menjalankan sonarqube server
sebelum menjalankan server sonarqube, ubah konfigurasi yang terdapat pada file config sonarscanner. Ini untuk menentukan port yang akan digunakan untuk menjalankan sonarscanner pada server sonarqube.
lokasi file config sonarqube berada di path direktori berikut ini
\sonar-scanner-4.3.0.2102-windows\conf\sonar-scanner.properties
buka file sonar.properties tersebut dengan menggunakan text editor (notepad , notepad++ ataupun editor lainnya).
#Configure here general information about the environment, such as SonarQube server connection details for example #No information about specific project should appear here #----- Default SonarQube server sonar.host.url=http://localhost:9000 #----- Default source code encoding sonar.sourceEncoding=UTF-8
tidak perlu mengubah port yang digunakan (9000) ini dikarenakan secara default sonarqube menggunakan pot 9000.
Sehingga tidak perlu mengubah konfigurasi port pada sonar scanner.
Setelah port pada sonarscanner telah terkonfigurasi maka langkah terahir adalah menjalankan server sonarqube. jalankan file StartSonar.bat yang terdapat pada folder berikut ini
\sonarqube-8.3.1.34397\sonarqube-8.3.1.34397\bin\windows-x86-64
Folder diatas adalah untuk sistem operasi windows. Jika sistem yang digunakan adalah linux ataupun osx maka gunakanlah program untuk menjalankan sonarqube untuk sistem operasi tersebut yang terletak difolder bin seperti terlihat pada gambar dibawah ini
jalankan file startsonar.bat maka server sonarqube akan mulai berjalan / aktif yang ditandai dengan adannya text Sonarqube is up.
Jika sonarqube tidak berhasil dijalankan atau error maka disarankan untuk cek dua hal dibawah ini
- pastikan menggunakan java versi 11.07
- pastikan free memory yang tersedia mencukupi karena sonarqube server berjalan pada jvm. Sehingga membutuhkan alokasi memory yang cukup.
Setelah sonarqube telah berhasil di install dan dijalankan. untuk dapat membuka aplikasi sonarqube, jalankan browser dan buka halaman dibawah ini
http://localhost:9000/

kemudian masuk (login) dengan menggunakan username dan password sebagai berikut ini
admin:admin (username:password)

done~
langkah selanjutnya adalah menggunakan sonarqube dan sonarscanner untuk melakukan cek kualitas kode pada bahasa pemrograman tertentu.