Swift:
עבודה עם YAML
איך לעשות:
Swift לא כוללת תמיכה מובנית לפענוח והסרה פלטת נתונים ב-YAML, מה שמחייב שימוש בספריות צד שלישי. בחירה פופולרית היא Yams
, ספרייה לעבודה עם YAML ב-Swift.
ראשית, אתה צריך להוסיף Yams
לפרויקט שלך. אם אתה משתמש ב-Swift Package Manager, תוכל להוסיף אותו כתלות בקובץ Package.swift
שלך:
dependencies: [
.package(url: "https://github.com/jpsim/Yams.git", from: "4.0.0")
]
פענוח YAML ל-Swift
נניח שיש לך את התצורה YAML הבאה לאפליקציה פשוטה:
name: MyApp
version: 1.0
environment: development
features:
- login
- notifications
הנה איך תוכל לפענח מחרוזת YAML זו ב-Swift באמצעות Yams
:
import Yams
let yamlString = """
name: MyApp
version: 1.0
environment: development
features:
- login
- notifications
"""
do {
if let data = try Yams.load(yaml: yamlString) as? [String: Any] {
print(data)
// דוגמה לגישה לנתונים שנפענחו
if let name = data["name"] as? String {
print("שם האפליקציה: \(name)")
}
}
} catch {
print("שגיאה בפענוח YAML: \(error)")
}
פלט לדוגמה:
["name": MyApp, "version": 1.0, "environment": "development", "features": ["login", "notifications"]]
שם האפליקציה: MyApp
הסרה פלטת של אובייקטי Swift ל-YAML
המרת אובייקט של Swift חזרה למחרוזת YAML היא גם קלה עם Yams
. נניח שיש לך את אותה מבנה נתונים שצריך להיות מוסר פלט:
let appInfo = [
"name": "MyApp",
"version": 1.0,
"environment": "development",
"features": ["login", "notifications"]
] as [String : Any]
do {
let yamlString = try Yams.dump(object: appInfo)
print(yamlString)
} catch {
print("שגיאה בהסרה פלטת ל-YAML: \(error)")
}
זה יפיק מחרוזת בפורמט YAML:
environment: development
features:
- login
- notifications
name: MyApp
version: 1.0
דוגמאות אלה מדגימות פעולות בסיסיות לעבודה עם YAML ביישומי Swift. זכור, בעוד ש-YAML מצטיין בקריאות לאדם ובנוחות שימוש, תמיד שקול את הצרכים הספציפיים של היישום שלך, במיוחד לגבי ביצועים ומורכבות, כאשר אתה בוחר את פורמט הסידור הנתונים שלך.