Soal 1Mana yang membaca baris yang kamu ketik di terminal, mencari program yang namanya ada di depan, lalu menjalankannya?
Apa Itu Lingkungan Pengembangan — Editor, Terminal, dan Runtime
Artikel ini adalah bagian dari kursus Dasar-Dasar Teknologi Informasi, yang membangun dari nol pengetahuan TI praktis yang minimal kamu butuhkan untuk memprogram dan melakukan vibe coding.
Kamu menulis di editor, menyerahkannya dari terminal, lalu runtime menjalankannya. Diagram menunjukkan ketiga peran ini, cara shell membaca baris yang kamu ketik, dan di mana ia mencari filenya.
Artikel ini membahas lingkungan pengembangan.
Lingkungan pengembangan adalah sebutan bersama untuk tiga software: editor, terminal, dan runtime.
Menyatukan ketiganya ke dalam satu layar menghasilkan lingkungan pengembangan terpadu (IDE, Integrated Development Environment), dan Visual Studio Code, IntelliJ IDEA, serta Xcode adalah contoh yang paling dikenal.
- Apa yang dikerjakan masing-masing dari ketiganya — editor, terminal, dan runtime
- Bagaimana nama terminal berbeda dari satu OS ke OS lain, dan cara membaca layarnya
- Bagaimana shell membaca baris yang kamu ketik, dan file mana yang ia cari
- Bagaimana runtime menjalankan app.js yang diserahkan kepadanya, satu baris demi satu baris dari atas
Apa itu lingkungan pengembangan — editor, terminal, dan runtime
Lingkungan pengembangan (development environment, yaitu gabungan software untuk menulis source code dan menjalankannya lewat perintah) adalah sebutan bersama untuk tiga hal, bukan satu software yang bernama demikian.
- Kamu mengetik isi app.js lalu menyimpannya
- Software seperti Visual Studio Code
- Layar tempat kamu mengetik satu baris seperti node app.js
- Sudah terpasang bersama OS sejak awal
- Software bernama node atau python
- Kamu memasangnya dari situs resminya
- app.js — source code yang kamu tulis
- File gambar dan konfigurasi juga masuk ke sini
- Kamu membuat folder terpisah ketika membangun aplikasi lain
Ketiga hal di kotak atas bisa dipakai berulang begitu kamu memasangnya.
Satu-satunya yang kamu buat baru setiap kali adalah folder seperti my-app di kotak bawah.
Editor bukan sekadar layar untuk menulis teks; ia bisa menampilkan daftar file dan terminal berdampingan di layar yang sama.
Ketika panduan menyebut "code editor" atau "IDE", kamu boleh menganggapnya hal yang sama.
- File di dalam my-app terdaftar di sini
- Mengeklik app.js membukanya di sebelah kanan
- Isi app.js muncul di sini
- File tidak berubah sampai kamu menyimpannya
- Kamu bisa mengetik node app.js di sini
- Sama saja dengan terminal yang dibuka terpisah
Ketiga software itu terhubung dan berjalan di dalam satu komputer.
Seluruh kotaknya adalah satu komputer, dan ketiganya membagi peran di dalamnya.
Editor hanya sampai membuat filenya; runtime-lah yang menjalankannya.
Terminal adalah pintu masuk yang memberi tahu runtime untuk menjalankan file ini, dan hasilnya keluar di terminal yang sama.
Lingkungan pengembangan adalah kumpulan tiga software
Lingkungan pengembangan adalah sebutan untuk tiga hal sekaligus: menulis, mengetik, dan menjalankan.
Editor adalah tempat kamu menulis, terminal adalah tempat kamu mengetik, dan runtime adalah yang menjalankannya; begitu kamu memasang ketiganya, kamu bisa memakainya lagi untuk aplikasi berikutnya.
Terminal — "Terminal" di Mac, "Command Prompt" di Windows
Terminal (terminal, yaitu software berupa layar tempat kamu mengetik perintah sebagai teks dan menerima hasilnya sebagai teks) sudah terpasang bersama OS sejak awal.
Namun namanya berbeda dari satu OS ke OS lain.
Namanya berbeda, tetapi tampilannya sama semua.
Kamu mengetik satu baris di layar yang isinya hanya teks, menekan Enter, lalu hasilnya muncul di baris tepat di bawahnya.
- Simbol seperti $, #, dan >
- Nama folder tempat kamu berada sering muncul sebelum simbol itu
- Kamu mengetik teksnya di sebelah kanan prompt
- Tidak ada yang terjadi sampai kamu menekan Enter
- Hasil maupun error sama-sama muncul sebagai teks di baris di bawahnya
- Begitu selesai, prompt berikutnya muncul lagi
Di layar sungguhan kamu mengetik satu baris di sebelah kanan simbol di awal baris, seperti di bawah ini, dan hasilnya kembali di bawahnya.
pwd mengembalikan lokasi folder tempat kamu berada, dan ls mengembalikan isi folder itu.
$ pwd
/home/you/my-app
$ ls
app.js package.json
Terminal adalah layar untuk mengetik teks dan menampilkan hasilnya.
Yang benar-benar membaca baris yang kamu ketik dan menentukan program mana yang dijalankan adalah shell (shell, yaitu program yang membaca baris yang kamu ketik, mencari program yang namanya ada di depan, lalu menjalankannya) yang berjalan di dalam layar itu.
bash dan zsh yang muncul di panduan adalah nama-nama shell semacam itu.
Shell memperlakukan baris yang kamu ketik sebagai 2 bagian: bagian depan dan yang mengikutinya.
Shell mencari program memakai node di bagian depan, lalu menyerahkan app.js yang mengikutinya kepada program itu.
Ia mencari app.js hanya di dalam folder yang sedang dibuka shell, dan folder itu disebut direktori saat ini (current directory, yaitu folder yang sedang dibuka shell).
Namanya sering muncul tepat sebelum prompt (prompt, yaitu simbol yang menunjukkan bahwa input sedang diterima) di awal baris.
- my-app ditampilkan di awal baris di terminal
- app.js ada di sini, jadi node app.js berjalan
- Sekalipun app.js ada di sini, node app.js tidak berjalan
- Mengetik cd my-app membuat kotak atas menjadi folder tempat kamu berada
node app.js yang sama memberi hasil berbeda ketika folder tempat kamu berada berbeda.
app.js disimpan di dalam my-app.
| Folder tempat shell berada | Tempat app.js dicari | Hasil dari node app.js |
|---|---|---|
| my-app | Di dalam my-app → ditemukan | app.js berjalan |
| Downloads | Di dalam Downloads → tidak ditemukan | Cannot find module |
| Setelah cd my-app | Di dalam my-app → ditemukan | app.js berjalan |
Panduan menaruh cd sebelum sebuah perintah supaya tempat pencariannya berubah.
Ketika kamu menulis tujuan setelah cd, baris berikutnya berjalan di folder yang kamu tuju.
$ cd my-app
$ pwd
/home/you/my-app
Apa yang terjadi pada baris yang kamu ketik ditentukan oleh apa yang kamu tulis di bagian depan.
Isi sejauh ini adalah bekal minimal untuk membaca perintah yang muncul di panduan.
Kalau kamu ingin belajar lebih dalam, Kursus Dasar Linux menyediakan latihan tempat kamu mengetik perintah ke terminal di dalam browser.
Kalau kamu mulai dari Path dan berpindah antar direktori, pembahasan cd di artikel ini berlanjut langsung dari sana.
Yang membaca baris yang kamu ketik adalah shell
Yang membaca baris yang kamu ketik bukan layarnya, melainkan shell yang berjalan di dalamnya.
Ketika ada yang tidak berjalan, baca kedua kasusnya secara terpisah: command not found berarti nama di bagian depan tidak ditemukan, dan Cannot find module berarti file yang mengikutinya tidak ada di folder tempat kamu berada.
Runtime — menjalankan isi app.js secara berurutan dari atas
Runtime yang menerima app.js dari shell membaca isinya satu baris demi satu baris dari atas lalu menjalankannya sesuai urutan penulisannya.
Ketika kamu menjalankan tiga baris berikut dengan node app.js, hanya dua baris yang muncul di layar.
console.log("Halo");
const price = 1200;
console.log(price + " yen");
Yang muncul di layar hanyalah baris yang memerintahkan sesuatu ditampilkan.
Runtime hanya membaca satu baris demi satu baris dari atas
Yang dilakukan runtime hanyalah membaca app.js satu baris demi satu baris dari atas dan melakukan apa yang tertulis di sana.
Hanya baris yang memerintahkan sesuatu ditampilkan yang menaruh teks di layar, dan satu-satunya yang ia baca adalah app.js yang diserahkan shell.
Cek Pemahaman
Jawab setiap pertanyaan satu per satu.
Soal 2Kamu mengetik node app.js tetapi muncul pesan bahwa app.js tidak ditemukan. Apa yang kamu periksa lebih dahulu?
Soal 3Ketika kamu mengetik node app.js di terminal, mana yang menjalankan isi app.js dari atas?