안녕하세요. 개발하는 정주입니다.
오늘은 1편에 이어 애플 개발자 홈페이지의 Swift 소개를 정리하려고 합니다.
1편 바로 가기
2021.12.14 - [Swift/공식 문서 정리] - [Swift] Swift 공식 문서 - Swift 소개(1)
* 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요.
목차
Source and Binary Compatibility
스위프트 5를 사용하면 새로운 버전의 컴파일러를 사용하기 위해 스위프트 4 코드를 수정할 필요가 없습니다.
대신 새로운 컴파일러를 사용하면 한 번에 한 모듈씩 새로운 Swift 5 기능을 이용하여 마이그레이션 할 수 있습니다.
Swift 5는 이제 앱을 위한 바이너리 호환성을 도입했습니다.
즉, 추후 새로운 버전의 OS가 릴리즈되도 앱에 Swift 라이브러리를 더 이상 포함할 필요가 없습니다.
향후 모든 OS 릴리스에 Swift 라이브러리가 포함될 것이기 때문입니다.
앱은 OS에 있는 라이브러리의 최신 버전을 활용하며 코드는 다시 컴파일하지 않아도 계속 실행 가능합니다.
이것은 당신의 앱을 더 간단하게 만들 뿐만 아니라, 당신의 앱의 크기와 실행 시간을 줄여줍니다.
Open Source
스위프트는 Swift.org에 소스 코드와 버그 트래커, 포럼, 정기적인 개발 빌드가 공개되어 있습니다.
수백 명의 외부 기여자들과 애플 내부 개발자들로 이루어진 이 넓은 공동체는 스위프트를 훨씬 더 놀랍게 만듭니다.
커뮤니티의 개발자들이 스위프트 경험을 공유하는 블로그, 팟캐스트, 컨퍼런스, 밋업도 훨씬 더 폭넓게 존재합니다.
Cross Platform
Swift는 이미 모든 Apple 플랫폼과 리눅스를 지원하고 있으며 커뮤니티 회원들은 훨씬 더 많은 플랫폼으로 포팅하기 위해 적극적으로 노력하고 있습니다.
SourceKit-LSP를 통해 커뮤니티는 스위프트 지원을 다양한 개발자 도구에 통합하기 위해 노력하고 있다.
Swift가 프로그래밍을 더 재미있게 하면서 소프트웨어를 안전하고 빠르게 만들 수 있는 방법을 보게 되어 매우 기쁩니다.
Swift for Server
스위프트는 애플 플랫폼의 많은 앱 뿐만 아니라 새로운 종류의 최신 서버 애플리케이션에도 사용되고 있습니다.
Swift는 runtime safety, 컴파일 성능 및 작은 메모리 공간이 필요한 서버 앱에 사용하기에 이상적입니다.
Swift의 서버 애플리케이션 개발 및 배포 방향을 조정하기 위해 커뮤니티는 Swift 서버 작업 그룹을 구성했습니다.
SwiftNIO는 고성능 프로토콜 서버 및 클라이언트를 위한
크로스 플랫폼 비동기식 네트워크 애플리케이션 프레임워크를 사용하는 첫 번째 제품입니다.
로깅, 메트릭, 데이터베이스 드라이버를 포함한 추가적인 서버 지향 도구와 기술을 구축하는 토대 역할을 합니다.
Playgrounds and Read-Eval-Print-Loop (REPL)
Xcode의 Playgound는 스위프트 코드를 쓰는 것을 간단하고 재미있게 합니다.
코드를 입력하면 결과가 즉시 나타납니다.
그런 다음 코드 측면에서 결과를 빠르게 보거나 아래에 결과를 고정할 수 있습니다.
결과 보기는 시간 경과에 따른 값의 그래픽, 결과 목록 또는 그래프를 표시할 수 있습니다.
Timeline Assistant를 열어 복잡한 뷰가 구축되는 것을 볼 수 있으며,
새로운 UI 코드 실험, 애니메이션 SpriteKit 장면을 코딩하면서 확인할 수 있습니다.
Playgound에서 코드를 완성했으면 해당 코드를 프로젝트로 이동하기만 하면 됩니다.
Swift는 터미널이나 Xcode의 LLDB 디버깅 콘솔에서 사용할 때도 상호 작용합니다.
Swift 구문을 사용하여 실행 중인 앱을 평가하고 상호 작용하거나, 스크립트 환경에서 어떻게 작동하는지 확인하기 위해 새 코드를 작성합니다.
Package Manager
Swift Package Manager는 Swift 라이브러리와 실행 파일을
빌드, 실행, 테스트 및 패키징하기 위한 단일 교차 플랫폼 도구입니다.
Swift 패키지는 Swift 커뮤니티에 라이브러리와 소스 코드를 배포하는 가장 좋은 방법입니다.
패키지 구성은 Swift로 작성되므로 대상을 쉽게 구성하고 제품을 선언하며 패키지 종속성을 관리할 수 있습니다.
스위프트 5의 새로운 기능인 swift run 명령어는 이제 실행 파일을 빌드할 필요 없이
REP의 라이브러리를 가져올 수 있는 기능을 포함하고 있습니다.
Swift Package Manager 자체는 실제로 Swift와 함께 빌드되며 Swift 오픈 소스 프로젝트에 패키지로 포함되어 있습니다.
Objective-C Interoperability
오늘 Swift로 완전히 새로운 애플리케이션을 만들거나 Swift 코드를 사용하여 앱에 새로운 기능을 구현할 수 있습니다.
Swift 코드는 동일한 프로젝트의 기존 Objective-C 파일과 함께 존재하며, Objective-C API에 완전히 액세스 할 수 있어 쉽게 채택할 수 있습니다.
참조
https://developer.apple.com/swift/#modern