Programlama ve Yazılım Geliştirme

JetBrains, yapay zekâ aracılarına Rider’ın yeniden yapılandırma motorunu kullanma imkânı sunuyor

JetBrains, C# kodunu yeniden yapılandırmaya yönelik 15 görevde yapay zekâ aracılarını test etti ve Rider’ın uzmanlaşmış becerilerine erişim sağlanmasının medyan görev süresini 157,9 saniyeden 26,6 saniyeye düşürdüğünü; araç çağrılarının ve maliyetin de azaldığını buldu. Bu özellik, yerleşik refactoring-code becerisi aracılığıyla Rider 2026.2.1’de otomatik olarak kullanılabilir.

2026-08-19
5 dk okuma
15 görüntülenme
فريق تحرير certi.news
JetBrains, yapay zekâ aracılarına Rider’ın yeniden yapılandırma motorunu kullanma imkânı sunuyor

JetBrains tarafından gerçekleştirilen bir deney, yapay zekâ aracılarına Rider’ın yeniden yapılandırma motoruna doğrudan erişim vermenin C# görevlerinin gerçekleştirilme biçimini kökten değiştirebileceğini gösterdi. Bunun yerine aracıyı önce metinleri değiştirmeye, ardından değişikliklerin neyi bozduğunu keşfetmek için derleyiciyi çalıştırmaya yönlendirmek gerekir. 15 görevi kapsayan testte medyan görev süresi 157,9 saniyeden 26,6 saniyeye düştü; bu, %83 oranında bir iyileşmeye karşılık geliyor. Ayrıca araç çağrılarının sayısı görev başına 17’den 6,2’ye geriledi.

Bu imkân, refactoring-code adlı yerleşik bir becerinin parçası olarak sunuluyor ve Rider’da 2026.2.1 sürümünden itibaren kullanılabiliyor. JetBrains’e göre kullanıcının bunu manuel olarak etkinleştirmesi gerekmiyor; C# kodunda yeniden yapılandırma yapması istendiğinde aracı bu beceriyi otomatik olarak çağırıyor. Motor, proje içindeki semboller ve başvurular arasındaki ilişkileri anlamak için ReSharper teknolojilerinden ve Rider’ın analiz altyapısından yararlanıyor.

Değiştirip ardından derleme yaklaşımındaki sorun

Beceri kullanıma sunulmadan önce JetBrains, aynı görevleri gerçekleştiren gelişmiş bir modeli gözlemledi. Farklı araçlara yönelik 2.513 çağrı sırasında aracı, bunun için özel bir aracı olmadığı için doğrudan yapısal bir yeniden yapılandırma işlemi gerçekleştirmedi. Bunun yerine metin girmek için etkileşimli komutları 468 kez kullandı, git’i 422 kez ve sed’i 392 kez çağırdı; ayrıca dotnet build’i 163 kez çalıştırdı.

Bu, aracının yeniden yapılandırma işlemlerinden kaçındığı anlamına gelmiyor. Aracı, arama ve metin değişiklikleri yoluyla bunları yaklaşık olarak gerçekleştirmeye, ardından ne olduğunu değerlendirmek için derleme sonuçlarını kullanmaya çalışıyordu. JetBrains, örneğin bir sembolü yeniden adlandırmanın belirli bir tanıma bağlı başvurular, çok biçimli işlev çağrıları, kısmi sınıflar, açık arabirim uygulamaları ve dokümantasyon başvuruları arasında ayrım yapmayı gerektirdiğini belirtiyor. Bu ilişkiler basit bir düzenli ifadeyle güvenilir biçimde garanti edilemez.

Buna karşılık Rider motoru, her tanımlayıcının bağlı olduğu tanımı, her çağrının çağırdığı sürümü ve çözüm genelindeki başvuru konumlarını belirleyen çözümlenmiş bir sözdizimi ağacı üzerinde çalışır. Böylece görevin yapısal kısmı motora aktarılır; aracı bu ilişkileri değiştirme, derleme ve hataları okuma döngülerini yineleyerek kademeli olarak yeniden keşfetmek zorunda kalmaz.

JetBrains neyi ölçtü?

Değerlendirme, sonuçları açıkça doğrulanabilir olan sekiz işleme odaklandı:

  • Bir sembolü ve ona yönelik tüm başvuruları yeniden adlandırma.
  • Bir dizi ifadeyi yeni bir işleve çıkarma.
  • Mevcut bir türden arabirim çıkarma.
  • Bir temel sınıf çıkarma ve üyeleri bu sınıfa taşıma.
  • Bir programlama arabiriminin imzasını değiştirme ve çağrı konumlarını güncelleme.
  • Bir türü başka bir ad alanına taşıma ve using ifadelerini düzeltme.
  • Ad alanlarını klasör yapısına uyacak şekilde yeniden düzenleme.
  • Başka hiçbir bölüm ona bağlı değilken bir sembolü güvenli biçimde silme.

Görevler, doğrudan durumların yanı sıra daha fazla çağrı konumu veya iç içe bağımlılıklar içeren daha karmaşık durumları da kapsıyordu. Her iki taraf da aynı model olan gpt-5.5’i Codex CLI üzerinden, her görev için yaklaşık on kez çalıştırdı. Tek fark, refactoring-code becerisinin kullanılabilir olup olmamasıydı. Karşılaştırmalar kaydedilen izlere ve eşleştirilmiş permutation testine dayandırıldı.

Pratik sonuçlar ve maliyet

Beceri etkinleştirildiğinde dotnet build işlemlerinin sayısı 163’ten yalnızca üçe, değerlendirmedeki toplam araç çağrılarının sayısı ise 2.513’ten 926’ya düştü. Metin değişiklikleri sona ermedi; sed en çok kullanılan araç olmaya devam etti, ancak rollerin dağılımı değişti: normal değişiklikler metin düzenleme araçlarında kalırken, etkileri aracının doğrudan göremediği bölümlere uzanabilen yapısal değişiklikleri motor üstlendi.

95. yüzdelik dilimdeki süre 346,4 saniyeden 56,9 saniyeye düştü. Bu iyileşme özellikle değiştirme, ardından derleme ve sonrasında hataları ele alma döngüsünde takılı kalan durumların ortadan kalkmasıyla ilişkili. Görev başına medyan maliyet 0,33 dolardan 0,12 dolara, başarılı görev başına maliyet ise 0,52 dolardan 0,19 dolara geriledi. Ayrıca görev başına girilen belirteç sayısı 436.745’ten 208.524’e, önbellek okumaları 2.973.158’den 1.257.600’e ve çıktılar 32.532’den 15.538’e düştü.

Bu, kullanıcılar için ne anlama geliyor?

Deney, aracıların sunduğu araçların yararının yalnızca modelin kod üretme kapasitesine değil, aynı zamanda çağırabildiği araçların türüne de bağlı olduğunu gösteriyor. 15 görevin sekizinde beceriyle donatılmış taraf daha hızlı ve daha düşük maliyetli oldu ve daha fazla araç kullanmadı; her iki taraf da testleri başarıyla tamamladı. Temel modda gerçekleştirilmesi iki dakikadan uzun süren altı görevde %82 ile %94 arasında iyileşme görüldü.

Ancak sonuçlar her durum için genel bir kazanım anlamına gelmiyor. İki görevde her iki taraf da başarısız oldu; beceriyle donatılmış modun başaramadığı bir görevi temel mod başarıyla tamamladı. Ayrıca dört görev başlangıçta zaten o kadar hızlıydı ki Rider motorunu çağırmak ekonomik açıdan faydalı olmadı. Bu nedenle rakamlar, belirli bir yeniden yapılandırma işlemleri kümesi içinde becerinin yararına dair kanıt sunuyor; her görevin aynı ölçüde iyileşeceğini garanti etmiyor.

Aradaki farkı göstermek için JetBrains, ReportExporter türünden bir temel sınıf çıkarma görevini sundu. Beceri olmadan işlem 336,7 saniye ve 24 çağrı sürdü; maliyeti 1,15 dolardı ve kalıtım, oluşturucular ve erişim izinleriyle ilgili hataları gidermek için dosya değiştirme ve derleme çalıştırma döngülerini içeriyordu. Beceriyle ise işlem 19,8 saniye ve üç çağrı sürdü; maliyet 0,09 dolardı. Aracı extract_base_class işlemini gerçekleştirdi, ExporterBase’i oluşturdu, dört dosyayı güncelledi ve 11 başvuruyu yeniden yazdı.

Bu işlev, Rider’ı 2026.2.1 sürümüne güncelleyip bir C# çözümü açarak ve aracıdan bir öğeyi yeniden adlandırmasını, bir arabirim çıkarmasını veya bir türü taşımasını isteyerek denenebilir. Makale, “bu sınıfı temizle” gibi genel bir ifade yerine OrderProcessor’dan arabirim çıkarma isteği gibi işlemin adını belirten taleplerin kullanılmasını öneriyor.

Haber kaynağı
JetBrains Blog
Özgün kaynağı aç ↗
ف
Yazar

فريق تحرير certi.news

Aynı kategoride

Bunlar da ilginizi çekebilir

Tüm haberleri gör