GitHub'un AI kodlama asistanı Copilot'un iki yıldır ortalıkta olması, üreticiyi kod kalitesi konusunda kapsamlı bir çalışma yapmaya sevk etti. Yapay zeka yardımıyla oluşturulan kodun daha fazla birim testinden geçtiğini ve daha az hataya sahip olduğunu gösterir. Gözden geçirenler ayrıca onu daha okunaklı ve güvenilir olarak değerlendirdiler.
Reklamcılık
GitHub, en az beş yıllık profesyonel deneyime sahip 202 Python geliştiricisine, bir web sunucusu için bir API uç noktası, özellikle de restoranlar için bir derecelendirme sistemi yazma görevi verdi. Bunlardan 104'ünün GitHub Copilot'u kullanmasına izin verildi, 98'inin yapay zeka asistanı kullanmasına ise hiç izin verilmedi. Test uzmanları, doğru işlevselliği kontrol etmek için tüm örnekleri on birim testinden geçirdiler ve sonuç açıkça AI yardımının lehineydi: Tüm programların yüzde 60,8'i on testin tamamını Copilot ile geçerken, yalnızca yüzde 39,2'si AI Yardımı olmadan geçti.
Yapay zeka yardımıyla yazılan programların on birim testinin tümünü geçme olasılığı önemli ölçüde daha yüksektir.
(Resim: GitHub)
Kodları on testin tümünü geçen 25 seçilmiş geliştiriciden, programların kör, anonimleştirilmiş incelemelerini yapmaları istendi ve her program toplam on kez kontrol edildi. Bu adımda, hatalar artık işlevsel kusurlar değil, tutarlılık veya okunabilirlik açısından niteliksel kusurlar anlamına geliyordu: tutarsız adlandırma, belirsiz tanımlayıcılar, çok uzun satırlar, fazla iç içe geçmiş döngüler, eksik yorumlar, tekrarlanan ifadeler (tekrarlamayın) kendiniz, KURU) veya kirli olanlar İşlev bölümü.
Yapay zeka burada da iyi iş çıkarıyor ancak o kadar net değil. İncelemeyi yapanlar ortalama olarak yapay zeka destekli programlarda 4,63 hata, yardım almayan programlarda ise 5,35 hata buldu. Hata başına kod satırı sayısı da AI yardımı olmadan daha fazlaydı: 18,2 satıra 16 satır. Bu, özellikle şişirilmiş kodlardan ve DRY ilkesinin ihlalinden korkan eski çalışmaları çürütüyor. Son zamanlarda yapılan diğer çalışmalar da yapay zekanın kaliteyi arttırdığı fikrini destekliyor.
Yapay zeka destekli programlar, yanlış kod satırı sayısı söz konusu olduğunda da daha iyi performans gösteriyor.
(Resim: GitHub)
Ek olarak, gözden geçirenlerin kodun ne kadar okunabilir, güvenilir, bakımı yapılabilir ve özlü olduğu konusunda daha yumuşak ifadeler sunması gerekir. Burada yardımcı pilot için yüzde 3 ile 5 arasında bir avantaj söz konusu, ancak çalışma değerlerin nasıl ortaya çıktığını tam olarak ortaya koymuyor.
Çalışma aynı zamanda yapay zekanın yardımıyla daha sık ve daha küçük olan deneklerin taahhütlerine de göz attı.
Sonuç olarak çalışma şunu öne sürüyor: “Bizim hipotezimiz, geliştiricilerin kodu işlevsel hale getirmek için daha az zamana ihtiyaç duymaları nedeniyle kaliteyi iyileştirmeye daha fazla odaklanmalarına olanak sağlamasıdır.”
(DSÖ)
Reklamcılık
GitHub, en az beş yıllık profesyonel deneyime sahip 202 Python geliştiricisine, bir web sunucusu için bir API uç noktası, özellikle de restoranlar için bir derecelendirme sistemi yazma görevi verdi. Bunlardan 104'ünün GitHub Copilot'u kullanmasına izin verildi, 98'inin yapay zeka asistanı kullanmasına ise hiç izin verilmedi. Test uzmanları, doğru işlevselliği kontrol etmek için tüm örnekleri on birim testinden geçirdiler ve sonuç açıkça AI yardımının lehineydi: Tüm programların yüzde 60,8'i on testin tamamını Copilot ile geçerken, yalnızca yüzde 39,2'si AI Yardımı olmadan geçti.
Yapay zeka yardımıyla yazılan programların on birim testinin tümünü geçme olasılığı önemli ölçüde daha yüksektir.
(Resim: GitHub)
Kodları on testin tümünü geçen 25 seçilmiş geliştiriciden, programların kör, anonimleştirilmiş incelemelerini yapmaları istendi ve her program toplam on kez kontrol edildi. Bu adımda, hatalar artık işlevsel kusurlar değil, tutarlılık veya okunabilirlik açısından niteliksel kusurlar anlamına geliyordu: tutarsız adlandırma, belirsiz tanımlayıcılar, çok uzun satırlar, fazla iç içe geçmiş döngüler, eksik yorumlar, tekrarlanan ifadeler (tekrarlamayın) kendiniz, KURU) veya kirli olanlar İşlev bölümü.
Yapay zeka burada da iyi iş çıkarıyor ancak o kadar net değil. İncelemeyi yapanlar ortalama olarak yapay zeka destekli programlarda 4,63 hata, yardım almayan programlarda ise 5,35 hata buldu. Hata başına kod satırı sayısı da AI yardımı olmadan daha fazlaydı: 18,2 satıra 16 satır. Bu, özellikle şişirilmiş kodlardan ve DRY ilkesinin ihlalinden korkan eski çalışmaları çürütüyor. Son zamanlarda yapılan diğer çalışmalar da yapay zekanın kaliteyi arttırdığı fikrini destekliyor.
Yapay zeka destekli programlar, yanlış kod satırı sayısı söz konusu olduğunda da daha iyi performans gösteriyor.
(Resim: GitHub)
Ek olarak, gözden geçirenlerin kodun ne kadar okunabilir, güvenilir, bakımı yapılabilir ve özlü olduğu konusunda daha yumuşak ifadeler sunması gerekir. Burada yardımcı pilot için yüzde 3 ile 5 arasında bir avantaj söz konusu, ancak çalışma değerlerin nasıl ortaya çıktığını tam olarak ortaya koymuyor.
Çalışma aynı zamanda yapay zekanın yardımıyla daha sık ve daha küçük olan deneklerin taahhütlerine de göz attı.
Sonuç olarak çalışma şunu öne sürüyor: “Bizim hipotezimiz, geliştiricilerin kodu işlevsel hale getirmek için daha az zamana ihtiyaç duymaları nedeniyle kaliteyi iyileştirmeye daha fazla odaklanmalarına olanak sağlamasıdır.”
(DSÖ)