Menganalisis kode produksi dengan AI

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Melampaui pembuatan kode

nanobanana: penuh: menganalisis kode produksi dengan AI

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Gambaran kursus

nanobanana: setengah: developer di meja dengan banyak monitor

 

Di kursus ini, Anda akan belajar untuk:

  • Melakukan analisis kode berbasis AI untuk kode produksi
  • Menerapkan pengujian dan keamanan berbantu AI
  • Menggunakan AI untuk desain perangkat lunak dan kolaborasi
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Skenario: Wayfarer Labs

nanobanana: setengah: kantor startup pariwisata dengan peta dunia

 

  • 💻 Anda adalah software developer di Wayfarer Labs
  • 🌎 Sebuah startup pariwisata yang membangun platform mobilitas
  • 🔎 Tugas Anda: cari alat analitik open-source
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Menemukan Atlas

 

atlas-ch1.png

 

Pertanyaan kunci sebelum mengadopsi:

  • Apakah mudah dirawat?
  • Apakah andal?
  • Apakah kokoh untuk jangka panjang?

 

🤖 AI dapat membantu mempercepat dan menyistemkan evaluasi kode!

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Memahami repositori baru

 

nanobanana: penuh: AI membimbing eksplorasi repositori baru

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Prompt terstruktur untuk orientasi codebase

prompt1-ch1.png

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Prompt terstruktur untuk orientasi codebase

 

atlas-command.png

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

 

🤖 Prompt analisis statis:

Repositori berikut berisi toolbox analitik Python bernama Atlas, untuk digunakan di lingkungan produksi.

Asumsikan saya memakai sistem mirip Unix dan bisa memasang alat open-source umum.

Saya ingin melakukan analisis statis pada codebase ini tanpa mengeksekusinya.

 

Tujuan Anda:

  • Rekomendasikan alat analisis statis yang sesuai untuk proyek ini
  • Jelaskan apa yang diukur tiap alat dan relevansinya
  • Berikan perintah konkret untuk menjalankan analisis
  • Jelaskan cara menafsirkan hasil kunci
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Analisis dinamis dipandu AI

nanobanana: penuh: profil analisis dinamis

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Menilai kualitas kode dengan AI

 

🤖 Prompt keterpeliharaan:

Analisis codebase untuk isu keterpeliharaan: temukan modul yang kewalahan, fungsi dengan tanggung jawab kabur, dan area di mana satu perubahan butuh suntingan di banyak berkas.

 

Isu keterpeliharaan:

  • Modul kewalahan
  • Tanggung jawab kabur
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Kompleksitas dan utang teknis

 

🤖 Prompt kompleksitas:

Identifikasi area dengan kompleksitas logis tinggi, fokus pada fungsi panjang, kondisional bertingkat, dan percabangan.

Indikator kompleksitas:

  • Fungsi panjang
  • Kondisional bertingkat
  • Percabangan tinggi

 

🤖 Prompt utang teknis:

Cari tanda utang teknis, seperti TODO, logika duplikat, atau pola lama.

Sinyal utang teknis:

  • TODO dan FIXME
  • Logika duplikat
  • Pola lama
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Kesimpulan evaluasi

 

Putusan untuk Atlas:

  • ✅ Codebase tertata baik
  • ✅ Layak diadopsi
  • 👀 Tangani isu kompleksitas dulu
  • 👀 Atasi utang teknis
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Refaktor dibantu AI

 

code-changes-ch1.png

 

AI juga dapat membantu kita:

  • Refactor dengan fokus pada perubahan berdampak tinggi
  • Mengusulkan patch
Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Pengingat penting

nanobanana: setengah: developer meninjau saran AI secara kritis

 

AI bukan pengganti penilaian engineering

  • Bisa keliru
  • Bisa luput konteks
  • Bisa berhalusinasi

✔ Jika digunakan tepat, AI mempercepat pemahaman dan membantu membuat keputusan kode yang lebih baik

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Ayo berlatih!

Pengembangan Kode Berbantuan AI Lanjutan untuk Developer

Preparing Video For Download...