Claude ile Kod Yazmak: Prompt’tan Çalışan Uygulamaya
Yazılım dünyasında kartlar her gün yeniden dağıtılıyor. “Kod yazmayı bilmeden yazılımcı olmak” gibi büyük vaatleri ve pazarlama balonlarını bir kenara bırakalım; bugün asıl odaklanmamız gereken şey, ai ve llm araçlarını birer asistan olarak nasıl en yüksek verimle kullanabileceğimiz. Bu yazıda, özellikle kod yazma yetenekleriyle son dönemde tahtı sallayan claude modelini merceğe alıyoruz. Sadece teoride kalmayıp, doğru prompt engineering tekniklerini kullanarak sıfırdan çalışan bir uygulamayı nasıl ayağa kaldıracağımızı adım adım test edeceğiz. Hazırsanız, kahvenizi alın ve yeni nesil kodlama sürecini birlikte deneyimleyelim.
Neden Claude? Kodlamada Farkı Yaratan Ne?
Bugün piyasada onlarca farklı dil modeli var. Ancak yazılımcıların ve teknoloji meraklılarının büyük bir kısmı, kodlama söz konusu olduğunda rotayı Claude’a (özellikle Claude 3.5 Sonnet modeline) kırıyor. Bunun “çünkü çok zeki” gibi yüzeysel bir cevabı yok. Teknik olarak sebebi, Claude’un karmaşık mantık yürütme (reasoning) yeteneği ve “context window” yani bağlam penceresini yönetme biçimidir.
Claude, verdiğiniz kod blokları arasındaki ilişkileri çok daha iyi analiz ediyor. Bir fonksiyonda yaptığınız değişikliğin, projenin diğer ucundaki bir dosyayı nasıl etkileyeceğini sezebiliyor. Ayrıca, yazdığı kodlar genellikle “çalışmaya hazır” oluyor; yani sizi saatlerce hata (bug) temizlemekle uğraştırmıyor.
“Artifacts” Devrimi: Tarayıcıda Kod Koşturmak
Eğer Claude.ai arayüzünü kullandıysanız, “Artifacts” özelliğine denk gelmişsinizdir. Bu özellik, Claude’un yazdığı HTML, CSS, JavaScript veya React kodlarını ekranın sağ tarafında canlı bir önizleme olarak çalıştırmasını sağlıyor. Kodun çıktısını görmek için yerel bilgisayarınızda bir geliştirme ortamı kurmanıza gerek kalmıyor.
[Görsel: Claude Artifacts arayüzünde çalışan minimalist bir web uygulamasının canlı önizlemesi]
Adım Adım Deney: “TaskFlow” Pomodoro Uygulaması
Gelin, vaatleri test edelim. Claude’a sadece “Bana bir Pomodoro uygulaması yaz” demek yerine, sistem promptu ve detaylı isterlerle yaklaşacağız. Buna prompt engineering diyoruz; yani modele sınırlarını, rolünü ve uyması gereken kuralları net bir şekilde çiziyoruz.
1. Adım: Sistem Promptu ve İsterlerin Hazırlanması
Claude’a doğrudan konuya giren, rol tanımlayan ve yapısal sınırlar koyan şu promptu verdik:
Rol: Kıdemli Frontend Geliştiricisi
Teknolojiler: React, Tailwind CSS, Lucide Icons
Görev: Minimalist ve modern bir Pomodoro zamanlayıcı uygulaması geliştir.
Gereksinimler:
1. Zamanlayıcı: 25 dk odaklanma, 5 dk kısa mola, 15 dk uzun mola modları olsun.
2. Tur Sayacı: Kullanıcı kaç tur tamamladığını görebilsin.
3. Sesli Uyarı: Süre bittiğinde tarayıcı içi hafif bir ses çalsın.
4. Tasarım: Koyu tema (Dark Mode) uyumlu, göz yormayan pastel tonlar.
5. Kod yapısı tek bir dosya (Single File Component) halinde olsun ki Artifacts üzerinde hemen çalışsın.
2. Adım: Claude’un Tepkisi ve Kod Üretimi
Claude, bu promptu aldıktan sonra saniyeler içinde temiz bir React bileşeni oluşturdu. Tailwind sınıflarını son derece estetik kullandı. State yönetimini (zamanın durdurulması, sıfırlanması ve modlar arası geçişler) hatasız kurguladı.
İşte Claude’un ürettiği kod yapısının temel mantığı:
// Claude'un kurduğu state yapısından bir kesit
const [timeLeft, setTimeLeft] = useState(25 * 60);
const [isRunning, setIsRunning] = useState(false);
const [currentMode, setCurrentMode] = useState('focus'); // focus, shortBreak, longBreak
Peki sesli uyarı çalıştı mı? Evet, HTML5 Audio API’sini kullanarak tarayıcının yerel bip sesini üreten ufak bir fonksiyonu koda dahil etti. Harici bir .mp3 dosyasına bağımlı kalmadan bu sorunu çözmesi tam bir “kıdemli geliştirici” refleksiyidi.
3. Adım: Context Yönetimi (Uygulamayı Büyütmek)
Uygulamaya yeni bir özellik eklemek istedik: “Yapılacaklar Listesi (To-Do List)”. İşte burada bağlam (context) yönetimi devreye giriyor. Claude’a tüm kodu tekrar yazdırmak yerine, sadece ilgili değişikliği yapmasını istedik:
“Harika gidiyor. Şimdi bu Pomodoro’nun altına, o an odaklandığımız görevi seçebileceğimiz basit bir yapılacaklar listesi ekle. Mevcut state yapısını bozmadan entegre et.”
Claude, mevcut kodu hafızasında (context) tutarak, sadece gerekli eklemeleri yaptı ve güncellenmiş tek parça kodu bize sundu. Kod hiçbir aşamada kırılmadı.
Claude ile Kodlama: Artılar ve Eksiler
Yaptığımız yoğun testler sonucunda Claude’un kodlama asistanı olarak performansını şu şekilde özetleyebiliriz:
| Özellik | Artıları (+) | Eksileri (-) |
|---|---|---|
| Kod Kalitesi | Modern standartlara uygun, temiz ve okunabilir kod yazar. Gereksiz kütüphane bağımlılığı yaratmaz. | Çok niş veya çok yeni güncellenmiş kütüphanelerde eski versiyon kodlar önerebilir. |
| Hata Çözme | Hata çıktılarını (error log) verdiğinizde sorunu hızla tespit edip nokta atışı düzeltir. | Bazen aynı hatayı düzeltirken kodun başka çalışan bir yerini bozabilir (Regresyon). |
| Arayüz ve Deneyim | Artifacts sayesinde anında görsel çıktı verir, prototip süresini 10 kat hızlandırır. | Ücretsiz plandaki katı kullanım limitleri kod yazarken yarı yolda bırakabilir. |
Fiyatlandırma ve Ücretsiz Alternatifler
Claude’un bu yeteneklerinden faydalanmak için önünüzde birkaç seçenek var:
- Claude.ai (Ücretsiz Web Sürümü): Günlük çok sıkı limitleri vardır. Birkaç büyük kod sorgusundan sonra “Limitiniz doldu, 5 saat sonra gelin” uyarısı alabilirsiniz. Prototip yapmak için yeterli ama profesyonel işler için zorlayıcıdır.
- Claude Pro ($20/ay): Web arayüzünde 5 kat daha fazla mesaj hakkı sunar. Projeler (Projects) özelliğiyle kod tabanınızı sisteme yükleyip onun üzerinden konuşabilirsiniz.
- Claude API (Kullandığın Kadar Öde): VS Code veya Cursor gibi editörlerin içine Claude’u entegre etmek istiyorsanız en mantıklı yoldur. Harcadığınız token başına ödeme yaparsınız.
Ücretsiz ve Güçlü Alternatifler Neler?
Eğer bütçeniz yoksa veya Claude limitlerine takılmak istemiyorsanız şu alternatifleri değerlendirebilirsiniz:
- Google AI Studio (Gemini 1.5 Pro): Tamamen ücretsiz bir geliştirici paneli sunar. En büyük avantajı, 2 milyon token’lık devasa bağlam penceresidir. Tüm projenizin kodunu tek seferde içine atabilirsiniz.
- DeepSeek Coder: Son dönemin yükselen yıldızı. Kodlama konusunda inanılmaz başarılı ve API fiyatları Claude’a kıyasla neredeyse bedava.
- Ollama (Lokal/Çevrimdışı): Bilgisayarınızın donanımı güçlüyse, Qwen2.5-Coder gibi açık kaynaklı modelleri tamamen ücretsiz ve internet bağlantısı olmadan bilgisayarınızda koşturabilirsiniz.
Kertenkerem’in Son Sözü: Yazılımcılar İşsiz mi Kalıyor?
Günün sonunda gördük ki, Claude harika bir yardımcı pilot (co-pilot). Ancak uçağı tek başına uçurması henüz mümkün değil. Siz ne istediğinizi, mantık sınırları çerçevesinde ve doğru algoritmik düşünceyle belirtmediğiniz sürece Claude size sadece şık görünen ama işlevsiz kod yığınları verecektir.
Yani hayır, kodlama ölmedi. Sadece artık amelelik kısmını (syntax ezberlemek, parantez kapatmayı unutmak vb.) yapay zekaya devrediyoruz; biz ise sistem mimarisi tasarlamaya ve problem çözmeye odaklanıyoruz. Denemeye değer mi? Kesinlikle evet.