Artsution® — 360° tasarım & teknoloji stüdyosu

Yapay Zeka9 dk okuma

Yapay Zekayla Yazılım Geliştirme: Hız mı, Teknik Borç mu?

Kod asistanları yazmayı hızlandırır ama güvenlik, lisans, test ve bakım sorumluluğunu ortadan kaldırmaz. Çalışan kod ile üretime hazır kod arasındaki farkı somut başlıklarla anlatıyoruz.
Taş kaidedeki terazinin bir kefesine akan ince krem ve turkuaz şeritlerin karşısında, mercan renkli kırık blok yığını.

Bu konuda desteğe mi ihtiyacınız var?

Marka, web ve yazılım işlerinizi tek ekipte planlayalım.

Proje Başlat

Yapay zeka ile kod yazma, doğru kullanıldığında tekrarlı işleri hızlandırır; ama bir kodun "çalışması" onun güvenli, test edilmiş ve bakımı yapılabilir olduğu anlamına gelmez. Hız kazancı çoğu zaman yazma aşamasındadır. İnceleme, test ve güvenlik kontrolü atlanırsa bu kazanç ileride teknik borç olarak geri döner. Bu yazıda kod asistanlarının gerçek faydasını, güvenlik ve lisans risklerini ve "üretime hazır" kodun neyi gerektirdiğini anlatıyoruz.

Kısaca

  • Kod asistanları taslak, tekrarlı kod ve açıklama işlerinde zaman kazandırır. Kazancın büyüklüğü göreve ve ekibe göre değişir.
  • Bağımsız araştırmalar, yapay zekanın ürettiği kodda güvenlik açıklarının sık görüldüğünü gösteriyor.
  • Modeller var olmayan paket adları önerebilir. Bu, tedarik zinciri saldırılarına kapı açar.
  • Lisans ve kaynak belirsizliği, kod incelemesinde ayrıca kontrol edilmesi gereken bir başlıktır.
  • "Çalışıyor" ile "üretime hazır" arasındaki farkı test, inceleme, güvenlik taraması ve dokümantasyon kapatır.

Yapay zeka kod asistanları ne yapar?

Bugün yazılım ekiplerinin kullandığı araçlar kabaca üç biçimde çalışıyor:

  • Satır içi öneri (autocomplete): Siz yazarken bir sonraki satırları ya da fonksiyonun devamını önerir.
  • Sohbet: Kod hakkında soru sorar, hata mesajını yapıştırır, bir fonksiyonun açıklamasını ya da yeniden yazılmış halini istersiniz.
  • Ajan modu: Araç, verdiğiniz göreve göre birden fazla dosyayı okuyup değiştirebilir, komut çalıştırabilir, testleri koşturabilir.

GitHub Copilot, Cursor, Claude Code, OpenAI Codex ve Gemini Code Assist bu alandaki yaygın araçlardan bazıları. Yazıda belirli bir aracı değil, bu araçların ortak özelliklerini ele alıyoruz.

Bu yaklaşımın popüler bir adı da var: "vibe coding". Collins Sözlüğü bu ifadeyi 2025'in kelimesi seçti ve "doğal dille verilen komutlarla yapay zekanın kod yazmaya yardım etmesi" olarak tanımladı. İfadeyi yaygınlaştıran Andrej Karpathy, bunu "kodun var olduğunu unutarak" uygulama geliştirmek diye tarif etmişti. Hızlı bir prototip için bu yaklaşım işe yarayabilir. Ama müşterinin verisini işleyen bir sistem için kodun var olduğunu unutmak, sorumluluğu unutmak demektir.

Gerçekten hızlandırıyor mu?

Cevap: Duruma göre. Bu konuda dikkatli yorumlanması gereken birkaç bağımsız çalışma var:

  • METR (Temmuz 2025): 16 deneyimli açık kaynak geliştiricisiyle yapılan randomize kontrollü çalışmada, katılımcılar yapay zeka araçlarına izin verilen görevleri ortalama %19 daha uzun sürede tamamladı. Daha ilginci, geliştiriciler işten sonra bile yapay zekanın kendilerini yaklaşık %20 hızlandırdığını düşünüyordu. Araştırmacılar örneklemin küçük olduğunu ve sonuçların yalnızca o koşullar için geçerli olduğunu vurguluyor.
  • METR (Şubat 2026 güncellemesi): 2025 sonu araçlarıyla yapılan yeni ölçümde tahminler bu kez hızlanma yönünde çıktı, ancak güven aralıkları geniş. METR, verilerin hızlanmanın büyüklüğü için "çok zayıf kanıt" olduğunu ve katılımcı seçimindeki sorunlar nedeniyle tahminin güvenilir olmadığını belirtiyor.
  • DORA 2025 raporu: Yaklaşık 5.000 teknoloji profesyoneliyle yapılan araştırmaya göre yapay zekanın yazılım geliştirmedeki ana rolü bir güçlendirici olmak: İyi işleyen ekiplerin güçlü yanlarını da, zorlanan ekiplerin sorunlarını da büyütüyor.

Bu bulgulardan çıkan pratik sonuç şu: Hızlanma hissi ile ölçülen hız aynı şey değil. Ekibiniz sağlam bir inceleme ve test düzenine sahipse yapay zeka bu düzeni hızlandırır. Bu düzen yoksa sorunları da hızlandırır.

Güvenlik: Yapay zekanın ürettiği kod ne kadar güvenli?

Bilinen açık türleri

Veracode'un Temmuz 2025'te yayımladığı araştırmada, 100'den fazla dil modeline güvenlik açığı potansiyeli olan 80 kodlama görevi verildi. Sonuç: Modeller görevlerin %45'inde OWASP Top 10 kategorisinde güvenlik açığı içeren kod üretti. Siteler arası betik çalıştırma (XSS) açığına karşı koruma görevlerinde başarısızlık oranı %86 oldu. Rapora göre daha büyük modeller güvenlik açısından küçüklerden belirgin biçimde daha iyi değildi.

Bu, "yapay zekanın yazdığı kodun yarısı güvensiz" demek değil. Kontrollü bir görev setinde ölçülmüş bir oran. Ama şunu açıkça gösteriyor: Kod derleniyor ve çalışıyor olabilir, yine de güvenlik açığı taşıyabilir.

Var olmayan paketler ("slopsquatting")

USENIX Security 2025'te yayımlanan bir çalışma, 16 kod üreten modelin ürettiği 576.000 kod örneğini inceledi. Önerilen paketlerin bir kısmı aslında yoktu: Bu oran ticari modellerde ortalama en az %5,2, açık kaynak modellerde %21,7 olarak ölçüldü. Toplamda 205.474 benzersiz uydurma paket adı tespit edildi.

Neden önemli? Saldırganlar, modellerin sık uydurduğu paket adlarını npm ya da PyPI gibi kayıt sistemlerine zararlı kodla kaydedebilir. Bu saldırıya "slopsquatting" deniyor. Geliştirici, önerilen install komutunu kontrol etmeden çalıştırırsa zararlı kod projeye girer. Özellikle komut çalıştırabilen ajan modunda bu risk büyür.

Gizli bilgiler ve kişisel veri

Bir kod asistanına yapıştırdığınız şey de bir veri paylaşımıdır. API anahtarları, veritabanı şifreleri, müşteri verisi içeren örnek dosyalar bu araçlara girmemelidir. Kişisel veri işleyen yazılımlarda dikkat edilecek ilkeleri KVKK uyumlu yazılım geliştirme yazımızda anlatmıştık.

Mercan giriş tepsisinden turkuaz çıkış tepsisine uzanan hatta büyüteç, ölçüm araçları, bileşenler ve kalkan içeren dört kontrol kapısı.
Önerilen kod, ana dala girmeden önce aynı kontrol kapılarından geçmeli.

Lisans: Bu kod kimin?

İki ayrı soru var:

1. Önerilen kod başka bir projeden mi geliyor? Modeller, eğitildikleri açık kaynak koda çok benzeyen parçalar önerebilir. Bu kodun lisansı (ör. GPL gibi "copyleft" lisanslar) sizin projenize yükümlülük getirebilir. Bazı araçlar bunun için önlem sunuyor. Örneğin GitHub Copilot'un "kod referansı" (code referencing) özelliği, önerileri GitHub'daki herkese açık kodla karşılaştırıyor. Organizasyon ayarına göre eşleşen öneriyi engelliyor ya da kaynak ve lisans bilgisiyle gösteriyor. GitHub'a göre bu tür eşleşmeler önerilerin yüzde birinden azında görülüyor ve özel depolar ya da GitHub dışındaki kod bu karşılaştırmaya dahil değil. Kısacası bu filtre yardımcı olur ama lisans kontrolünün yerini tutmaz.

2. Üretilen kodun hakları kime ait? Türkiye'de 5846 sayılı Fikir ve Sanat Eserleri Kanunu (FSEK), bilgisayar programlarını ilim ve edebiyat eserleri arasında sayar ve eser sahibini "eseri meydana getiren" olarak tanımlar. Kanunda yapay zeka çıktılarına özel bir hüküm yoktur. Bu yüzden yapay zeka desteğiyle yazılmış kodun hak durumu tartışmalıdır. Pratik öneri: Yazılım yaptırıyorsanız, sözleşmede kaynak kodun sahipliğini, kullanılan üçüncü taraf bileşenleri ve lisanslarını açıkça yazdırın.

Test ve kod incelemesi neden vazgeçilmez?

Yapay zeka kodu hızlı üretir. Bu da incelenmesi gereken kod miktarının artması demektir. İnceleme ve test bu hızın gerisinde kalırsa ekip, kimsenin tam anlamadığı bir kod tabanıyla baş başa kalır.

İyi bir düzen genelde şunları içerir:

  • Testler önce ya da birlikte: Yapay zekadan kod isterken testleri de isteyin, ama testlerin gerçekten doğru şeyi ölçtüğünü kontrol edin. Model, kendi yazdığı hatalı kodu "geçiren" bir test de yazabilir.
  • İnsan incelemesi: Her değişiklik, onu anlayan biri tarafından okunmalı. "Yapay zeka yazdı" bir inceleme gerekçesi değildir.
  • Otomatik kontroller: Statik analiz (SAST), bağımlılık taraması, gizli bilgi (secret) taraması ve tip denetimi, ana dala girmeden önce çalışmalı.
  • Küçük değişiklikler: Bir seferde yüzlerce satırlık değişiklik yerine küçük, incelenebilir parçalar.

"Çalışıyor" ile "üretime hazır" arasındaki fark

Konu"Çalışıyor""Üretime hazır"
SenaryolarBeklenen girdide doğru sonuçHatalı, eksik, kötü niyetli girdide de doğru davranış
GüvenlikGözle bakıldığında sorun yokGirdi doğrulama, yetkilendirme, güvenlik taraması yapılmış
BağımlılıklarPaket kuruldu, kod derlendiPaketlerin varlığı, güncelliği ve lisansı kontrol edilmiş
TestElle bir kez denendiOtomatik testler var ve sürekli çalışıyor
Hata yönetimiHata olunca uygulama duruyorHata kaydediliyor, kullanıcıya anlamlı mesaj veriliyor
PerformansAz veriyle hızlıGerçek veri hacmiyle ölçülmüş
BakımYazan kişi (ya da araç) anlıyorEkipteki başka biri okuyup değiştirebiliyor, dokümantasyon var
VeriÖrnek veriyle çalışıyorKişisel veri, yedekleme ve saklama kuralları düşünülmüş

Yapay zeka sol sütunu çok hızlı üretir. Sağ sütun ise hâlâ mühendislik disiplini ister. Hazır yapay zeka site oluşturucularında da benzer bir ayrım var. Onu yapay zeka site oluşturucular yazımızda ele aldık.

Teknik borç nasıl birikir?

Teknik borç, bugün hızlı ilerlemek için verilen ödünlerin ileride daha fazla emekle ödenmesidir. Yapay zekayla yazılan projelerde tipik birikim şöyle olur:

  • Aynı işi yapan, birbirine benzeyen ama farklı yazılmış fonksiyonlar çoğalır.
  • Kimse tam anlamadığı için kod değiştirilmekten çekinilir.
  • Testsiz kod, her değişiklikte başka bir yeri bozar.
  • Gereksiz ya da güncel olmayan bağımlılıklar birikir.

Bu borcu fark etmenin en kolay anı, projeyi başka bir ekibe devretmek gerektiğinde gelir. Devralma sürecinde nelere bakıldığını yazılım devralma ve bakım yazımızda anlatmıştık.

Bizim deneyimimiz

Kendi ürünlerimizi farklı teknolojilerle geliştiriyoruz: Su arıtma servis firmaları için AquaCRM'i PHP 8.2 ve Laravel 12 ile, rulo etiket üreticileri için Etiket İş Takip Asistanı'nı Next.js 15, React 19, TypeScript ve PostgreSQL 16 ile, eğitim platformu Grafik Sanat'ı React 19, TypeScript ve Supabase ile. Bu ürünler gerçek iş verisi işliyor. Örneğin AquaCRM'de her abone firma kendi izole veri alanında çalışıyor. Bu tür sistemlerde bir hatanın bedeli, bir prototipteki hatadan çok daha büyük.

Bu yüzden yapay zeka destekli araçlara yaklaşımımız şu: Önerilen kod, elle yazılmış kodla aynı inceleme ve test sürecinden geçer. Müşteri verisini ve gizli anahtarları bu araçlarla paylaşmayız. Bir paket ya da kütüphane önerildiğinde varlığını, bakım durumunu ve lisansını kontrol ederiz. Hız kazancını, kontrol adımlarını atlamadan elde etmeye çalışıyoruz.

Sık sorulan sorular

Yapay zekayla yazılmış bir uygulama yayına alınabilir mi?

Alınabilir; kodu kimin ya da hangi aracın yazdığından bağımsız olarak test, güvenlik kontrolü ve incelemeden geçtiyse. Sorun, yapay zekanın kullanılması değil, bu adımların atlanmasıdır.

Yazılımcı olmayan biri yapay zekayla kendi uygulamasını yapabilir mi?

Basit, kişisel ya da iç kullanım için prototipler yapılabilir. Müşteri verisi, ödeme ya da kişisel veri işleyen bir uygulamada ise kodu okuyup değerlendirebilen birinin sürece dahil olması gerekir. Aksi halde güvenlik açıklarını fark etmek mümkün olmaz.

Yapay zeka kod incelemesini de yapabilir mi?

Yardımcı olabilir: olası hataları, eksik testleri ya da riskli kalıpları işaretleyebilir. Ama yapay zekanın yaptığı inceleme de yanılabilir. İnsan incelemesine destek olarak kullanılmalı, onun yerine geçmemelidir.

Bir yazılım firmasıyla çalışırken yapay zeka kullanımını sormalı mıyım?

Evet, makul bir soru. Hangi araçların kullanıldığını, verilerinizin bu araçlarla paylaşılıp paylaşılmadığını ve kodun hangi kontrollerden geçtiğini sorabilirsiniz. Kaynak kod sahipliği ve kullanılan bileşenlerin lisansları sözleşmede yer almalıdır.

Sonuç

Yapay zeka ile kod yazma ne sihirli bir hızlandırıcı ne de baştan kaçınılması gereken bir risk. Yazma aşamasını hızlandıran bir araç. Asıl soru, hızlanan yazımı test, inceleme, güvenlik ve lisans kontrolünün takip edip etmediği. Bu adımlar yerindeyse kazanç gerçektir. Yoksa bugün kazanılan zaman, yarın teknik borç olarak geri döner.

Yeni bir yazılım projesi planlıyorsanız ya da yapay zekayla hızla geliştirilmiş bir uygulamanın üretime hazır olup olmadığını değerlendirmek istiyorsanız yazılım geliştirme hizmetimize göz atabilir ya da bizimle iletişime geçebilirsiniz. Yapay zekanın işletmelerde hangi işlerde fayda sağladığını merak ediyorsanız işletmeler için yapay zeka yazımıza da bakabilirsiniz.

Kaynaklar8
  1. METR, "Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity" (10 Temmuz 2025) metr.org
  2. METR, Şubat 2026 güncellemesi (2025 sonu araçlarıyla yeni ölçüm) metr.org
  3. Google / DORA, "2025 State of AI-assisted Software Development Report" research.google
  4. Veracode, "AI-Generated Code Poses Major Security Risks in Nearly Half of All Development Tasks" (30 Temmuz 2025) veracode.com
  5. Spracklen vd., "We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs", USENIX Security 2025 usenix.org
  6. GitHub Docs, "Code referencing" docs.github.com
  7. 5846 sayılı Fikir ve Sanat Eserleri Kanunu (md. 1/B, 2, 8) mevzuat.gov.tr
  8. CNN (KVIA üzerinden), "'Vibe coding' named Collins Dictionary's Word of the Year" (6 Kasım 2025) kvia.com
LinkedIn
WhatsApp
X
Facebook

Proje Başlat

Bize projenizden bahsedin.

Formu doldurun, bir iş günü içinde size özel bir yol haritasıyla dönelim. Dilerseniz doğrudan info@artsution.com.tr adresine de yazabilirsiniz.