Bagaimana sebenarnya sonarQube berbeda dari SonarLint? SonarQube memiliki server yang terkait dengannya dan Sonar lint bekerja lebih seperti plugin. Tetapi apa perbedaan spesifik mereka?
90
SonarLint hanya hidup di IDE (IntelliJ, Eclipse dan Visual Studio). Tujuannya adalah untuk memberikan umpan balik seketika saat Anda mengetik kode Anda. Untuk ini, ini berkonsentrasi pada kode apa yang Anda tambahkan atau perbarui.
SonarQube adalah server pusat yang memproses analisis penuh (dipicu oleh berbagai Pemindai SonarQube). Tujuannya adalah untuk memberikan visi 360 ° tentang kualitas basis kode Anda. Untuk ini, ini menganalisis semua baris sumber proyek Anda secara teratur.
Baik SonarLint dan SonarQube mengandalkan penganalisis kode sumber statis yang sama - sebagian besar ditulis menggunakan teknologi SonarSource.
Perlu ditambahkan bahwa SonarQube juga melakukan pemindaian dengan penganalisis pihak ketiga (findBugs, checkstyle, PMD) sedangkan SonarLint tidak menyertakannya. Saya pikir alasannya adalah memprioritaskan kinerja dan findBugs mengandalkan kode-byte java.
Dengan demikian, temuan Anda di SonarQube dan SonarLint dapat bervariasi, jika profil kualitas yang mendasarinya menggunakan pemindai pihak ketiga.
sumber
SonarQube adalah server tempat Anda dapat menghosting proyek dan menjalankan analisis, sedangkan SonarLint adalah agen yang memungkinkan kita untuk terhubung dengan SonarQube ini dan menjalankan analisis dari jarak jauh. SonarLint dapat digunakan dengan IDE atau juga dapat dijalankan melalui perintah CLI.
SonarLint berisi kumpulan aturan defaultnya sendiri, tetapi saat terhubung ke SonarQube, pengguna dapat mengimpor aturan dari SonarQube yang sebenarnya lebih dari sekadar kumpulan aturan standar. Kami dapat mengintegrasikan PDM, CodeStyle dan banyak pemeriksa lainnya di SonarQube dan membuat aturan khusus.
Dua fakta yang ingin saya sebutkan yang saya pelajari dari pengalaman saya, SonarLint tidak akan mewarisi aturan kustom tersebut dari SonarQube, kedua Sonar tidak berfungsi pada kelas Tes.
sumber
Sonarqube menjalankan valiasi aturan di server. Kami mengintegrasikannya ke build TFS kami. SonarLint berjalan di IDE jadi sebelum saya memasukkan kode saya, saya tahu baris apa yang melanggar aturan mana di dalam IDE.
sumber
SonarLint : hanya digunakan di IDE (IntelliJ, Eclipse dan Visual Studio). Tujuannya adalah untuk memberikan umpan balik seketika saat Anda mengetik kode Anda.
SonarQube : adalah server pusat yang memproses analisis statis penuh. Tujuannya adalah untuk memberikan visi 360 ° tentang kualitas basis kode Anda. Untuk ini, ini menganalisis semua baris sumber proyek Anda. Anda dapat mengonfigurasi cara menganalisis proyek Anda.
sumber