Glosarium Pemrograman
Kamus istilah pemrograman lengkap — dari API sampai Webhook. Setiap istilah dilengkapi definisi, contoh kode, dan link ke tutorial terkait.
Kamus istilah pemrograman lengkap — dari API sampai Webhook. Setiap istilah dilengkapi definisi, contoh kode, dan link ke tutorial terkait.
Application Programming Interface — antarmuka yang memungkinkan dua aplikasi berbeda saling berkomunikasi dan bertukar data. REST API adalah jenis API paling umum di web.
Hypertext Transfer Protocol — protokol yang mengatur komunikasi antara browser (client) dan server web. HTTP methods: GET, POST, PUT, DELETE, PATCH.
JavaScript Object Notation — format ringan untuk pertukaran data. Mudah dibaca manusia dan mesin. Format standar untuk REST API responses.
Representational State Transfer — arsitektur API web yang menggunakan HTTP methods (GET, POST, PUT, DELETE) untuk operasi CRUD pada resource. Format response biasanya JSON.
Asynchronous JavaScript and XML — teknik membuat request ke server tanpa me-reload halaman. Modern menggunakan Fetch API atau XMLHttpRequest.
Fungsi yang dikirim sebagai argumen ke fungsi lain dan dieksekusi setelah operasi selesai. Umum digunakan di JavaScript untuk menangani operasi async.
Bahasa pemrograman yang membuat halaman web interaktif. Awalnya hanya di browser, sekarang bisa berjalan di server via Node.js. Salah satu bahasa paling populer di dunia.
Runtime JavaScript di sisi server yang memungkinkan eksekusi JS di luar browser. Dibangun di atas V8 engine (Chrome). Populer untuk API, real-time apps, dan tools.
Node Package Manager — dependency manager untuk JavaScript/Node.js. Menginstal dan mengelola package/library dari registry npm.js.
Object di JavaScript yang merepresentasikan hasil dari operasi async (pending, fulfilled, rejected). Menggantikan callback hell dengan .then() dan .catch().
Library JavaScript untuk membangun user interface (UI) berbasis komponen. Dikembangkan oleh Facebook. Menggunakan virtual DOM untuk performa optimal.
Framework JavaScript progresif untuk membangun UI. Learning curve rendah, cocok untuk pemula. Bisa diintegrasikan bertahap ke project existing.
Struktur data yang menyimpan kumpulan nilai dalam satu variabel. Setiap elemen memiliki index (dimulai dari 0).
Eksekusi kode yang tidak memblokir thread utama. Program bisa melanjutkan tugas lain sambil menunggu operasi selesai (seperti request API atau baca file).
Blueprint untuk membuat object dalam OOP. Class mendefinisikan properti dan method yang dimiliki oleh object.
Create, Read, Update, Delete — empat operasi dasar pada data persisten. Implementasi CRUD adalah fondasi hampir semua aplikasi web.
Kumpulan kode, tools, dan aturan yang menyediakan struktur untuk membangun aplikasi. Framework mempercepat development dengan menyediakan solusi untuk masalah umum.
Konsep OOP di mana sebuah class mewarisi properti dan method dari class lain. Memungkinkan reuse kode dan hierarki class yang terstruktur.
Kumpulan kode siap pakai yang menyediakan fungsi spesifik. Berbeda dengan framework, library tidak memaksakan struktur — kamu panggil library saat dibutuhkan.
Object-Oriented Programming — paradigma pemrograman yang menggunakan object (gabungan data dan method) sebagai blok bangunan utama. Empat pilar: Encapsulation, Inheritance, Polymorphism, Abstraction.
Object Relational Mapping — teknik mapping tabel database ke object/class dalam kode. Developer menulis kode OOP, bukan SQL mentah. Contoh: Eloquent (Laravel), Doctrine, Sequelize.
Tempat menyimpan data dalam memori yang memiliki nama dan tipe data. Di setiap bahasa: $var (PHP), let var (JS), var (Go), = (Python).
Model-View-Controller — pola arsitektur yang memisahkan aplikasi menjadi tiga komponen: Model (data/logika), View (tampilan), Controller (penghubung). Digunakan oleh Laravel, Spring, Rails.
Tools yang mengelola library/dependency dalam project. Menginstall, mengupdate, dan menghapus package beserta dependensinya. Contoh: npm (JS), Composer (PHP), pip (Python), apt (Linux).
Integrated Development Environment — aplikasi untuk menulis kode dengan fitur lengkap: syntax highlighting, autocomplete, debugger, terminal terintegrasi. Populer: VS Code, PhpStorm, IntelliJ.
Regular Expression — pola (pattern) untuk mencari, mencocokkan, dan memanipulasi teks. Didukung di hampir semua bahasa pemrograman.
Teknik menyimpan hasil komputasi/data sementara di memori cepat (RAM, Redis) agar akses berikutnya lebih cepat. Cache bisa di level browser, server, database, atau aplikasi.
Menguji unit terkecil dari kode (fungsi, method, class) secara terisolasi. Memastikan setiap bagian berfungsi dengan benar sebelum diintegrasikan.
Aksi atau kejadian yang dipicu oleh sistem atau pengguna (klik, submit, scroll, timer). Event bisa di-handle dengan event listener atau event handler.
Proses verifikasi identitas pengguna. Biasanya menggunakan username/password, token JWT, atau OAuth. Memastikan bahwa pengguna adalah siapa yang mereka klaim.
Proses menentukan apa yang boleh diakses oleh pengguna yang sudah terautentikasi. Memisahkan peran seperti admin, user, dan guest.
Cross-Site Request Forgery — serangan yang memaksa pengguna terautentikasi mengirim request yang tidak diinginkan. Dilindungi dengan token CSRF di form.
HTTP Secure — versi aman dari HTTP yang mengenkripsi komunikasi antara browser dan server menggunakan SSL/TLS. Wajib untuk website modern.
JSON Web Token — standar untuk membuat token autentikasi yang aman. Token berisi data dalam format JSON yang ditandatangani digital. Banyak digunakan di REST API.
Secure Sockets Layer / Transport Layer Security — protokol keamanan yang mengenkripsi data antara browser dan server. HTTPS menggunakan SSL/TLS. Sertifikat SSL bisa gratis (Let's Encrypt) atau berbayar.
Cross-Site Scripting — serangan yang menyuntikkan kode JavaScript berbahaya ke halaman web. Dicegah dengan sanitasi input dan encoding output.
Serangan yang menyuntikkan query SQL berbahaya melalui input pengguna. Dicegah dengan menggunakan prepared statement / parameterized query (PDO, Eloquent ORM).
Kode unik yang digunakan untuk autentikasi saat mengakses API. API key dikirim via header (Authorization) atau query parameter. Harus disimpan rahasia, jangan di commit ke Git.
Template engine bawaan Laravel yang memungkinkan penulisan kode PHP di view dengan sintaks yang bersih dan aman dari XSS.
ORM (Object Relational Mapping) bawaan Laravel yang memungkinkan interaksi dengan database menggunakan sintaks PHP OOP, bukan SQL mentah.
Framework PHP open-source dengan arsitektur MVC. Menyediakan fitur lengkap: Eloquent ORM, Blade templating, Artisan CLI, queue, dan ekosistem tools yang luas.
Lapisan software yang memproses request HTTP sebelum mencapai route handler. Digunakan untuk autentikasi, logging, CORS, validasi, dan rate limiting.
Mekanisme yang menentukan bagaimana aplikasi merespon request ke URL tertentu. Router memetakan URL pattern ke handler atau controller.
Mekanisme menjalankan tugas berat (email, processing file, API call) secara asynchronous di background. Mencegah timeout request dan meningkatkan user experience.
Command Line Interface — antarmuka berbasis teks untuk berinteraksi dengan sistem operasi atau aplikasi. Developer menggunakan CLI untuk git, npm, composer, dan tools lainnya.
Platform containerization yang memungkinkan aplikasi berjalan dalam lingkungan terisolasi. Container lebih ringan dari virtual machine karena berbagi kernel OS.
Version Control System (VCS) yang melacak perubahan file dalam project. Memungkinkan kolaborasi tim, branching, dan rollback ke versi sebelumnya.
Platform cloud untuk hosting repository Git. Menyediakan fitur kolaborasi: pull request, issues, actions (CI/CD), dan project management.
Sistem operasi open-source yang dominan di server dan cloud computing. Distribusi populer: Ubuntu, Debian, CentOS. Developer wajib tahu dasar Linux.
Perintah git config digunakan untuk mengatur konfigurasi global atau lokal Git: nama, email, editor, alias, dan lainnya.
Continuous Integration / Continuous Deployment — praktik otomatisasi testing dan deployment. Setiap perubahan kode otomatis di-test dan di-deploy ke production.
Interface berbasis teks untuk berinteraksi dengan sistem operasi. Developer menggunakan terminal untuk menjalankan command, script, Git, dan tools development lainnya.
Proses memindahkan dan menjalankan aplikasi dari environment development ke production server. Meliputi build, testing, database migration, dan konfigurasi server.
Nilai konfigurasi yang disimpan di luar kode, biasanya di file .env atau system environment. Memisahkan konfigurasi (DB password, API key) dari source code.
Secure Shell — protokol untuk mengakses server jarak jauh secara aman melalui koneksi terenkripsi. Wajib untuk mengelola server Linux/VPS.
Software yang melayani request HTTP dan mengirimkan konten web ke browser. Populer: Nginx (ringan, cepat), Apache (fleksibel, banyak fitur), Caddy (HTTPS otomatis).
Dependency manager untuk PHP. Digunakan untuk menginstall library dan framework PHP seperti Laravel, PhpSpreadsheet, dll.
Cascading Style Sheets — bahasa stylesheet yang mengatur tampilan elemen HTML: warna, ukuran, layout, animasi, dan responsive design.
HyperText Markup Language — bahasa markup standar untuk membuat struktur halaman web. Setiap elemen web dimulai dari tag HTML.
Desain website yang menyesuaikan tampilan secara otomatis di berbagai ukuran layar (desktop, tablet, mobile). Dicapai dengan CSS media queries, flexbox, grid, dan viewport units.
Kumpulan data terstruktur yang disimpan secara elektronik. Relational database (MySQL, PostgreSQL) menyimpan data dalam tabel. NoSQL (MongoDB) menggunakan dokumen atau graph.
Database NoSQL berbasis dokumen yang menyimpan data dalam format BSON (mirip JSON). Cocok untuk data yang strukturnya dinamis atau tidak tetap.
Sistem database relasional (RDBMS) open-source paling populer di dunia. Banyak digunakan bersama PHP untuk aplikasi web dinamis.
Database non-relasional yang tidak menggunakan tabel dan SQL. Jenis: document (MongoDB), key-value (Redis), graph (Neo4j), column-family (Cassandra). Cocok untuk data tidak terstruktur.
Structured Query Language — bahasa standar untuk mengelola database relasional. Mencakup DDL (CREATE, ALTER, DROP) dan DML (SELECT, INSERT, UPDATE, DELETE).
Version control untuk skema database. Migration memungkinkan perubahan struktur tabel secara terorganisir, bisa di-rollback jika terjadi error.
Kumpulan perintah SQL yang disimpan di database dan bisa dipanggil berulang kali. Meningkatkan performa karena query sudah di-compile.
Struktur data di database yang mempercepat pencarian data. Mirip indeks di buku — tanpa indeks, database harus scan seluruh tabel (full table scan).
Model layout CSS satu dimensi yang memudahkan pengaturan elemen dalam baris atau kolom. Ideal untuk navigation bar, card grid, dan centering elemen.
Model layout CSS dua dimensi yang memungkinkan pengaturan elemen dalam baris DAN kolom secara bersamaan. Cocok untuk layout halaman kompleks.