0Pricing
Swift Academy · Ders

Kitaplık ve çalıştırılabilir paketler

SwiftPM'deki kitaplık ve çalıştırılabilir paketlerin farkını anlayın: ürünleri/hedefleri nasıl tanımlayacağınızı, kitaplıkları nasıl kullanacağınızı ve çalıştırılabilirleri nasıl çalıştıracağınızı öğrenin.

Kitaplık ve çalıştırılabilir paketler, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 3 dersten oluşur.

İki ürün türü

SwiftPM paketleri bir kitaplık (içe aktarılacak kod) veya bir çalıştırılabilir (çalıştırılabilir bir araç) olarak sunulabilir.

  • Package.swift içinde ürünleri bildirin
  • Hedefleri ve kaynakları düzenleyin
  • Kitaplıkları kullanın; çalıştırılabilirleri çalıştırın

Kitaplık ürünü temelleri

Bir kitaplık, başkalarının import edebileceği modüller sunar. Giriş noktası gerekmez.

// Package.swift (illustrative library)
// import PackageDescription
// let package = Package(
//   name: "GreeterLib",
//   products: [
//     .library(name: "GreeterLib", targets: ["GreeterLib"]),
//   ],
//   targets: [
//     .target(name: "GreeterLib"),
//     .testTarget(name: "GreeterLibTests", dependencies: ["GreeterLib"]),
//   ]
// )
//
// Sources/GreeterLib/Greeter.swift
public struct Greeter {
    public init() {}
    public func hello(_ name: String) -> String { "Hello, \\(name)!" }
}
print(Greeter().hello("Ana")) // demo run

Çalıştırılabilir ürün temelleri

Bir çalıştırılabilir ürünün bir giriş noktası (main.swift) vardır ve çalıştırılabilir bir ikili dosya (swift run) oluşturur.

// Package.swift (illustrative executable)
// import PackageDescription
// let package = Package(
//   name: "greeter",
//   products: [ .executable(name: "greeter", targets: ["App"]) ],
//   targets: [ .executableTarget(name: "App") ]
// )
//
// Sources/App/main.swift
let args = CommandLine.arguments.dropFirst()
let who = args.first ?? "world"
print("Hello, \\(who)")

Kitaplıklara bağımlılık

Bir kitaplığı içe aktarmak için tüketici pakette .package ve .product kullanın. Anlamsal sürümlerle sabitleyin (ör. from: "1.0.0").

// In the consumer's Package.swift (illustrative):
// dependencies: [
//   .package(url: "https://example.com/GreeterLib.git", from: "1.0.0")
// ],
// targets: [
//   .executableTarget(
//     name: "App",
//     dependencies: [ .product(name: "GreeterLib", package: "GreeterLib") ]
//   )
// ]
//
// Sources/App/main.swift
// import GreeterLib
struct Dummy {}
print("Add import GreeterLib in your app to use its APIs.")

Sorumlulukları ayırma

Kodu paylaşın: temel mantığı bir kitaplığa koyun ve çalıştırılabilir ürünü ince bir sarmalayıcı olarak tutun.

// Package.swift can expose both a library and an executable:
// products: [
//   .library(name: "GreeterLib", targets: ["GreeterLib"]),
//   .executable(name: "greeter", targets: ["GreeterCLI"]),
// ],
// targets: [
//   .target(name: "GreeterLib"),
//   .executableTarget(name: "GreeterCLI", dependencies: ["GreeterLib"]),
// ]
//
// Reuse logic in the library; keep CLI thin.
print("Tip: put reusable logic in the library; the CLI depends on it.")

Derleme ve çalıştırma komutları

Kitaplıkları swift build ile derleyin ve swift test ile test edin. Çalıştırılabilirleri swift run <name> aracılığıyla çalıştırın.

// Library: build & test
//   swift build
//   swift test
//
// Executable: run & release
//   swift run greeter Ana
//   swift build -c release
//
// Artifact:
//   .build/release/greeter
print("Use swift run for executables; import libraries into apps.")

Kitaplık ve çalıştırılabilir tanımı

Hızlı kontrol: SwiftPM'de kitaplığı çalıştırılabilir üründen ayıran nedir?

Özet

Özet: Uygulamalar arasında kod paylaşmak için bir kitaplık, bir CLI/aracı sunmak içinse bir çalıştırılabilir kullanın. Ürünleri ve hedefleri Package.swift içinde bildirin; kitaplıklara .package + .product aracılığıyla bağımlılık ekleyin.

Sıkça Sorulan Sorular

“Kitaplık ve çalıştırılabilir paketler” dersi ücretsiz mi?

Evet — “Kitaplık ve çalıştırılabilir paketler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 3 dersten oluşur.

“Kitaplık ve çalıştırılabilir paketler” dersinde ne öğreneceğim?

SwiftPM'deki kitaplık ve çalıştırılabilir paketlerin farkını anlayın: ürünleri/hedefleri nasıl tanımlayacağınızı, kitaplıkları nasıl kullanacağınızı ve çalıştırılabilirleri nasıl çalıştıracağınızı öğ… Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Swift Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.

“Kitaplık ve çalıştırılabilir paketler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Kitaplık ve çalıştırılabilir paketler
  2. Anlamsal sürümleme ve sürümleri etiketleme
  3. swift test ve yapıtlarla CI temelleri
← Swift Academy Sayfasına Dön