커맨드+N
들어갈 변수타입으로 타입추론이 가능
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
do {
let expoInformation: ExpoInformation = try jsonDecode(with: "exposition_universelle_1900")
expoInformationLabel.text = expoInformation.expoDescription
} catch {
print("error")
}
}
func jsonDecode<Element: Decodable>(with fileName: String) throws -> Element {
let jsonDecoder: JSONDecoder = JSONDecoder()
guard let dataAssert: NSDataAsset = NSDataAsset(name: fileName) else {
throw ExpoError.decodeError
}
return try jsonDecoder.decode(Element.self, from: dataAssert.data)
}
UIImage(named:) 메서드를 사용하여 이미지를 로드합니다. 이 메서드는 자동으로 기기의 해상도에 맞는 이미지를 선택하여 반환합니다. 예를 들어, 2x 디스플레이에서 실행 중인 경우 2x 이미지를, 3x 디스플레이에서 실행 중인 경우 3x 이미지를 선택합니다.
https://developer.apple.com/documentation/foundation/jsondecoder/keydecodingstrategy
https://dev.classmethod.jp/articles/xcode_13_ios_15_navigation_bar_color/
임의의 노드에서 제일 긴 노드를 찾으면 트리의 지름의 한 노드이다
스토리보드에서 추가시 false