Swift 语法简明而富有表现力,可帮助新手开发者快速掌握核心编程概念。再加上“使用 Swift 开发”教程、Swift Coding Club 和 Swift Playground 等资源的助力,你可轻松上手 Swift 这门编程语言,放心迈出编程第一步。
资深开发者也能快速适应并充分利用 Swift 的强大功能与安全性,同时自如应用其他编程语言中常用的现代功能。
struct Player {
var name: String
var highScore: Int = 0
var history: [Int] = []
init(_ name: String) {
self.name = name
}
}
var player = Player("Tomas")
使用现代、简明的语法声明新类型,为实例属性提供默认值,并定义自定构造器。
extension Player {
mutating func updateScore(_ newScore: Int) {
history.append(newScore)
if highScore < newScore {
print("\(newScore)! A new high score for \(name)! 🎉")
highScore = newScore
}
}
}
player.updateScore(50)
// Prints "50! A new high score for Tomas! 🎉"
// player.highScore == 50
使用 extension 向现有类型添加功能,并利用自定字符串转译减少样板代码。
extension Player: Codable, Equatable {}
import Foundation
let encoder = JSONEncoder()
try encoder.encode(player)
print(player)
// Prints "Player(name: "Tomas", highScore: 50, history: [50])"
使用简化闭包执行强大的自定转换。
let players = getPlayers()
// Sort players, with best high scores first
let ranked = players.sorted(by: { player1, player2 in
player1.highScore > player2.highScore
})
// Create an array with only the players’ names
let rankedNames = ranked.map { $0.name }
// ["Erin", "Rosana", "Tomas"]
充分利用强大的语言功能,以便快速扩展自定类型,如自动 JSON 编码和解码。