Tutorial Django #1 : Pengenalan Django dan Dasar Web Development

1. Apa Itu Django?

Django adalah framework web berbasis Python yang digunakan untuk membuat aplikasi web secara cepat, aman, dan terstruktur.

Django membantu programmer membuat website tanpa harus membuat semuanya dari nol.

Dengan Django kita dapat membuat:

  • Sistem Informasi Sekolah
  • LMS (Learning Management System)
  • E-Commerce
  • Website Company Profile
  • Sistem Absensi
  • Dashboard Admin
  • REST API

Django menyediakan banyak fitur bawaan sehingga developer lebih fokus membuat fitur aplikasi.

2. Sejarah Django

Django pertama kali dibuat pada tahun 2003 oleh Adrian Holovaty dan Simon Willison. Framework ini dibuat untuk kebutuhan portal berita yang membutuhkan:

  • Kecepatan development
  • Keamanan
  • Pengelolaan data yang besar

Nama “Django” diambil dari musisi jazz terkenal Django Reinhardt. Django kemudian dirilis secara open source pada tahun 2005.

Website besar yang menggunakan Django:

  •  Instagram
  • Pinterest
  • Mozilla
  • Disqus
  • Spotify

3. Apa Itu Framework?

Framework adalah kerangka kerja yang membantu programmer membuat aplikasi lebih cepat. Tanpa framework Programmer membuat semuanya dari nol, sedangkan dengan framework banyak fitur sudah disediaka

 

4. Kelebihan Django

  1. Cepat Dikembangkan : Django memiliki banyak fitur bawaan, contoh: Login system, Admin panel, ORM database, Security.
  2. Aman : Django memiliki keamanan bawaan, contoh: CSRF Protection, SQL Injection Protection, XSS Protection.
  3. Struktur Rapi : Project Django memiliki struktur folder yang terorganisir.
  4. Dokumentasi Lengkap : Dokumentasi Django sangat lengkap dan mudah dipelajari.
  5. Skalabilitas Tinggi : Django mampu menangani aplikasi besar.
Baca Juga  Tutorial ReactJS #6 : React Router pada ReactJS

 

5. Kekurangan Django

  1. Agak Berat untuk Project Kecil, karena fitur Django sangat lengkap.
  2. Perlu Belajar Struktur Framework, pemula perlu memahami alur Django terlebih dahulu.
  3. Lebih Kompleks dibanding Flask, Django lebih besar dibanding microframework seperti Flask.

6. Bahasa Pemrograman Python

Django menggunakan bahasa pemrograman Python.

Kenapa Python Populer?

  • Sintaks mudah dipahami
  • Banyak digunakan AI
  • Banyak library
  • Cocok untuk pemula
  • Digunakan perusahaan besar

 

Contoh Kode Python

nama = "Budi"
print("Halo", nama)

Hasil:

Halo Budi

 

7. Dasar Web Development

Web development adalah proses membuat website atau aplikasi web. Web development dibagi menjadi 3 bagian:

  • Frontend
  • Backend
  • Database

 

8. Frontend

Frontend adalah tampilan yang dilihat pengguna.

Teknologi frontend:

  • HTML
  • CSS
  • JavaScript

 

Fungsi Frontend:

  • Menampilkan halaman
  • Membuat desain website
  • Interaksi pengguna

9. Backend

Backend adalah bagian logika aplikasi.

Backend bertugas:

  • Mengelola data
  • Login
  • Validasi
  • Menghubungkan database

 

Bahasa backend:

  • Python
  • PHP
  • Java
  • Node.js

 

Pada tutorial ini backend menggunakan Python + Django.

10. Database

Database digunakan untuk menyimpan data.

Contoh data:

  • Data siswa
  • Data guru
  • Nilai
  • Absensi
  • User login

Database yang didukung Django:

  • SQLite
  • MySQL
  • PostgreSQL
  • Oracle

11. Cara Kerja Website

Saat user membuka website:

  1. Browser mengirim request
  2. Server menerima request
  3. Django memproses request
  4. Database mengambil data
  5. Django mengirim response
  6. Browser menampilkan halaman

12. Arsitektur Django (Model View Template / MVT)

Django menggunakan arsitektur bernama MVT (Model View Template). MVT adalah pola kerja Django untuk memisahkan:

  • Tampilan website
  • Logika program
  • Pengelolaan database

Dengan konsep ini, project menjadi:

  • Lebih rapi
  • Mudah dikembangkan
  • Mudah diperbaiki
  • Mudah dikerjakan tim

 

 

Penjelasan Komponen MVT

1. Model

Model digunakan untuk:

  • Membuat tabel database
  • Mengelola data
  • Query database
  • Menyimpan data aplikasi
Baca Juga  Tutorial PHP : #3 Variabel, Konstanta dan Tipe Data pada PHP

Model berhubungan langsung dengan database seperti:

  • SQLite
  • MySQL
  • PostgreSQL

Contoh penggunaan:

  • Data siswa
  • Data guru
  • Data nilai
  • Data absensi

 

Contoh Model Django

from django.db import models 

class Siswa(models.Model): 
    nama = models.CharField(max_length=100) 
    kelas = models.CharField(max_length=20) 
    
    def __str__(self): 
        return self.nama

 

2. View

View digunakan untuk:

  • Mengatur logika aplikasi
  • Mengambil data dari model
  • Memproses request user
  • Menampilkan response

View adalah penghubung antara:

  • Model
  • Template

Ketika user membuka halaman website:

  1. Request masuk ke View
  2. View memproses data
  3. View mengirim hasil ke Template

 

Contoh View Django

from django.http import HttpResponse 

def home(request): 
    return HttpResponse("Hello Django")

3. Template

Template digunakan untuk:

  • Membuat tampilan HTML
  • Menampilkan data ke user
  • Mendesain halaman website

Template biasanya berisi:

  • HTML
  • CSS
  • JavaScript
  • Template Tag Django

 

Contoh Template Django

<!DOCTYPE html> 
<html> 
    <head> 
        <title>Django</title> 
    </head> 
    
    <body> 
        <h1>Selamat Datang</h1> 
    </body> 
</html>

 

Cara Kerja MVT Django

Alur Kerja

  1. User membuka website
  2. URL diproses Django
  3. View menerima request
  4. Model mengambil data database
  5. View mengirim data ke Template
  6. Template menampilkan halaman HTML
  7. Response dikirim ke browser

 


 

Hubungan Model, View, dan Template

KomponenFungsi
ModelMengelola database
ViewMengatur logika aplikasi
TemplateMenampilkan tampilan website

Kesimpulan

Arsitektur MVT pada Django membantu developer:

  • Membuat kode lebih rapi
  • Memisahkan fungsi program
  • Mempermudah maintenance
  • Mempercepat development

MVT adalah salah satu alasan Django sangat cocok digunakan untuk:

  • Sistem sekolah
  • LMS
  • Dashboard admin
  • Sistem informasi
  • Aplikasi web skala besar

 

Referensi:

Related Post

Be the first to comment

Leave a Reply

Your email address will not be published.


*


error: Ga bisa dicopy