Menggunakan Skill

Pengembangan Perangkat Lunak dengan Claude Code

Dani Zysman

AI Curriculum Manager @ DataCamp

Apa Itu Refactoring?

Excalidraw: Konsep refactoring - struktur kode berubah tetapi perilaku tetap sama

Pengembangan Perangkat Lunak dengan Claude Code

Unit Test Memungkinkan Refactoring Aman

Alur kerja refactoring aman: jalankan tes, skill refactor, tinjau, jalankan tes lagi, commit jika hijau

Pengembangan Perangkat Lunak dengan Claude Code

Proyek Sejauh Ini

music-analytics-api/
  app.py
  routes.py
  test_routes.py     # <- Dihasilkan oleh skill unit-tests
  models.py
  CLAUDE.md
  .claude/
    agents/
    skills/
      unit-tests/    # Dari video sebelumnya
        SKILL.md
      refactor/      # BARU: refactoring aman
        SKILL.md
Pengembangan Perangkat Lunak dengan Claude Code

Dua Cara Memanggil

Dua cara memanggil skill: manual dengan perintah garis miring, otomatis saat cocok oleh Claude

Pengembangan Perangkat Lunak dengan Claude Code

Refactoring Kode dengan Skill

>/unit-tests @routes.py
Unit test ditambahkan:

Pola Pengujian Utama:
- Menggunakan Flask test client untuk pengujian HTTP realistis
- Mock dependensi eksternal (fungsi music_store, analytics)
- Menguji happy path dan edge case
- Meliputi validasi format dan struktur respons
- Semua tes terisolasi dengan fixture yang tepat
Berkas tes siap digunakan dan terintegrasi dengan pytest proyek.
Pengembangan Perangkat Lunak dengan Claude Code

Refactoring Kode dengan Skill

> /refactor @routes.py
Refactoring Selesai
Perubahan yang dibuat:
- Mengekstrak _prepare_albums_for_stats(). Menghilangkan 
  list comprehension 9 baris, membuat tujuan lebih jelas
- Mengekstrak _prepare_albums_for_average(). Menghapus logika 
  konversi album-ke-dict yang duplikat
Manfaat:
- Lebih sedikit duplikasi
- Handler rute lebih bersih
- Persiapan data terpusat

Semua 21 tes lolos: perilaku sepenuhnya terjaga
Pengembangan Perangkat Lunak dengan Claude Code

Skill Menjamin Konsistensi

Tanpa skill: tidak konsisten dan rawan kesalahan. Dengan skill: konsisten dan andal

Pengembangan Perangkat Lunak dengan Claude Code

Ayo berlatih!

Pengembangan Perangkat Lunak dengan Claude Code

Preparing Video For Download...