Implementasi Helper Utilities — BAB 11
Tujuan Pembelajaran
Section titled “Tujuan Pembelajaran”Setelah mengikuti halaman ini, kamu diharapkan dapat:
- Membuat file
utility.tsdi folderhelpers/. - Membuat fungsi pencetakan garis terformat (
cetakGaris). - Membuat fungsi pemformatan angka persentase (
formatPersen).
Pendahuluan
Section titled “Pendahuluan”Saat mencetak laporan di terminal, kita sering menuliskan baris pemisah seperti console.log("=".repeat(50)) berulang-ulang di berbagai file berbeda. Ini melanggar prinsip DRY (Don’t Repeat Yourself). Kita harus membuat fungsi pembantu (helper) sekali di satu file terpisah agar bisa diimpor dari mana saja secara konsisten.
Penjelasan
Section titled “Penjelasan”Folder src/helpers/ khusus menyimpan modul fungsi pembantu (utility). File utility.ts akan menampung fungsi format visual:
cetakGaris(): Mencetak garis pembatas secara dinamis.formatPersen(): Memformat angka desimal persentase.buatKapital(): Mengubah teks menjadi huruf kapital.
Analogi Kehidupan Sehari-hari: Penggaris Cetakan Sablon Logo Sekolah
Section titled “Analogi Kehidupan Sehari-hari: Penggaris Cetakan Sablon Logo Sekolah”Mengimplementasikan modul helper seperti membeli penggaris cetakan sablon logo sekolah:
Penggaris Cetakan Sablon (Helper Utility):- Ingin membuat garis lurus? Tempel penggaris cetakan ──► gores spidol (cetakGaris)- Ingin menulis lambang persen rapi? Cetak lewat lubang sablon khusus (formatPersen)Setiap guru di kelas tidak perlu menggambar logo sekolah dari nol menggunakan pensil manual di papan tulis masing-masing. Semua guru meminjam cetakan sablon yang sama dari kantor guru agar hasilnya selalu seragam dan presisi.
Visual Illustration: Penggunaan Helper di Project
Section titled “Visual Illustration: Penggunaan Helper di Project” helpers/utility.ts (Ekspor Cetakan) │ ┌───────────────────┴───────────────────┐ ▼ ▼ siswa-service.ts main.ts(cetakGaris, formatPersen) (cetakGaris)Live Coding: Implementasi Utility Helper
Section titled “Live Coding: Implementasi Utility Helper”Langkah 1: Buat src/helpers/utility.ts
Section titled “Langkah 1: Buat src/helpers/utility.ts”// Fungsi mencetak garis pemisah terformatexport function cetakGaris(panjang: number = 55, simbol: string = "="): void { console.log(simbol.repeat(panjang));}
// Fungsi memformat persentase dengan 1 angka di belakang komaexport function formatPersen(nilai: number): string { return `${nilai.toFixed(1)}%`;}
// Fungsi merapikan ejaan teks capitalexport function buatKapital(teks: string): string { if (teks.length === 0) return ""; return teks.toUpperCase().trim();}Output
Section titled “Output”Fungsi-fungsi ini dapat dipanggil di bagian mana saja dari program untuk mencetak garis pembatas yang konsisten panjang dan simbolnya.
Penjelasan Baris per Baris
Section titled “Penjelasan Baris per Baris”simbol.repeat(panjang): Method string bawaan JavaScript untuk mengulang string sebanyakpanjangkarakter (BAB 5).nilai.toFixed(1): Membatasi agar angka desimal yang dicetak hanya memiliki satu angka di belakang koma.
Common Mistakes
Section titled “Common Mistakes”- Lupa melakukan export: Menuliskan fungsi helper tetapi lupa menulis kata kunci
exportdi depan nama fungsi, sehingga file luar tidak bisa mendeteksinya.
Ringkasan
Section titled “Ringkasan”- Fungsi helper diletakkan di dalam folder
src/helpers/. - Membantu menghindari penulisan kode berulang untuk pemformatan visual.
- Membantu keseragaman tampilan laporan terminal di seluruh bagian aplikasi.
Latihan
Section titled “Latihan”- Buat file
utility.tsdi foldersrc/helpers/komputermu. - Tambahkan fungsi baru
formatRupiah(nominal: number): stringyang mengembalikan format rupiah (contoh:Rp15.000) dan lakukan re-export jika dibutuhkan.