BAB 3 – Dasar JavaScript untuk Pengembangan Node.js

BAB 3 – Dasar JavaScript untuk Pengembangan Node.js

JavaScript yang digunakan di Node.js berbeda fokus dibandingkan JavaScript di browser. Di Node.js, JavaScript tidak berurusan dengan tampilan atau interaksi pengguna, tetapi dengan logika aplikasi, pengolahan data, dan proses server.

Artinya, JavaScript di Node.js harus ditulis dengan mempertimbangkan:

  • aplikasi berjalan terus-menerus
  • banyak proses berjalan bersamaan
  • error tidak boleh menghentikan server

Karena itu, tidak semua materi JavaScript dasar relevan. Bab ini hanya membahas JavaScript yang benar-benar dipakai dalam pengembangan Node.js.


Penggunaan Variabel yang Aman dan Konsisten

Dalam aplikasi Node.js, penggunaan variabel harus disiplin karena aplikasi bisa berjalan lama.

const PORT = 3000;
let totalRequest = 0;

Praktik yang disarankan:

  • gunakan const sebagai default
  • gunakan let hanya jika nilainya berubah
  • hindari var karena berpotensi menimbulkan bug scope

Pendekatan ini membuat kode lebih mudah dipahami dan lebih aman saat aplikasi berkembang.


Function sebagai Dasar Logika Aplikasi

Hampir seluruh logika di Node.js dibungkus dalam function. Function digunakan untuk memisahkan tugas dan menjaga kode tetap rapi.

function logRequest(url) {
  console.log(`Request ke: ${url}`);
}

Dalam praktik nyata, function digunakan sebagai:

  • handler request
  • pemroses data
  • pemisah logika bisnis

Function yang kecil dan fokus jauh lebih mudah dirawat dibandingkan function panjang yang melakukan banyak hal sekaligus.


Arrow Function dan Kapan Digunakan

Arrow function banyak digunakan di Node.js karena sintaksnya lebih ringkas, terutama untuk callback.

const multiply = (a, b) => a * b;

Contoh penggunaan nyata:

const users = ["Andi", "Budi", "Citra"];

users.forEach(user => {
  console.log(user);
});

Gunakan arrow function untuk operasi singkat dan callback. Untuk logika yang lebih kompleks, function biasa tetap lebih mudah dibaca.


Module JavaScript di Node.js

Node.js mendorong pengembang untuk memecah kode ke dalam module agar aplikasi tidak menjadi satu file besar.

Membuat module

// utils/logger.js
export function logger(message) {
  console.log(`[LOG] ${message}`);
}

Menggunakan module

// index.js
import { logger } from "./utils/logger.js";

logger("Aplikasi berjalan");

Dengan module, kode menjadi:

  • lebih terstruktur
  • mudah dikembangkan
  • lebih siap untuk skala besar

Asynchronous JavaScript sebagai Kebutuhan Utama

Node.js sangat bergantung pada proses asynchronous agar server tetap responsif.

Contoh Promise sederhana:

function getData() {
  return new Promise(resolve => {
    setTimeout(() => {
      resolve("Data berhasil diambil");
    }, 1000);
  });
}

Menggunakan async/await:

async function loadData() {
  const result = await getData();
  console.log(result);
}

loadData();

Pendekatan ini membuat alur kode lebih mudah dibaca dan lebih dekat dengan cara berpikir manusia.


Penanganan Error di Aplikasi Node.js

Error yang tidak ditangani dengan baik dapat menghentikan aplikasi Node.js.

async function loadUser() {
  try {
    const user = await getData();
    console.log(user);
  } catch (error) {
    console.error("Terjadi kesalahan:", error.message);
  }
}

Error handling bukan tambahan, tetapi bagian penting dari logika aplikasi backend.


Object dan Struktur Data yang Umum Digunakan

Node.js sering bekerja dengan data dalam bentuk object dan array.

const user = {
  id: 1,
  name: "Andi",
  email: "andi@mail.com"
};

Struktur data seperti ini sangat umum digunakan saat:

  • mengirim response API
  • membaca data dari database
  • memproses request dari client

Contoh Praktik Sederhana Menggabungkan Konsep

// services/userService.js
export function getUser() {
  return {
    id: 1,
    name: "Andi"
  };
}
// index.js
import { getUser } from "./services/userService.js";

function startApp() {
  const user = getUser();
  console.log("User aktif:", user.name);
}

startApp();

Contoh ini menunjukkan penggunaan:

  • function
  • module
  • object
  • alur logika Node.js sederhana

Kesimpulan

Dasar JavaScript untuk Node.js tidak perlu rumit, tetapi harus tepat. Fokus utama adalah:

  • penggunaan function yang jelas
  • pemecahan kode dengan module
  • pemahaman asynchronous
  • penanganan error yang benar

Dengan dasar ini, pembahasan selanjutnya akan lebih mudah dipahami dan lebih relevan untuk pengembangan aplikasi Node.js nyata.