-
Chapter 1: IntroductionRaywenderlich/SwiftUI by Tutorials 2021. 3. 17. 15:09
Version
Swift 5.3, iOS 14, Xcode 12
"SwiftUI는 Swift를 사용해 모든 Apple 플랫폼에서 사용자 인터페이스(user interfaces, UI)를 구축하는 혁신적이고 매우 간단한 방법이다."
- AppleSwiftUI는 Apple 관련 개발(Apple-related development)의 새로운 패러다임(paradigm)이다. 2014년 Apple은 Objective-C를 대체하는 새로운 오픈 소스 프로그래밍 언어(open-source language)인 Swift를 발표하여 세상을 놀라게 했다. 출시 이후 Swift는 꾸준하게 업데이트(updated)되고 발전(evolved)하여, 오늘날 가장 사랑 받고 강력한 프로그래밍 언어 중 하나가 되었다.
2019년에 발표된 SwiftUI는 기존의 업계 패러다임(paradigm)을 또다시 전환한다. UIKit과 AppKit을 사용하여 사용자 인터페이스(user interfaces)를 구현할 수 있도록 한지 몇 년이 지나지 않았지만, SwiftUI는 앱 UI를 만들 수 있는 새로운 방법을 제시한다. 여러 면에서 SwiftUI는 이전 방식보다 훨씬 단순(simpler)하고 강력(powerful)하며, 무엇보다 Apple 생태계를 넘어서는 다중 플랫폼(cross-platform)이다.
가장 중요한 것 중 하나는 SwiftUI가 선언적(declarative)이라는 것이다. 수년간 개발자들은 상태 관리 문제(state-management problems)와 복잡한 코드(complex code)를 다루는 명령형 프로그래밍(imperative programming) 모델(model)을 사용해 왔다. 그러나 이제는 놀라운 사용자 인터페이스(user interfaces)를 구축 할 수 있는 선언적(declarative)이고 간단한(straight-forward) 방법을 손에 쥐게 되었다. 또한, UIKit이나 AppKit 프레임 워크(frameworks)로 구현된 작업도 SwiftUI 코드와 통합(integrate)할 수 있다.
SwiftUI에는 여전히 개선될 여지가 있다. Swift가 v1.0 이후 발전했던 것처럼, SwiftUI도 마찬가지일 것이다. Swift가 점진적으로(progressive) 현대적인 프로그래밍 언어(modern programming languages)의 표준 중 하나가 된 것처럼, SwiftUI도 분명히 같은 길을 따라갈 것이다.
이 책을 학습하면서 SwiftUI가 제공하는 새로운 사용자 인터페이스(user interfaces) 생성 방법이 얼마나 쉽고 강력한지 알게 될 것이다.
About this book
이 책은 초급부터 고급(beginner-to-advanced)까지의 개발자(developers)를 염두에 두고 작성했다. 이 책을 읽기 위한 유일한 요구 사항(requirements)은 Swift와 iOS 개발에 대한 기본적인 이해(basic understanding)이다. SwiftUI는 우리 모두에게 새로운 것이기 때문에 모든 배경(backgrounds)의 개발자(developers)가 우리와 함께 이 훌륭한 기술(technology)을 발견(discover)하기를 기대한다. 이 책을 읽으면서 초급 주제(beginner topics)에서 고급 개념(advanced concepts)으로 빠르고 친숙(familiar fashion)하게 발전할 것이다.
'Raywenderlich > SwiftUI by Tutorials' 카테고리의 다른 글
Chapter 6: Controls & User Input (0) 2021.04.07 Chapter 5: Intro to Controls: Text & Image (0) 2021.04.07 Chapter 4: Testing & Debugging (0) 2021.04.05 Chapter 3: Diving Deeper Into SwiftUI (0) 2021.03.19 Chapter 2: Getting Started (0) 2021.03.17