JavaScript Next Gen

Praktikum JavaScript Next Gen

Mengenal fitur modern JavaScript (ES6+) dan penerapannya dalam pengembangan web

Tujuan Praktikum

Setelah menyelesaikan praktikum ini, Kalian diharapkan mampu:

  • Memahami fitur-fitur modern JavaScript (ES6+)
  • Menguasai penggunaan let dan const untuk deklarasi variabel
  • Mengimplementasikan arrow functions dalam kode JavaScript
  • Menerapkan destructuring, rest dan spread operators
  • Menggunakan template literals dengan efektif
  • Mengenal dan mengimplementasikan modules dan import/export
  • Menguasai metode array modern dan higher-order functions
  • Menggunakan Promise dan async/await untuk operasi asinkron

Pengenalan JavaScript Next Gen

JavaScript Next Gen

JavaScript Next Gen mengacu pada fitur-fitur modern dari JavaScript yang diperkenalkan dalam ECMAScript 2015 (ES6) dan versi-versi berikutnya. Fitur-fitur ini telah merevolusi cara pengembang menulis kode JavaScript, membuat kode menjadi lebih bersih, ekspresif, dan mudah dipelihara.

Fitur Utama yang Akan Dipelajari

FiturDeskripsi
Let dan ConstCara baru untuk mendeklarasikan variabel dengan scope yang lebih baik
Arrow FunctionsSintaks yang lebih ringkas untuk mendefinisikan fungsi
Template LiteralsCara baru untuk membuat string dengan interpolasi
DestructuringEkstraksi nilai dari array dan objek dengan cara yang efisien
Spread dan Rest OperatorsCara baru untuk bekerja dengan array dan objek
Default ParametersNilai default untuk parameter fungsi
ClassesSintaks berorientasi objek untuk JavaScript
ModulesSistem untuk mengimpor dan mengekspor kode
Promise dan Async/AwaitCara baru untuk menangani operasi asinkron

JavaScript Compatibility

Meskipun sebagian besar browser modern telah mendukung fitur ES6+, beberapa browser lama mungkin tidak mendukungnya. Dalam lingkungan produksi, sering digunakan transpiler seperti Babel untuk mengkonversi kode ES6+ menjadi ES5 yang memiliki kompatibilitas lebih luas.

Alat dan Bahan

Untuk mengikuti praktikum ini, Kalian memerlukan:

  • Browser Web: Chrome, Firefox, atau Edge (versi terbaru)
  • Code Editor: Visual Studio Code, Sublime Text, atau editor kode lainnya
  • Node.js: (Opsional) Untuk menjalankan JavaScript di luar browser

Rekomendasi

Kami menyarankan menggunakan Visual Studio Code dengan ekstensi-ekstensi berikut untuk pengalaman pengembangan yang lebih baik:

  • ESLint - Untuk membantu menemukan dan memperbaiki masalah dalam kode JavaScript
  • Prettier - Untuk memformat kode secara otomatis
  • JavaScript (ES6) code snippets - Untuk mempercepat penulisan kode ES6
  • LiveServer - Untuk melihat perubahan langsung di browser

Materi Praktikum

Format Pengumpulan

Direktori GitHub

  • Buat repository dengan format: pemrograman_web_itera_[NIM]
  • Contoh: pemrograman_web_itera_119140001

Struktur Folder

  • Buat folder per pertemuan dengan format: [NAMA]_[NIM]_pertemuan[X]
  • Contoh: johndoe_119140001_pertemuan4
  • Setiap folder berisi semua file praktikum dan tugas untuk pertemuan tersebut

Deadline Pengumpulan

  • Deadline: -
  • Keterlambatan pengumpulan akan dikenakan pengurangan nilai sebesar 10% per hari

Tugas Praktikum

Aplikasi Personal Dashboard

Buatlah aplikasi personal dashboard sederhana yang menampilkan informasi yang Kalian pilih sendiri (misalnya jadwal kuliah, daftar tugas, catatan, atau informasi cuaca/waktu).

Persyaratan

  • Interaktif: Pengguna harus dapat menambah, mengedit, atau menghapus informasi
  • Penyimpanan Lokal: Gunakan localStorage untuk menyimpan data pengguna
  • Fitur ES6+ Wajib:
    • Gunakan let dan const secara tepat untuk deklarasi variabel
    • Implementasikan minimal 3 arrow functions
    • Gunakan template literals untuk rendering dinamis
    • Gunakan Fungsi Asinkron (Pilih salah satu Async Await atau Promises)
    • Ada implementasi Classes

Kriteria Penilaian

AspekBobot
Fungsionalitas dan interaktivitas aplikasi30%
Implementasi fitur ES6+25%
Penggunaan localStorage dan pengelolaan data20%
Desain UI dan UX15%
Dokumentasi dan kerapian kode10%

Dokumentasi yang Diperlukan di Readme

  • Penjelasan singkat tentang fungsi aplikasi dan fitur-fiturnya
  • Screenshot aplikasi yang sudah jadi
  • Daftar fitur ES6+ yang diimplementasikan

Submit Tugas

Submit Tugas Praktikum 2