Tugas Akhir
Penjelasan
Sekarang saatnya menggabungkan semua yang sudah dipelajari — dari Module sampai testing — jadi satu REST API utuh. Kamu akan membuat API "Catatan" sederhana yang menggabungkan Module, Controller, Service, DTO dengan validasi, dan operasi CRUD lengkap.
Tugas
Buat CreateCatatanDto dengan judul (@IsString(), @MinLength(3)) dan isi (@IsString(), @IsNotEmpty()). Buat CatatanService dengan array catatan di memori, method findAll(), create(dto), update(id, dto), dan remove(id). Buat CatatanController dengan @Controller('catatan') yang menyediakan 4 endpoint CRUD lewat @Get(), @Post(), @Put(':id'), @Delete(':id'), semuanya delegasikan ke CatatanService. Buat CatatanModule yang mendaftarkan Controller dan Service itu, lalu import ke AppModule.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Kalau bingung mulai dari mana, kerjakan Service dulu (findAll dan create), cek lewat unit test sederhana atau langsung lewat Controller, baru lanjut ke update dan remove. Program besar selalu lebih mudah kalau dipecah jadi langkah-langkah kecil.