6
Pendahuluan
Web Development atau pengembangan web adalah proses merancang, membangun, menguji, mengamankan, dan memelihara aplikasi atau situs web. Dalam praktiknya, web development tidak hanya berkaitan dengan membuat halaman yang terlihat oleh pengguna, tetapi juga mencakup server, database, API, keamanan, deployment, testing, dan berbagai teknologi pendukung lainnya.
Secara sederhana, sebuah aplikasi web dapat dibayangkan seperti sebuah restoran:
- Front-End = ruang makan dan pelayanan yang dilihat pelanggan.
- Back-End = dapur yang memproses pesanan.
- Database = tempat penyimpanan bahan dan data.
- API = pelayan yang membawa pesanan dari pelanggan ke dapur dan membawa hasilnya kembali.
- Server = fasilitas tempat sistem aplikasi berjalan.
- Framework = kerangka kerja yang membantu pembangunan aplikasi.
- DevOps = proses yang membantu aplikasi dikembangkan, diuji, dan diterapkan ke server secara teratur.
Gambar tersebut menggambarkan ekosistem teknologi web modern, mulai dari HTML, CSS, JavaScript, React, Vue, Angular, PHP, Laravel, Node.js, Python, Java, database, API, Docker, Git, cloud, hingga teknologi testing.
1. π₯οΈ Web Development
Web Development merupakan bidang yang berkaitan dengan pembuatan dan pengembangan aplikasi berbasis web.
Secara umum, Web Development dapat dibagi menjadi:
- Front-End Development
- Back-End Development
- Full-Stack Development
Selain tiga bagian tersebut, dalam proyek modern terdapat teknologi pendukung seperti:
- Database
- API
- Authentication
- Testing
- Version Control
- Container
- Cloud
- CI/CD
- Security
- Monitoring
Seorang Full-Stack Developer biasanya memahami bagian front-end dan back-end sekaligus.
2. π¨ Front-End Development
5
Front-End adalah bagian aplikasi web yang berinteraksi langsung dengan pengguna.
Contohnya:
- Menu navigasi
- Tombol
- Form login
- Tabel
- Dashboard
- Grafik
- Animasi
- Halaman produk
- Keranjang belanja
Ketika pengguna membuka website dan melihat tampilannya di browser, sebagian besar yang dilihat tersebut merupakan hasil kerja front-end development.
Teknologi utama front-end adalah:
HTML + CSS + JavaScript
3. π§± HTML β HyperText Markup Language
πΆ HTML
HTML digunakan untuk membangun struktur halaman web.
HTML dapat dianalogikan sebagai kerangka bangunan.
Contohnya:
<h1>Selamat Datang</h1>
<p>Ini adalah halaman web saya.</p>
<button>Login</button>
HTML menentukan bahwa suatu elemen merupakan:
- Judul
- Paragraf
- Tombol
- Gambar
- Tabel
- Form
- Link
- Video
Contoh penggunaan
Website kampus dapat mempunyai:
Header
βββ Logo
βββ Beranda
βββ Akademik
βββ Dosen
βββ Mahasiswa
Content
βββ Berita
βββ Pengumuman
βββ Jadwal
Footer
Semua struktur tersebut dapat dibangun menggunakan HTML.
4. π¨ CSS β Cascading Style Sheets
π· CSS
Jika HTML merupakan struktur bangunan, maka CSS adalah desain dan penampilannya.
CSS digunakan untuk mengatur:
- Warna
- Ukuran
- Font
- Jarak
- Layout
- Posisi
- Border
- Background
- Animasi
- Responsive design
Contoh:
button {
background: blue;
color: white;
padding: 10px;
}
CSS membuat halaman web menjadi lebih menarik dan mudah digunakan.
5. π¨ JavaScript
π¨ JavaScript
JavaScript memberikan interaktivitas dan logika pada halaman web.
Contohnya:
- Tombol dapat melakukan aksi
- Validasi form
- Dropdown menu
- Modal
- Slider
- AJAX
- Pengambilan data API
- Manipulasi halaman
- Aplikasi web interaktif
Contoh sederhana:
function tampilkanPesan() {
alert("Selamat datang!");
}
HTML menentukan apa yang ada, CSS menentukan bagaimana tampilannya, sedangkan JavaScript menentukan bagaimana halaman tersebut berperilaku.
6. π· TypeScript
π· TypeScript
TypeScript merupakan bahasa pemrograman yang dikembangkan dari JavaScript dengan dukungan static typing.
Contohnya:
let nama: string = "Ahmad";
let umur: number = 30;
TypeScript banyak digunakan pada proyek aplikasi web yang besar karena membantu developer menemukan kesalahan lebih awal.
TypeScript banyak digunakan bersama:
- React
- Angular
- Vue
- Node.js
- Next.js
7. π Libraries
Library adalah kumpulan kode yang dapat digunakan kembali untuk membantu developer menyelesaikan pekerjaan tertentu.
Daripada membuat semuanya dari awal, programmer dapat menggunakan library yang sudah tersedia.
Dalam gambar terdapat beberapa contoh:
- Bootstrap
- Tailwind CSS
- jQuery
- Axios
- Lodash
8. π ±οΈ Bootstrap
π ±οΈ Bootstrap
Bootstrap adalah framework CSS yang menyediakan berbagai komponen antarmuka siap pakai.
Contohnya:
- Button
- Navbar
- Card
- Modal
- Alert
- Form
- Grid
Contoh:
<button class="btn btn-primary">
Simpan
</button>
Bootstrap sangat cocok untuk pembelajaran karena mahasiswa dapat membuat antarmuka profesional dengan relatif cepat.
9. π Tailwind CSS
π Tailwind CSS
Tailwind CSS menggunakan pendekatan utility-first CSS.
Contohnya:
<button class="bg-blue-500 text-white px-4 py-2 rounded">
Simpan
</button>
Developer dapat menggabungkan class untuk membangun desain tanpa harus selalu membuat CSS dari awal.
Tailwind banyak digunakan pada pengembangan aplikasi web modern.
10. π΅ jQuery
π΅ jQuery
jQuery adalah library JavaScript yang dahulu sangat populer untuk mempermudah manipulasi HTML, event, animasi, dan komunikasi AJAX.
Contoh:
$("#tombol").click(function() {
alert("Tombol diklik");
});
Walaupun banyak aplikasi modern menggunakan JavaScript vanilla atau framework seperti React/Vue, jQuery masih dapat ditemukan pada banyak sistem lama atau legacy application.
11. βοΈ Front-End Framework
Framework membantu developer membangun aplikasi yang lebih terstruktur.
Beberapa framework/library populer:
- React
- Vue
- Angular
- Svelte
- Next.js
12. βοΈ React
βοΈ React
React adalah library JavaScript untuk membangun antarmuka pengguna.
React menggunakan pendekatan component-based development.
Contohnya sebuah halaman dapat dibagi menjadi:
Dashboard
β
βββ Navbar
βββ Sidebar
βββ UserCard
βββ StatisticCard
βββ Footer
Setiap bagian dapat dibuat sebagai komponen.
React sangat populer untuk membangun aplikasi:
- Dashboard
- E-commerce
- Sistem akademik
- Sistem informasi
- Single Page Application
13. π’ Vue.js
π’ Vue.js
Vue.js adalah framework JavaScript progresif yang digunakan untuk membangun antarmuka web.
Vue terkenal karena sintaksnya relatif mudah dipelajari.
Vue cocok digunakan untuk:
- Website interaktif
- Dashboard
- Sistem informasi
- SPA
- Aplikasi web skala kecil hingga besar
14. πΊ Angular
πΊ Angular
Angular merupakan framework untuk membangun aplikasi web yang kompleks.
Angular menggunakan TypeScript sebagai bahasa utama.
Angular banyak digunakan untuk aplikasi enterprise karena menyediakan struktur pengembangan yang cukup lengkap.
15. π Svelte
π Svelte
Svelte menggunakan pendekatan berbeda dibandingkan framework JavaScript tradisional.
Sebagian pekerjaan dilakukan saat proses build, sehingga kode yang dikirim ke browser dapat lebih efisien.
Svelte cocok untuk developer yang ingin membangun aplikasi web modern dengan pendekatan yang lebih sederhana.
16. β² Next.js
β² Next.js
Next.js dibangun di atas React dan menyediakan berbagai kemampuan tambahan seperti:
- Routing
- Server-side rendering
- Static generation
- API
- Optimasi gambar
- Full-stack application
Karena itu Next.js dapat digunakan untuk membangun aplikasi yang membutuhkan front-end sekaligus sebagian kemampuan server-side.
17. βοΈ Back-End Development
5
Back-End adalah bagian aplikasi yang bekerja di belakang layar.
Pengguna biasanya tidak melihat langsung proses ini.
Back-end bertanggung jawab terhadap:
- Logika bisnis
- Authentication
- Authorization
- Pengolahan data
- Komunikasi database
- API
- Pengolahan transaksi
- Keamanan
- Pemrosesan request
Contoh:
Ketika mahasiswa melakukan login:
Mahasiswa
β
Form Login
β
Front-End
β
API
β
Back-End
β
Database
β
Validasi username/password
β
Response
β
Dashboard Mahasiswa
18. π PHP
π PHP
PHP adalah bahasa pemrograman server-side yang sangat populer dalam pengembangan web.
PHP dapat digunakan untuk:
- Website
- Sistem informasi
- CMS
- REST API
- E-commerce
- Sistem akademik
Contoh:
<?php
$nama = "Ahmad";
echo "Halo " . $nama;
?>
PHP banyak digunakan pada lingkungan hosting berbasis:
- Apache
- Nginx
- MySQL/MariaDB
- cPanel
19. π΄ Laravel
π΄ Laravel
Laravel bukan bahasa pemrograman, melainkan framework PHP.
Laravel membantu developer membangun aplikasi PHP secara lebih terstruktur.
Laravel menyediakan berbagai fitur seperti:
- Routing
- Controller
- Model
- Migration
- ORM
- Authentication
- Middleware
- Validation
- Queue
- Cache
- API
- Blade Template
Struktur sederhana Laravel:
User
β
Route
β
Controller
β
Model
β
Database
β
Response
Laravel sangat cocok untuk pembelajaran Web Programming dan pembangunan sistem informasi.
Contohnya:
Sistem Informasi Akademik, Sistem Informasi Desa, E-Commerce, Sistem Kepegawaian, Sistem Perpustakaan, dan REST API.
20. π’ Node.js
π’ Node.js
Node.js bukan bahasa pemrograman baru.
Node.js adalah runtime environment yang memungkinkan JavaScript dijalankan di sisi server.
Dengan Node.js, JavaScript dapat digunakan untuk:
- Backend
- REST API
- WebSocket
- Real-time application
- Microservices
Framework/library yang sering digunakan bersama Node.js antara lain:
- Express.js
- NestJS
- Fastify
21. β Java
β
Java merupakan bahasa pemrograman yang banyak digunakan untuk aplikasi enterprise.
Dalam pengembangan web, Java sering digunakan bersama:
- Spring
- Spring Boot
- Jakarta EE
Java cocok untuk sistem dengan kebutuhan:
- Skalabilitas
- Keamanan
- Enterprise application
- Integrasi sistem
22. π Python
π Python
Python merupakan bahasa pemrograman yang populer karena sintaksnya relatif mudah dipahami.
Untuk web development, Python dapat digunakan dengan framework:
- Django
- Flask
- FastAPI
Python juga memiliki keunggulan karena dapat digunakan dalam:
- Artificial Intelligence
- Machine Learning
- Data Science
- Automation
Sehingga Python sangat menarik untuk mahasiswa Informatika.
23. π Ruby
π Ruby
Ruby adalah bahasa pemrograman yang terkenal dengan framework:
Ruby on Rails
Ruby on Rails menggunakan pendekatan yang membantu developer membangun aplikasi web secara cepat dan terstruktur.
24. π΅ Go / Golang
π΅ Go
Go atau Golang dikembangkan oleh Google.
Go terkenal karena:
- Performa tinggi
- Concurrency
- Kompilasi cepat
- Cocok untuk server
- Cocok untuk microservices
Go banyak digunakan dalam pengembangan backend modern dan infrastruktur cloud.
25. π£ C#
π£ C#
C# merupakan bahasa pemrograman dari ekosistem Microsoft.
Untuk web development, C# dapat digunakan bersama:
ASP.NET Core
ASP.NET Core dapat digunakan untuk:
- REST API
- Web Application
- Enterprise system
- Cloud application
26. π API β Application Programming Interface
π API
API merupakan mekanisme komunikasi antara satu aplikasi dengan aplikasi lainnya.
Contohnya:
Aplikasi Mobile
β
API
β
Server
β
Database
Misalnya aplikasi akademik membutuhkan data mahasiswa.
Aplikasi dapat meminta:
GET /api/mahasiswa
Server kemudian mengirimkan data.
API sangat penting dalam:
- Website
- Mobile application
- IoT
- Integrasi sistem
- Microservices
27. π΅ REST API
π΅ REST
REST adalah salah satu pendekatan populer dalam pembuatan API berbasis HTTP.
Metode yang umum digunakan:
| Method | Fungsi |
|---|---|
| GET | Mengambil data |
| POST | Menambahkan data |
| PUT | Mengubah data |
| PATCH | Mengubah sebagian data |
| DELETE | Menghapus data |
Contoh:
GET /mahasiswa
POST /mahasiswa
PUT /mahasiswa/10
DELETE /mahasiswa/10
28. π£ GraphQL
π£ GraphQL
GraphQL merupakan teknologi API yang memungkinkan client menentukan data yang dibutuhkan.
Jika REST mempunyai beberapa endpoint, GraphQL biasanya menggunakan satu endpoint dengan query tertentu.
GraphQL sangat berguna pada aplikasi yang membutuhkan pengambilan data secara fleksibel.
29. π· gRPC
π· gRPC
gRPC merupakan framework komunikasi yang banyak digunakan untuk komunikasi antar-service.
Teknologi ini sangat cocok pada:
- Microservices
- Distributed system
- High-performance communication
30. π WebSocket
π WebSocket
WebSocket memungkinkan komunikasi dua arah secara real-time antara client dan server.
Contohnya:
- Chat
- Notifikasi langsung
- Live dashboard
- Monitoring
- Online game
- Sistem informasi real-time
Contoh:
Client ββββββββββ Server
Real-Time
31. ποΈ Database
5
Database merupakan tempat penyimpanan data aplikasi.
Contohnya dalam sistem akademik:
Mahasiswa
Dosen
Mata Kuliah
KRS
Nilai
Jadwal
Data tersebut dapat disimpan dalam database.
32. π PostgreSQL
PostgreSQL adalah relational database management system (RDBMS) yang kuat dan mendukung berbagai fitur database modern.
Cocok untuk:
- Sistem informasi
- Enterprise application
- Analitik
- Aplikasi web
- Data kompleks
33. π¬ MySQL
MySQL merupakan salah satu database yang sangat populer dalam pengembangan web.
Banyak digunakan bersama:
PHP
+
Apache/Nginx
+
MySQL
Kombinasi ini sangat umum ditemukan pada hosting dan sistem informasi berbasis web.
34. π MongoDB
MongoDB merupakan database NoSQL document-oriented.
Berbeda dengan database relasional yang menggunakan tabel, MongoDB menyimpan data dalam bentuk dokumen.
Contoh konsep:
{
"nama": "Ahmad",
"prodi": "Informatika"
}
MongoDB cocok untuk aplikasi yang membutuhkan struktur data yang fleksibel.
35. πͺΆ SQLite
SQLite merupakan database ringan yang disimpan sebagai file.
Keunggulannya:
- Tidak membutuhkan server database terpisah
- Mudah digunakan
- Ringan
- Cocok untuk aplikasi kecil
- Cocok untuk prototyping
36. π΄ Redis
Redis merupakan penyimpanan data in-memory yang terkenal sangat cepat.
Redis sering digunakan untuk:
- Cache
- Session
- Queue
- Temporary data
- Real-time application
37. β‘ Caching & Queue
Dalam aplikasi dengan banyak pengguna, server tidak selalu harus mengambil data langsung dari database.
Caching dapat membantu:
User
β
Application
β
Cache
β
Database
Jika data sudah tersedia di cache, aplikasi dapat merespons lebih cepat.
Sedangkan Queue digunakan untuk pekerjaan yang tidak harus dilakukan langsung.
Contoh:
User upload file
β
Response cepat
β
Queue
β
Proses file di background
38. π RabbitMQ
RabbitMQ adalah message broker.
Digunakan untuk mengatur komunikasi antar proses atau service.
Contohnya:
Website
β
RabbitMQ
β
Worker
β
Proses pekerjaan
39. π Apache Kafka
Kafka digunakan untuk pemrosesan dan distribusi event/data stream dalam skala besar.
Banyak digunakan pada:
- Big Data
- Event-driven architecture
- Monitoring
- Data pipeline
- Microservices
40. π§ Tools & DevOps
6
Pengembangan web modern tidak berhenti setelah programmer selesai membuat kode.
Aplikasi harus:
- Dikembangkan
- Diuji
- Dibuild
- Dideploy
- Dimonitor
- Dipelihara
Di sinilah DevOps berperan.
41. π³ Git
Git adalah sistem version control.
Git membantu developer mencatat perubahan kode.
Contoh:
Versi 1
β
Versi 2
β
Versi 3
β
Versi 4
Jika terjadi kesalahan, developer dapat melihat atau mengembalikan perubahan sebelumnya.
42. π GitHub
GitHub merupakan platform untuk menyimpan dan berkolaborasi pada repository Git.
GitHub dapat digunakan untuk:
- Source code
- Collaboration
- Pull Request
- Issue
- Code Review
- Documentation
- CI/CD
Mahasiswa sebaiknya mulai mengenal Git dan GitHub sejak belajar pemrograman.
43. π³ Docker
Docker memungkinkan aplikasi dikemas bersama dependensinya dalam sebuah container.
Contohnya:
Application
+
PHP
+
Laravel
+
Nginx
+
Database
+
Dependencies
dapat dijalankan menggunakan lingkungan container.
Keuntungannya adalah mengurangi masalah:
“Di komputer saya bisa jalan, tetapi di server tidak bisa.”
44. βοΈ Cloud
Aplikasi modern dapat dijalankan pada cloud computing.
Contohnya:
- AWS
- Google Cloud
- Microsoft Azure
- Cloudflare
- Firebase
Cloud memungkinkan aplikasi memperoleh sumber daya seperti:
- Server
- Storage
- Database
- Networking
- CDN
- Computing
45. π₯ Firebase
Firebase menyediakan berbagai layanan untuk pengembangan aplikasi, seperti:
- Authentication
- Database
- Hosting
- Storage
- Push notification
- Analytics
Firebase sangat populer untuk prototyping dan aplikasi web/mobile.
46. π Nginx
Nginx merupakan web server dan reverse proxy yang banyak digunakan dalam deployment aplikasi web.
Contoh arsitektur:
Internet
β
Nginx
β
Application Server
β
Database
Nginx juga dapat digunakan untuk:
- Load balancing
- Reverse proxy
- Static file serving
- SSL/TLS termination
47. π CI/CD
CI/CD merupakan praktik untuk mengotomatisasi proses:
Developer
β
Git Push
β
Build
β
Testing
β
Deployment
β
Production
Dengan CI/CD, proses deployment dapat menjadi lebih cepat dan konsisten.
48. π§ͺ Testing
6
Testing diperlukan untuk memastikan aplikasi bekerja sebagaimana mestinya.
Jenis testing antara lain:
- Unit Testing
- Integration Testing
- API Testing
- End-to-End Testing
- Performance Testing
- Security Testing
49. π Jest
Jest merupakan framework testing JavaScript yang banyak digunakan untuk melakukan automated testing.
Contohnya menguji apakah sebuah fungsi menghasilkan output yang benar.
50. π² Cypress
Cypress banyak digunakan untuk melakukan testing terhadap aplikasi web dari sisi browser.
Misalnya menguji:
Buka halaman login
β
Masukkan username
β
Masukkan password
β
Klik Login
β
Pastikan Dashboard muncul
51. π Playwright
Playwright merupakan framework automation/testing yang dapat digunakan untuk menguji aplikasi web pada berbagai browser.
Sangat berguna untuk End-to-End Testing.
52. π Selenium
Selenium merupakan salah satu teknologi automation testing yang sudah lama dan sangat populer.
Selenium memungkinkan pengujian aplikasi melalui browser secara otomatis.
53. π§ State Management
Pada aplikasi web modern, terutama SPA, aplikasi sering memiliki data yang harus digunakan oleh banyak komponen.
Contohnya:
User Login
Cart
Theme
Notification
Profile
State management digunakan untuk mengelola kondisi tersebut.
Teknologi yang populer antara lain:
- Redux
- Pinia
- Vuex
- Zustand
54. π΄ Redux
Redux merupakan library untuk mengelola state aplikasi.
Redux banyak digunakan bersama React, terutama pada aplikasi dengan state yang kompleks.
55. π’ Pinia
Pinia merupakan state management yang populer dalam ekosistem Vue modern.
Pinia membantu mengelola data global aplikasi secara lebih terstruktur.
56. π‘ Zustand
Zustand merupakan library state management untuk React yang relatif ringan dan sederhana.
57. π§° Tools Pendukung Web Developer
Beberapa tools penting yang sebaiknya dikenal mahasiswa antara lain:
π΅ Visual Studio Code
Code editor yang banyak digunakan untuk:
- HTML
- CSS
- JavaScript
- PHP
- Python
- Java
- TypeScript
π Postman
Digunakan untuk menguji API.
Contohnya:
GET /api/mahasiswa
POST /api/login
PUT /api/mahasiswa/1
DELETE /api/mahasiswa/1
π£ Figma
Digunakan untuk membuat desain UI/UX sebelum developer mengimplementasikan desain menjadi kode.
π΅ Swagger / OpenAPI
Digunakan untuk mendokumentasikan API.
58. π§Ή ESLint
ESLint digunakan untuk membantu menemukan masalah dan menjaga konsistensi kode JavaScript/TypeScript.
Misalnya:
Kesalahan syntax
Variabel tidak digunakan
Aturan coding tidak sesuai
59. β¨ Prettier
Prettier adalah code formatter.
Tujuannya membuat format kode konsisten.
Misalnya seluruh anggota tim memiliki format:
function login(username, password) {
// ...
}
yang sama sehingga kode lebih mudah dibaca.
60. π Security
Dalam pengembangan web modern, keamanan tidak boleh dianggap sebagai tambahan belaka.
Developer perlu memahami:
- Authentication
- Authorization
- Password hashing
- HTTPS
- SQL Injection
- XSS
- CSRF
- Session security
- Access control
- API security
Contoh sederhana:
User
β
Login
β
Authentication
β
Authorization
β
Dashboard
Authentication menjawab:
“Siapa Anda?”
Sedangkan Authorization menjawab:
“Apa yang boleh Anda lakukan?”
61. π Bagaimana Semua Teknologi Ini Bekerja Bersama?
Bagian paling penting dari gambar tersebut bukan hanya mengenal nama teknologinya, tetapi memahami hubungan antar-teknologi.
Contoh sistem akademik:
USER
β
βΌ
WEB BROWSER
β
βββββββββ΄ββββββββ
β FRONT-END β
β HTML CSS JS β
β React / Vue β
βββββββββ¬ββββββββ
β
βΌ
API
β
βΌ
BACK-END
Laravel / Node.js
/ Django / Java
β
βΌ
DATABASE
MySQL / PostgreSQL
β
βΌ
DATA
Misalnya menggunakan teknologi:
Front-End
React + TypeScript
β
API
REST API
β
Back-End
Laravel
β
Database
PostgreSQL
β
Deployment
Docker + Nginx
β
Cloud Server
Ini merupakan contoh technology stack.
62. ποΈ Contoh Technology Stack
Berikut beberapa contoh stack yang dapat digunakan dalam pembelajaran maupun proyek nyata.
Stack 1 β PHP
HTML
CSS
JavaScript
β
Bootstrap
β
PHP
β
Laravel
β
MySQL
β
Apache/Nginx
Cocok untuk:
- Sistem informasi
- Website kampus
- Sistem akademik
- Sistem perpustakaan
- Sistem administrasi
Stack 2 β JavaScript Full-Stack
React
β
Node.js
β
Express
β
MongoDB
Cocok untuk aplikasi web modern dan REST API.
Stack 3 β React + Laravel
React
β
REST API
β
Laravel
β
PostgreSQL
Kelebihannya adalah front-end dan back-end dapat dikembangkan secara terpisah.
Stack 4 β Python
HTML/CSS/JavaScript
β
React/Vue
β
FastAPI/Django
β
PostgreSQL
Menarik digunakan apabila aplikasi juga berhubungan dengan:
- AI
- Machine Learning
- Data Science
63. π¨βπ» Front-End Developer
Seorang Front-End Developer fokus pada bagian yang berinteraksi dengan pengguna.
Kemampuan yang sebaiknya dikuasai:
HTML
β
CSS
β
JavaScript
β
Responsive Design
β
Git
β
React / Vue / Angular
β
API
β
Testing
64. βοΈ Back-End Developer
Back-End Developer fokus pada logika dan pengolahan data.
Roadmap sederhananya:
Programming Language
β
Database
β
SQL
β
HTTP
β
REST API
β
Framework
β
Authentication
β
Security
β
Testing
β
Deployment
65. π Full-Stack Developer
Full-Stack Developer memahami keseluruhan alur aplikasi.
Contohnya:
HTML
CSS
JavaScript
β
React
β
REST API
β
Laravel
β
PostgreSQL
β
Docker
β
Cloud
Namun menjadi Full-Stack Developer bukan berarti harus menguasai semua teknologi yang ada.
Yang lebih penting adalah memahami konsep dan hubungan antar-komponen.
66. π Urutan Belajar Web Development untuk Mahasiswa
Untuk mahasiswa Informatika yang baru mulai, saya menyarankan jangan mempelajari seluruh teknologi dalam gambar sekaligus.
Urutan yang lebih mudah:
Tahap 1 β Dasar Web
HTML
β
CSS
β
JavaScript
Tahap 2 β Database
SQL
β
MySQL/PostgreSQL
Tahap 3 β Back-End
Pilih salah satu:
PHP β Laravel
atau:
JavaScript β Node.js
atau:
Python β Django/FastAPI
Tahap 4 β API
Pelajari:
HTTP
REST API
JSON
Authentication
Postman
Tahap 5 β Front-End Modern
Kemudian pelajari salah satu:
React
Vue
Angular
Tahap 6 β Tools
Git
GitHub
VS Code
Docker
Tahap 7 β Deployment
Linux
Nginx
Domain
SSL/HTTPS
Cloud/VPS
CI/CD
67. π Kesimpulan
Gambar Web Development Ecosystem sebenarnya menggambarkan bahwa pengembangan aplikasi web modern terdiri dari banyak komponen yang saling berhubungan.
Secara sederhana dapat dirangkum:
| Bagian | Teknologi Contoh | Fungsi |
|---|---|---|
| Front-End | HTML | Struktur |
| Front-End | CSS | Tampilan |
| Front-End | JavaScript | Interaksi |
| Front-End | React/Vue/Angular | Aplikasi UI |
| Back-End | PHP | Server-side programming |
| Back-End | Laravel | Framework PHP |
| Back-End | Node.js | Runtime JavaScript |
| Back-End | Python | Server-side programming |
| API | REST | Komunikasi aplikasi |
| API | GraphQL | API fleksibel |
| Database | MySQL | Penyimpanan data relasional |
| Database | PostgreSQL | Database relasional |
| Database | MongoDB | Database NoSQL |
| Cache | Redis | Penyimpanan cepat |
| Version Control | Git | Mengelola perubahan kode |
| Repository | GitHub | Kolaborasi kode |
| Container | Docker | Packaging aplikasi |
| Web Server | Nginx | Menyajikan/proxy aplikasi |
| Testing | Jest | Pengujian JavaScript |
| Testing | Cypress | Pengujian web |
| Testing | Playwright | Browser automation/testing |
| UI Design | Figma | Perancangan antarmuka |
| API Testing | Postman | Pengujian API |
| Cloud | AWS | Infrastruktur cloud |
| Cloud | Firebase | Backend/cloud services |
| Security | HTTPS | Komunikasi aman |
| DevOps | CI/CD | Otomatisasi build & deployment |
Inti yang perlu dipahami
Web Development bukan sekadar belajar membuat halaman HTML.
Web development merupakan ekosistem yang menggabungkan programming, database, jaringan, API, UI/UX, keamanan, testing, server, cloud, dan deployment.
Untuk mahasiswa Informatika, pemahaman terbaik bukan dengan menghafalkan sebanyak mungkin nama framework, tetapi memahami mengapa teknologi tersebut digunakan, masalah apa yang diselesaikan, dan bagaimana teknologi tersebut terhubung dengan komponen lainnya.
Dengan memahami konsep tersebut, mahasiswa akan lebih mudah berpindah dari satu teknologi ke teknologi lainβmisalnya dari PHP ke Laravel, Node.js, Python, React, Vue, atau teknologi baru yang muncul di masa depan.