Kuasai Node.js: Buat Backend Bootcamp dengan Express dan MongoDB

Kuasai Node.js! Tingkatkan keterampilan Anda dengan Bootcamp Backend menggunakan Express dan MongoDB. Mulai perjalanan coding Anda sekarang!

By WGS INDONESIA
4.9/4.9
Indonesia
Rp 43,750.00 GRATIS
E-COURSE banner with text and icons representing Artificial Intelligence and video learning

Detail Pembelajaran

Kuasai Node.js: Buat Backend Bootcamp dengan Express dan MongoDB
  • Node.js, Backend Development, Express, MongoDB, Bootcamp, Web Development

Baca Online

Kuasai Node.js: Buat Backend Bootcamp dengan Express dan MongoDB

Daftar Isi

  1. Pengantar Node.js dan Backend
  2. Instalasi Node.js dan NPM
  3. Membuat Server HTTP Sederhana
  4. Pengenalan Express.js
  5. Routing dan Middleware di Express
  6. Pengenalan MongoDB dan NoSQL
  7. Menggunakan Mongoose untuk MongoDB
  8. CRUD API dengan Express dan MongoDB
  9. Deploy Aplikasi Backend Anda
  10. Sumber Belajar dan Source Code

1. Pengantar Node.js dan Backend

Node.js adalah runtime JavaScript yang berjalan di luar browser, memungkinkan Anda membuat aplikasi backend yang cepat dan scalable. Backend adalah bagian dari aplikasi yang menangani logika bisnis, database, dan komunikasi dengan frontend.

Ilustrasi server komputer dengan logo Node.js dan diagram alur backend

Dalam bootcamp ini, Anda akan belajar membuat backend menggunakan Node.js, Express sebagai framework, dan MongoDB sebagai database NoSQL.

2. Instalasi Node.js dan NPM

Untuk memulai, unduh dan instal Node.js dari situs resmi: https://nodejs.org . NPM (Node Package Manager) akan terinstal otomatis bersama Node.js.

Setelah instalasi, cek versi Node.js dan NPM dengan perintah berikut di terminal:

node -v
npm -v
    

Pastikan versi muncul tanpa error, menandakan instalasi berhasil.

3. Membuat Server HTTP Sederhana

Node.js menyediakan modul http untuk membuat server. Berikut contoh server sederhana yang merespon permintaan dengan teks.

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Halo dari server Node.js!');
});

server.listen(3000, () => {
  console.log('Server berjalan di http://localhost:3000');
});
    

Jalankan file ini dengan perintah node namaFile.js dan buka http://localhost:3000 di browser.

4. Pengenalan Express.js

Express adalah framework minimalis dan fleksibel untuk Node.js yang memudahkan pembuatan server dan API.

Instal Express dengan perintah:

npm install express
    

Contoh server Express sederhana:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('Halo dari Express!');
});

app.listen(3000, () => {
  console.log('Server Express berjalan di http://localhost:3000');
});
    

5. Routing dan Middleware di Express

Routing menentukan bagaimana server merespon permintaan ke URL tertentu. Middleware adalah fungsi yang dijalankan sebelum route handler.

5.1 Routing Dasar

app.get('/about', (req, res) => {
  res.send('Halaman About');
});
     

5.2 Middleware Contoh

const logger = (req, res, next) => {
  console.log(`${req.method} ${req.url}`);
  next();
};

app.use(logger);
     

Middleware logger ini akan mencetak method dan URL setiap request.

5.3 Parsing JSON Body

Untuk menerima data JSON dari client, gunakan middleware bawaan Express:

app.use(express.json());
     

6. Pengenalan MongoDB dan NoSQL

MongoDB adalah database NoSQL yang menyimpan data dalam format dokumen JSON. Cocok untuk aplikasi yang membutuhkan fleksibilitas skema.

Ilustrasi logo MongoDB dengan dokumen JSON dan server

Anda bisa menginstal MongoDB secara lokal atau menggunakan layanan cloud seperti MongoDB Atlas.

7. Menggunakan Mongoose untuk MongoDB

Mongoose adalah ODM (Object Data Modeling) yang memudahkan interaksi dengan MongoDB menggunakan model dan schema.

Instal Mongoose dengan perintah:

npm install mongoose
    

Contoh koneksi dan schema sederhana:

const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/bootcamp', {
  useNewUrlParser: true,
  useUnifiedTopology: true
}).then(() => {
  console.log('Terhubung ke MongoDB');
}).catch(err => {
  console.error(err);
});

const siswaSchema = new mongoose.Schema({
  nama: String,
  umur: Number,
  kelas: String
});

const Siswa = mongoose.model('Siswa', siswaSchema);
    

8. CRUD API dengan Express dan MongoDB

CRUD adalah singkatan dari Create, Read, Update, Delete. Berikut contoh API sederhana untuk mengelola data siswa.

8.1 Setup Express dan Mongoose

const express = require('express');
const mongoose = require('mongoose');
const app = express();

app.use(express.json());

mongoose.connect('mongodb://localhost:27017/bootcamp', {
  useNewUrlParser: true,
  useUnifiedTopology: true
});
     

8.2 Model Siswa

const siswaSchema = new mongoose.Schema({
  nama: String,
  umur: Number,
  kelas: String
});

const Siswa = mongoose.model('Siswa', siswaSchema);
     

8.3 Endpoint Create (POST)

app.post('/siswa', async (req, res) => {
  try {
    const siswaBaru = new Siswa(req.body);
    const hasil = await siswaBaru.save();
    res.status(201).json(hasil);
  } catch (err) {
    res.status(400).json({ error: err.message });
  }
});
     

8.4 Endpoint Read (GET)

app.get('/siswa', async (req, res) => {
  try {
    const data = await Siswa.find();
    res.json(data);
  } catch (err) {
    res.status(500).json({ error: err.message });
  }
});
     

8.5 Endpoint Update (PUT)

app.put('/siswa/:id', async (req, res) => {
  try {
    const updated = await Siswa.findByIdAndUpdate(req.params.id, req.body, { new: true });
    res.json(updated);
  } catch (err) {
    res.status(400).json({ error: err.message });
  }
});
     

8.6 Endpoint Delete (DELETE)

app.delete('/siswa/:id', async (req, res) => {
  try {
    const deleted = await Siswa.findByIdAndDelete(req.params.id);
    res.json({ message: 'Data siswa dihapus' });
  } catch (err) {
    res.status(400).json({ error: err.message });
  }
});
     

8.7 Menjalankan Server

app.listen(3000, () => {
  console.log('Server berjalan di http://localhost:3000');
});
     

Simpan semua kode di satu file misal app.js , lalu jalankan dengan node app.js .

9. Deploy Aplikasi Backend Anda

Setelah selesai, Anda bisa deploy aplikasi backend ke layanan cloud seperti Heroku, Vercel, atau DigitalOcean.

Contoh singkat deploy ke Heroku:

  1. Buat akun dan install Heroku CLI dari https://heroku.com
  2. Login di terminal: heroku login
  3. Inisialisasi git: git init
  4. Buat app Heroku: heroku create nama-app-anda
  5. Push kode ke Heroku: git add . && git commit -m "deploy" && git push heroku master
  6. Atur variabel environment untuk MongoDB URI di dashboard Heroku
  7. Akses aplikasi di URL yang diberikan Heroku

Pastikan Anda menggunakan variabel environment untuk koneksi database agar aman.

10. Sumber Belajar dan Source Code

Berikut beberapa sumber belajar dan channel yang sangat direkomendasikan untuk menguasai Node.js, Express, dan MongoDB:

Source Code Contoh Proyek Backend Bootcamp

Anda dapat mengunduh source code contoh proyek backend bootcamp ini dari repositori GitHub berikut:

GitHub - nodejs-backend-bootcamp

Edukasi Terkait