İçeriğe geç

Xcode 15'in Çoklu Satır Biçimlendirme Özelliği

Xcode 15, uzun fonksiyon parametre listelerini tek satırdan birden fazla satıra yeniden biçimlendirmek için yerleşik bir eylem ekliyor.

Biçimlendirme Sorunu

Birçok parametresi olan uzun fonksiyon çağrıları ve tanımlamaları, Swift kodunda en yaygın okunabilirlik sorunlarından biri. Makul herhangi bir sütun sınırının çok ötesine uzanan satırlarla karşılaşıyorsun:

func configureView(title: String, subtitle: String, icon: Image, backgroundColor: Color, isEnabled: Bool, action: @escaping () -> Void) {

Bunu elle birden fazla satıra bölmek sıkıcı. İmleci konumlandırman, satır sonları eklemen, her parametreyi girintilemen ve kapanış parantezinin doğru hizalandığından emin olman gerekiyor.

Xcode 15’teki Yeni Eylem

Xcode 15, bunu otomatik yapan bir “Format to Multiple Lines” eylemi sunuyor. İmlecini birden fazla parametresi olan bir fonksiyon çağrısına veya tanımlamasına yerleştir, Xcode yeniden biçimlendirmeyi sunuyor:

The Format to Multiple Lines option in Xcode 15

Sonuç, her satırda bir parametre olacak şekilde temiz biçimlendirilmiş:

func configureView(
   title: String,
   subtitle: String,
   icon: Image,
   backgroundColor: Color,
   isEnabled: Bool,
   action: @escaping () -> Void
) {

Bu eylemi fonksiyon imzasına sağ tıklayıp Refactor altında arayarak veya Editor menüsünü kullanarak bulabilirsin. Hem fonksiyon tanımlamalarında hem de çağrı noktalarında çalışıyor.

Ne Zaman Kullanılır

Bu, yeni bir fonksiyon yazdıktan veya mevcut birine parametreler ekledikten hemen sonra en çok işe yarıyor. Yazarken elle biçimlendirmek yerine, her şeyi tek satıra yazıp sonra biçimlendiriciyi tek bir eylemle uygulayabilirsin. Ayrıca başka birinin uzun tek satırlık imzalar bıraktığı kodu incelerken de yardımcı oluyor – seç ve elle düzenleme yapmadan yeniden biçimlendir.

Ters işlem (birden fazla satırı tekrar tek satıra daraltma) şu anda mevcut değil, ama o yön genellikle daha az gerekli.

İşine yaradı mı? Swift ipuçları ve indie geliştirici güncellemeleri için Bluesky ve Mastodon üzerinden takip et.