Pengembangan Perangkat Lunak dengan Claude Code
Dani Zysman
AI Curriculum Manager @ DataCamp

$ curl -fsSL https://claude.ai/install.sh | bash
Info selengkapnya: https://code.claude.com/docs/en/overview
$ cd /path/to/your/project
$ claude
Perintah berguna:
/clear untuk menghapus riwayat percakapan/exit atau Ctrl + C untuk keluar dari sesi/help menampilkan perintah yang tersediadef process_data(records, threshold=0.5):
result = []
for r in records:
if r.get('value') and r['value'] > threshold:
x = r['value'] * 1.1 if r.get('premium') else r['value']
result.append({'id': r['id'], 'adjusted': x, 'flag': x > 1})
return sorted(result, key=lambda d: d['adjusted'], reverse=True)[:10]
> What does process_data() do?
process_data(): Filter, Sesuaikan & Urutkan
Filter: Simpan record dengan value > threshold (bawaan: 0,5)
Adjust: Tambah 10% jika premium=True
Transform: Keluarkan id, nilai adjusted, dan flag (jika adjusted > 1)
Sort: Kembalikan 10 teratas berdasarkan adjusted menurun
> Add a docstring to process_data()
"""Menyaring record di atas threshold, menambah 10% untuk premium, dan
mengembalikan 10 teratas berdasarkan nilai adjusted."""
def add_item(item, item_list=[]):
item_list.append(item)
return item_list
Dapatkah Anda menemukan masalahnya?
> Find the bug in add_item() and fix it
Bug ditemukan dan diperbaiki: Masalahnya adalah argumen bawaan yang dapat diubah (mutable). Menggunakan item_list=[] membuat semua pemanggilan add_item() tanpa argumen list berbagi objek list bawaan yang sama, sehingga item menumpuk antar pemanggilan.def add_item(item, item_list=None): if item_list is None: item_list = [] item_list.append(item) return item_list
| Masalah | Solusi |
|---|---|
| "Context window exceeded" | Gunakan /clear untuk reset |
| Batas laju | Tunggu lalu coba lagi |
| Hasil kurang baik | Fokuskan prompt pada satu tugas |

Pengembangan Perangkat Lunak dengan Claude Code