2024-03-08
Topik: IDE, kompiler dan perkakas untuk programmer
IDE (Integrated Development Editor) adalah perangkat lunak text editor yang memudahkan pengguna untuk melakukan pekerjaan programming. IDE meningkatkan produktifitas pengguna dengan memiliki fitur antara lain:
Ada banyak manfaat menggunakan IDE, tetapi yang menonjol yaitu tentang efisiensi dan waktu pengguna.
Dengan adanya IDE yang lebih spesifik dengan bahasa pemrograman tertentu, pengguna tidak terlalu mengatur kebutuhan untuk pengolahan data, misalnya memasang addons, konfigurasi versioning control, mengatur layout editor yang sesuai dengan alur kerja, plotting visualisasi dan sebagainya. Pengguna hanya memasang beberapa tambahan pustaka yang diperlukan.
RStudio Desktop dari Posit adalah IDE yang kompatibel dengan bahasa R. Fitur RStudio sudah termasuk console, syntax highlight, alat untuk plotting, debugging dan manajemen area kerja (workspace). RStudio tersedia versi open source edisi komunitas dan edisi komersil yang keduanya dapat berjalan di sistem operasi GNU/Linux, macOS, dan Windows.
Spyder adalah IDE open source untuk kebutuhan ilmiah dengan bahasa python serta ditulis juga dengan bahasa python native. Spyder ditujukan untuk ilmuan (scientists), engineer dan data analisis. Sypder memiliki fitur builtin yang luar biasa seperti pengefitan lanjutan, analisis, debugging, pembuatan profil dari alat pengembangan komprehensif dengan eksplorasi data dan kemampuan visualisasi dari paket pypi.
JupyterLab merupakan projek free software, standar terbuka, dan web servis untuk interaktif semua bahasa pemrograman komputasi. JupyterLab juga merupakan generasi baru untuk mengantikan jupyter notebook (antarmuka klasik) yang dapat dijalankan melalui web browser. JupyterLab memiliki fitur lebih seperti notebook, terminal, teks editor, file browser, output, dan lain-lain. Fiturnya sangat mampu untuk memenuhi alur kerja untuk bidang data sains, komputasi ilmiah, jurnalis komputasi dan machine learning.
IDE yang digunakan dapat digunakan untuk membuat perangkat lunak dengan berbagai macam bahasa pemrograman.
Code-OSS merupakan IDE yang berupa kode sumber (source code) dari repo github microsoft/vscode yang berada dibawah standar lisensi MIT. Repositori tersebut dibangun oleh Microsoft dan komunitas secara bersama-sama. Tidak ada binary yang didapatkan didalam repositori tersebut, karena hanya menyediakan kode sumber saja. Pengguna perlu mengkompilasinya agar dapat digunakan di sistem operasi yang digunakan. Beberapa GNU/Linux sudah menyediakan binary sehingga dapat menjalankan program code
langsung seperti Alpine Linux, Arch, Manjaro, dan Void Linux.
VSCode (Visual Studio Code) merupakan IDE dari repo github microsoft/vscode. Perbedaannya dengan Code-OSS yaitu, VSCode dilapisi elemen Microsoft langsung seperti logo, branding, telemetry yang sudah aktif, dan fitur integrasi dengan github. VSCode juga menyediakan binary yang sudah siap untuk dipasang ke sistem operasi tanpa harus dikompilasi terlebih dahulu. Dengan adanya tambahan komponen nonfree dari Microsoft tentu VSCode tidak berlisensikan sebagai perangkat lunak terbuka lagi.
VSCodium merupakan Code-OSS yang dikompilasi menjadi binary. Berbeda dengan VSCode, VSCodium menghilangkan komponen Microsoft dan menonaktifkan telemetry/pelacak dari Microsoft. Binary VSCodium tersedia dalam berbagi platform GNU/Linux, MacOS, Windows dan lain-lain. Menjalankan VSCodium di terminal bisa menggunakan perintah codium
. Penulis menyarankan untuk menggunakan VSCodium daripada menggunakan VSCode.
Compiler adalah software komputer yang mengubah kode sumber (source code) program dalam bahasa pemrograman menjadi kode objek atau bahasa mesin yang dimengerti komputer untuk kemudian dieksekusi.
Terlepas dari pengertiannya yang luas, istilah compiler biasa digunakan untuk program komputer yang menerjemahkan program yang ditulis dalam bahasa pemrograman tingkat tinggi (semacam bahasa Pascal, C++, BASIC, FORTRAN, Visual Basic, Visual C#, Java, xBase, atau COBOL) menjadi bahasa mesin, biasanya dengan bahasa Assembly sebagai perantara.
Dalam ilmu komputer, penerjemah atau lebih dikenal dengan interpreter merupakan perangkat lunak yang berfungsi melakukan eksekusi sejumlah instruksi yang ditulis dalam suatu bahasa pemrograman tanpa terlebih dahulu menyusunnya menjadi program bahasa mesin.
Perl, Python, Ruby, dan MATLAB adalah beberapa contoh perangkat lunak penerjemah bertipe 2, sementara Java termasuk dalam kategori tipe 3, namun dalam beberapa kasus Java dapat digolongkan pula ke dalam kategori tipe 2.
Interpreter umumnya menggunakan salah satu strategi berikut untuk menjalankan program:
Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.
Compiler | Interpreter |
---|---|
Memindai seluruh program dan menerjemahkannya secara keseluruhan ke dalam kode mesin. | Menerjemahkan satu pernyataan satu per satu. |
Dibutuhkan banyak waktu untuk menganalisis kode sumber namun keseluruhan waktu eksekusi relatif lebih cepat. | Dibutuhkan sedikit waktu untuk menganalisis kode sumber namun keseluruhan waktu eksekusi lebih lambat. |
Compiler | Interpreter |
---|---|
Menghasilkan kode objek menengah yang membutuhkan tautan lebih lanjut, sehingga membutuhkan lebih banyak memori. | Tidak ada kode objek antara yang dihasilkan, maka memori menjadi efisien. |
Ini menghasilkan pesan kesalahan hanya setelah memindai seluruh program. | Terus menerjemahkan program sampai kesalahan pertama terpenuhi, dalam hal ini berhenti. Oleh karena itu debugging mudah dilakukan. |
Bahasa pemrograman seperti C, C++ menggunakan kompiler. | Bahasa pemrograman seperti Python, Ruby menggunakan interpreter. |
© 2024 Hervy Qurrotul