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.

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" |
|---|---|---|
| Senaryolar | Beklenen girdide doğru sonuç | Hatalı, eksik, kötü niyetli girdide de doğru davranış |
| Güvenlik | Gözle bakıldığında sorun yok | Girdi doğrulama, yetkilendirme, güvenlik taraması yapılmış |
| Bağımlılıklar | Paket kuruldu, kod derlendi | Paketlerin varlığı, güncelliği ve lisansı kontrol edilmiş |
| Test | Elle bir kez denendi | Otomatik testler var ve sürekli çalışıyor |
| Hata yönetimi | Hata olunca uygulama duruyor | Hata kaydediliyor, kullanıcıya anlamlı mesaj veriliyor |
| Performans | Az veriyle hızlı | Gerçek veri hacmiyle ölçülmüş |
| Bakım | Yazan kişi (ya da araç) anlıyor | Ekipteki başka biri okuyup değiştirebiliyor, dokümantasyon var |
| Veri | Örnek veriyle çalışıyor | Kiş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.
Bu yazı bilgilendirme amaçlıdır, hukuki danışmanlık yerine geçmez.
Kaynaklar8
- METR, "Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity" (10 Temmuz 2025) metr.org
- METR, Şubat 2026 güncellemesi (2025 sonu araçlarıyla yeni ölçüm) metr.org
- Google / DORA, "2025 State of AI-assisted Software Development Report" research.google
- Veracode, "AI-Generated Code Poses Major Security Risks in Nearly Half of All Development Tasks" (30 Temmuz 2025) veracode.com
- Spracklen vd., "We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs", USENIX Security 2025 usenix.org
- GitHub Docs, "Code referencing" docs.github.com
- 5846 sayılı Fikir ve Sanat Eserleri Kanunu (md. 1/B, 2, 8) mevzuat.gov.tr
- CNN (KVIA üzerinden), "'Vibe coding' named Collins Dictionary's Word of the Year" (6 Kasım 2025) kvia.com



