Materi/Node.js & Express
🟢

Node.js & Express

Intermediate+380 XP

Chapter

Pengenalan Node.js

Node.js adalah runtime JavaScript yang berjalan di server — bukan di browser. Dibuat tahun 2009 oleh Ryan Dahl, sekarang dipakai oleh Netflix, LinkedIn, Uber, dan lainnya.

Kenapa Node.js?

  • JavaScript di server — satu bahasa untuk frontend & backend
  • Non-blocking I/O — handle ribuan request sekaligus
  • NPM — 2 juta+ package tersedia
  • Fast — dibangun di atas V8 engine Chrome
  • Cara Kerja Node.js

    Browser Request
          ↓
       Node.js (Event Loop)
          ↓
       Proses request (non-blocking)
          ↓
       Response balik ke browser

    Node.js Dasar

    // hello.js
    console.log("Hello dari Node.js!")
    
    // Jalankan: node hello.js
    
    // Baca file
    const fs = require('fs')
    fs.readFile('data.txt', 'utf8', (err, data) => {
      if (err) throw err
      console.log(data)
    })
    
    // Atau pakai async/await
    const data = await fs.promises.readFile('data.txt', 'utf8')
    console.log(data)

    NPM — Node Package Manager

    # Init project baru
    npm init -y
    
    # Install package
    npm install express mongoose bcryptjs
    
    # Install dev dependency
    npm install --save-dev nodemon
    
    # Jalankan script
    npm run dev

    Module System

    // CommonJS (lama)
    const express = require('express')
    module.exports = { namaFungsi }
    
    // ES Modules (modern)
    import express from 'express'
    export { namaFungsi }
    export default namaFungsi