Setup Awal Project — BAB 11
Tujuan Pembelajaran
Section titled “Tujuan Pembelajaran”Setelah mengikuti halaman ini, kamu diharapkan dapat:
- Membuat folder-folder terstruktur (
models,interfaces, dll) di dalam direktorisrc/menggunakan terminal. - Menginisialisasi file konfigurasi
tsconfig.jsonmenggunakan perintahtsc --init. - Mengonfigurasi
tsconfig.jsonagar mendukung module modern.
Pendahuluan
Section titled “Pendahuluan”Setelah memiliki akte project (package.json), langkah berikutnya adalah menyiapkan aturan main compiler TypeScript (tsconfig.json) dan membuat seluruh ruangan sekat folder kosong di dalam direktori src/.
Penjelasan
Section titled “Penjelasan”TypeScript membutuhkan file konfigurasi tsconfig.json untuk mengetahui bagaimana cara mengubah file .ts kita menjadi .js yang dipahami komputer. Kita harus menyalakan opsi module modern NodeNext agar sistem import/export antarfolder berjalan lancar tanpa bentrok.
Analogi Kehidupan Sehari-hari: Memasang Rak di Dinding Kamar
Section titled “Analogi Kehidupan Sehari-hari: Memasang Rak di Dinding Kamar”Membuat folder-folder kosong di dalam src/ seperti memasang rak-rak kayu kosong bersekat di dinding kamarmu:
- Sekat 1: Khusus Buku Tulis (models)- Sekat 2: Khusus Alat Tulis (services)- Sekat 3: Khusus Arsip Dokumen (repositories)Laci sekat tersebut masih kosong belum ada barangnya, tetapi posisinya sudah terpasang rapi di dinding. tsconfig.json bertindak seperti buku aturan kerapian kamar: “Semua barang harus ditaruh di dalam rak src, dilarang menaruh barang berserakan di atas lantai.”
Visual Illustration: Desain Struktur File Awal
Section titled “Visual Illustration: Desain Struktur File Awal”siakad-final/├── src/│ ├── helpers/│ ├── interfaces/│ ├── models/│ ├── repositories/│ ├── services/│ └── main.ts├── package.json└── tsconfig.jsonLive Coding: Perintah Setup Folder & Compiler
Section titled “Live Coding: Perintah Setup Folder & Compiler”Jalankan perintah berikut di terminal untuk membuat file tsconfig.json dan folder-folder kosong:
# Inisialisasi konfigurasi compilertsc --init
# Membuat folder-folder kosong di dalam src (Windows PowerShell)New-Item -ItemType Directory -Force -Path "src/models", "src/interfaces", "src/repositories", "src/services", "src/helpers"New-Item -ItemType File -Path "src/main.ts"Output
Section titled “Output”Sebuah file tsconfig.json akan muncul di VS Code. Buka file tersebut dan perbarui konfigurasinya agar menjadi seperti ini:
{ "compilerOptions": { "target": "ES2022", "module": "NodeNext", "moduleResolution": "NodeNext", "strict": true, "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "outDir": "./dist" }, "include": ["src/**/*"]}Penjelasan Baris per Baris
Section titled “Penjelasan Baris per Baris”"target": "ES2022": Mengubah file TS kita menjadi JavaScript standar tahun 2022."moduleResolution": "NodeNext": Cara compiler mendeteksi module modern."outDir": "./dist": Menentukan folderdist/sebagai tempat penyimpanan file JavaScript hasil compile akhir.
Common Mistakes
Section titled “Common Mistakes”- Salah Folder include: Lupa menuliskan
"include": ["src/**/*"]. Akibatnya, compiler akan ikut memeriksa foldernode_modulesyang berisi jutaan baris kode library luar, sehingga VS Code akan menjadi sangat lambat dan memicu banyak error palsu.
Ringkasan
Section titled “Ringkasan”tsconfig.jsondikonfigurasi menggunakan mode targetES2022dan moduleNodeNext.- Semua folder kode program modular diletakkan di dalam direktori utama
src/. - Berkas entry point
main.tsdibuat sebagai berkas kosong pertama di dalamsrc/.
Latihan
Section titled “Latihan”- Jalankan perintah
tsc --initdi folder projectmu. - Edit file
tsconfig.jsonsesuai dengan konfigurasi di atas. - Buat folder
src/modelsdansrc/interfacesdi komputermu.