İçeriğe geç
Educora
İleri20 dk9 / 14

Xcode ve ilk iOS uygulaman

Xcode'u kur, bir SwiftUI projesi oluştur, proje yapısını anla, ekranı önizlemede gör ve uygulamayı simülatörde ve kendi iPhone'unda çalıştır.

Kendini test et
Bu derste öğreneceklerin
  • Xcode'da App şablonundan bir SwiftUI projesi oluşturmak
  • @main, App, WindowGroup ve Bundle Identifier'ın rolünü açıklamak
  • #Preview ile birden fazla önizleme oluşturmak
  • Uygulamayı simülatörde ve gerçek bir iPhone'da çalıştırmak

Swift'in sözdizimini, yapıları, protokolleri ve closure'ları artık biliyorsun. Şimdi bu bilgilerle bir iPhone uygulaması yapma zamanı. iOS uygulamaları Xcode'da, yani Apple'ın Mac için ücretsiz geliştirme ortamında hazırlanır. İçinde kod düzenleyici, Swift derleyicisi, iPhone ve iPad simülatörleri, önizleme tuvali ve hata ayıklama araçları vardır. Xcode yalnızca macOS'ta çalışır; bu yüzden bir Mac'e ihtiyacın olacak.

Kurulum ve yeni proje

  1. 1
    Xcode'u indir

    Mac App Store'da Xcode'u bul ve kur; indirme büyüktür, bu yüzden hızlı bir bağlantı gerekir. İlk açılışta Xcode iOS platformunu (simülatör dosyalarını) indirmeyi önerir; kabul et.

  2. 2
    Şablonu seç

    File › New › Project…'i seç, üstte iOS sekmesini aç ve App şablonunu al.

  3. 3
    Seçenekleri doldur

    Product Name: EducoraNotes, Organization Identifier: com.educora. Interface için SwiftUI, Language için Swift seç. Team alanını şimdilik boş bırakabilirsin.

  4. 4
    Kaydet

    Next'e bas, bir klasör seç ve Create'e bas. Xcode projeyi açar; ContentView.swift de zaten düzenleyicide olur.

Tanım
Bundle Identifier

Uygulamanın tüm Apple ekosistemindeki benzersiz kimliği. Organization Identifier ile ürün adından oluşur: com.educora.EducoraNotes. App Store uygulamayı tam olarak bu kimlikle tanır; onu değiştirmek yeni bir uygulama oluşturmak demektir.

Proje yapısı

  • EducoraNotesApp.swift — uygulamanın giriş noktası: @main ile işaretlenmiş ve App protokolüne uyan bir yapı.
  • ContentView.swift — ilk ekran; istediğin gibi değiştirebilirsin.
  • Assets.xcassets — uygulama simgesi (AppIcon), vurgu rengi (AccentColor) ve görseller.
  • Proje dosyası (Navigator'ın en üstündeki mavi simge) → hedef (target) → General ve Signing & Capabilities sekmeleri: ad, sürüm, en düşük iOS sürümü ve imza.
Swift
import SwiftUI

@main
struct EducoraNotesApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
@main, sisteme uygulamanın nereden başladığını söyler; WindowGroup uygulamanın penceresini ve ilk görünümünü belirler.
Swift
import SwiftUI

struct ContentView: View {
    var body: some View {
        VStack {
            Image(systemName: "globe")
                .imageScale(.large)
                .foregroundStyle(.tint)
            Text("Hello, world!")
        }
        .padding()
    }
}

#Preview {
    ContentView()
}
Şablonun oluşturduğu ekran: ortada vurgu renginde bir dünya simgesi ve altında “Hello, world!” yazısı.

Önizlemeler ve tuval

Düzenleyicinin sağındaki tuval (canvas), #Preview bloğundaki görünümü uygulamayı çalıştırmadan gösterir ve kodu değiştirir değiştirmez güncellenir. Önizleme etkileşimlidir: düğmelere basabilir, listeleri kaydırabilirsin. Bir dosyaya birden fazla önizleme yazıp ekranı koyu temada ya da büyük yazıyla da deneyebilirsin:

Swift
#Preview("Light") {
    ContentView()
}

#Preview("Dark") {
    ContentView()
        .preferredColorScheme(.dark)
}

#Preview("Large text") {
    ContentView()
        .environment(\.dynamicTypeSize, .xxxLarge)
}
Tuvalin üstünde üç ad görünür; aralarında geçiş yaparak her varyantı deneyebilirsin.
Eski: PreviewProvider
struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
Yeni: #Preview makrosu
#Preview {
    ContentView()
}
Eski projelerde ve makalelerde hâlâ PreviewProvider görürsün; Xcode 15'ten beri kısa #Preview makrosu kullanılır.

Simülatörde ve iPhone'da çalıştır

Cihaz, pencerenin üstündeki run destination menüsünden seçilir: herhangi bir iPhone ya da iPad simülatörü veya bağlı gerçek bir cihaz. Cmd+R uygulamayı derleyip çalıştırır, Cmd+. durdurur. Simülatörde Cmd+Shift+H ana ekrana döner, Cmd+Left ve Cmd+Right cihazı döndürür. Gerçek bir iPhone'da çalıştırmak için birkaç adım gerekir:

  1. 1
    Apple ID'ni ekle

    Xcode › Settings › Accounts bölümünde +'ya basıp Apple ID'nle giriş yap. Ardından hedefin Signing & Capabilities sekmesinde Automatically manage signing'i işaretle ve Team olarak kendini (Personal Team) seç.

  2. 2
    iPhone'u bağla

    Telefonu kabloyla Mac'e bağla, ekrandaki “Trust This Computer?” sorusuna Trust de ve parolanı gir.

  3. 3
    Developer Mode'u aç

    iPhone'da Settings › Privacy & Security › Developer Mode'u aç (bu seçenek cihaz Xcode'a bağlandıktan sonra görünür). Telefon yeniden başlar; ardından Turn On ile onayla.

  4. 4
    Çalıştır ve güven

    Run destination olarak iPhone'u seç ve Cmd+R'ye bas. Ücretsiz hesapla ilk seferde Settings › General › VPN & Device Management bölümünde kendi geliştirici profiline güvenmen gerekir.

Uygulama çalışırken print(...) ile yazılan mesajlar Xcode'un altındaki konsolda görünür (Cmd+Shift+Y hata ayıklama alanını açar). Bir satır numarasına tıklarsan mavi bir kesme noktası (breakpoint) konur: uygulama o satırda durur ve değişkenlerin değerlerini görebilirsin.

derleyip çalıştırmakCmd+R
çalışan uygulamayı durdurmakCmd+.
tuvali göstermek ya da gizlemekCmd+Option+Return
önizlemeyi yenilemekCmd+Option+P
hata ayıklama alanını ve konsolu göstermekCmd+Shift+Y
bir dosyayı ya da türü adıyla açmak — Open QuicklyCmd+Shift+O

Önemli noktalar

  • iOS uygulamaları Mac'te, ücretsiz Xcode ortamında hazırlanır; yeni proje iOS › App şablonundan, SwiftUI arayüzüyle oluşturulur.
  • @main ile işaretli App yapısı giriş noktasıdır; WindowGroup ilk görünümü gösterir.
  • Bundle Identifier uygulamanın benzersiz adıdır ve onu App Store'da tanıtır.
  • #Preview ekranı tuvalde gösterir; bir dosyada koyu tema ve büyük yazı için ayrı önizlemeler olabilir.
  • iPhone'da çalıştırmak için bir Team seçilir ve Developer Mode açılır; ücretsiz hesapla kurulan uygulama 7 gün çalışır.

Kendini test et

10 soru. Her doğru cevap XP kazandırır.

1 / 10
Uygulamanın giriş noktasını hangi öznitelik gösterir?