Cursor’da Swift geliştirmeye hoş geldin! İster iOS uygulamaları, ister macOS uygulamaları ya da sunucu tarafı Swift projeleri geliştiriyor ol, hepsini kapsıyoruz. Bu rehber, temellerden başlayıp daha gelişmiş özelliklere geçerek Cursor’da Swift ortamını kurmana yardımcı olacak.

Temel İş Akışı

Cursor’ı Swift ile kullanmanın en basit yolu, onu ana kod editörün olarak kullanıp yine de uygulamalarını derlemek ve çalıştırmak için Xcode’a güvenmeye devam etmendir. Şu gibi harika özellikler elde edersin:
  • Akıllı kod tamamlama
  • Yapay zekâ destekli kodlama yardımı (herhangi bir satırda CMD+K deneyebilirsin)
  • @Docs ile dökümantasyona hızlı erişim
  • Sözdizimi vurgulama
  • Temel kod gezintisi
Uygulamanı derlemen veya çalıştırman gerektiğinde, sadece Xcode’a geç. Bu iş akışı, Cursor’ın yapay zekâ yeteneklerinden yararlanırken hata ayıklama ve dağıtım için tanıdık Xcode araçlarına bağlı kalmak isteyen geliştiriciler için ideal.

Hot Reloading

Xcode çalışma alanları veya projeleri kullanırken (bir klasörü doğrudan Xcode’da açmak yerine), Xcode bazen Cursor’da ya da genel olarak Xcode dışında yaptığın dosya değişikliklerini göz ardı edebilir. Bunu çözmek için klasörü Xcode’da açabilsen de, Swift geliştirme iş akışın için bir projeye ihtiyaç duyabilirsin. Buna iyi bir çözüm, Swift için bir hot reloading kütüphanesi olan ve uygulamanın değişiklikleri gerçek zamanlı olarak anında “hot reload” edip güncellemesini sağlayan Inject kullanmaktır. Bu yaklaşım, Xcode çalışma alanı/proje sorunlarının yan etkilerinden etkilenmez ve Cursor’da yaptığın değişikliklerin uygulamana hemen yansımasını sağlar.

İleri Düzey Swift Geliştirme

Bu rehberin bu bölümü, iOS geliştirme için Cursor kullanımına dair Thomas Ricouard ve onun makalesinden büyük ölçüde ilham aldı. Daha fazla ayrıntı için makalesine göz at ve daha fazla Swift içeriği için onu takip et.
Aynı anda yalnızca tek bir editörü açık tutmak ve Xcode ile Cursor arasında geçiş yapma ihtiyacından kaçınmak istiyorsan, Cursor’u doğrudan Xcode’un temel derleme sistemiyle entegre etmek için Sweetpad gibi bir uzantı kullanabilirsin. Sweetpad, Swift projelerini doğrudan Cursor içinde derleyip çalıştırmana ve hata ayıklamana olanak tanıyan, Xcode’un özelliklerinden ödün vermeyen güçlü bir uzantıdır. Sweetpad ile başlamadan önce Mac’inde Xcode’un yüklü olması gerekir — Swift geliştirmenin temeli budur. Xcode’u Mac App Store’dan indirebilirsin. Xcode’u kurduktan sonra, Cursor’daki geliştirme deneyimini birkaç temel araçla güçlendirelim. Terminalini aç ve şunu çalıştır:
# Xcode açık olmadan projelerini derler
brew install xcode-build-server

# `xcodebuild` komut çıktısını Cursor’un terminalinde düzgün biçimde yazdırır
brew install xcbeautify

# Gelişmiş biçimlendirme ve dil özellikleri sağlar
brew install swiftformat
Sonrasında, Cursor içinde Swift Language Support uzantısını yükle. Bu, kurulumun ardından anında sözdizimi vurgulama ve temel dil özellikleri sağlar. Ardından, Cursor’u Xcode ile entegre etmek için Sweetpad uzantısını yükleyebiliriz. Sweetpad, xcodebuild CLI etrafında bir dizi kısayol (ve çok daha fazlasını) sunar ve hedeflerini taramana, hedef ortamı seçmene, uygulamanı derlemene ve tıpkı Xcode’da olduğu gibi çalıştırmana olanak tanır. Ayrıca projenini Xcode Build Server için yapılandırır; böylece yukarıda bahsedilen tüm özelliklerden yararlanırsın.

Sweetpad Kullanımı

Sweetpad kurulduktan ve Cursor içinde açık bir Swift projen olduktan sonra, önce Sweetpad: Generate Build Server Config komutunu çalıştırmalısın. Bu, projenin kök dizininde Xcode Build Server’ın projenle çalışmasına olanak tanıyan bir buildServer.json dosyası oluşturur. Sonrasında, Command Palette’ten veya Sweetpad kenar çubuğundan derlemek ve çalıştırmak istediğin hedefi seçebilirsin.
Otomatik tamamlama, tanıma git ve diğer dil özelliklerini etkinleştirmek için projeni bir kez derlemen gerekiyor.
Artık F5’e basarak projeni hata ayıklayıcıyla derleyip çalıştırabilirsin — önce bir launch yapılandırması oluşturman gerekebilir, ancak istendiğinde listeden Sweetpad’i seçmen yeterli! Cursor’daki birçok uzantıda olduğu gibi, Sweetpad komutlarının çoğunu iş akışını daha verimli hale getirmek için klavye kısayollarına atayabilirsin. Sweetpad hakkında daha fazla bilgi edinmek için şu kaynaklara göz at: