F4 · Modul 05
Objek, array, dan generic
63 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
interfacemenamai bentuk objek, dantscmenolak medan yang hilang, salah ketik, atau berlebih di literal objek baru. Yang dibandingkan adalah bentuk, bukan nama (pengetikan struktural).nama?: Tberarti medan boleh tidak ada;nama: T | nullberarti medan selalu ada dan boleh kosong dengan sengaja.readonlydangkal dan hanya ada saat kompilasi.- Generic (
<T>,T extends …,keyof T,T[K]) membuat satu fungsi bekerja untuk banyak tipe tanpa kehilangan informasi tipe; semua tipe itu dihapus saat program berjalan. - Tipe utilitas (
Pick,Omit,Partial,Record,Readonly) menurunkan tipe baru dari satu sumber; discriminated union +switch+nevermemaksa setiap bentuk data ditangani. - Anotasi pada
JSON.parseadalah janji, bukan pemeriksaan: kontrakjenis.tshanya sejujur data yang benar-benar datang.
Sebelum mulai
±4 jam.
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
Hasil belajar: menulis bentuk objek dengan interface dan type lalu memilih di antara keduanya dengan alasan; membedakan medan opsional (?) dari medan yang boleh null; memakai readonly pada medan dan array dan menjelaskan batasnya; memakai tuple, Record, dan index signature; menjelaskan pengetikan struktural dan pemeriksaan medan berlebih; menulis fungsi dan tipe generic dengan batasan (extends), keyof, dan tipe akses berindeks T[K]; memakai tipe utilitas (Partial, Pick, Omit, Record, Readonly, ReturnType); memodelkan data dengan discriminated union; menjelaskan kenapa generic lenyap saat program berjalan dan bagaimana tsc membandingkan tipe; menulis tipe kanonik jenis.ts dan fungsi ringkasProduk untuk proyek Laporan Warung.
Proyek: Laporan Warung langkah 05: tipe kanonik jenis.ts dan ringkasProduk (kontrak proyek §2–§3).
Istilah di modul ini (46)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 8 berkas latihan + tes
- 1 berkas data
Lihat isi zip
- BACA-DULU.txt
- jenis.ts
- latihan_f4_05_1.ts
- latihan_f4_05_2.ts
- latihan_f4_05_3.ts
- latihan_f4_05_4.ts
- latihan_f4_05_5.ts
- latihan_f4_05_6.ts
- latihan_f4_05_7.ts
- latihan_f4_05_8.ts
- laporan.json