https://devxoul.gitbooks.io/ios-with-swift-in-40-hours/
소개 · 40시간만에 Swift로 iOS 앱 만들기
No results matching ""
devxoul.gitbooks.io
위의 사이트를 통해 Swift를 공부하면서ㅋㅋ 너무 웃겨서 정리해본다.
Swift의 역사를 "직접 찾아보세요" 라고 되어있길래...ㅋㅋ
목차
- 개요
- 개발 철학
- Objective-C 와의 관계
- 문제점
1. 개요
Swift = "신속한, 재빠른", Swift Logo = "칼새" 상징하는 것으로 추정
기존 Objective-C의 단점을 보완하고, LLVM/Clang 컴파일러로 빌드되는 애플의 신규 프로그래밍 언어.
기존 Objective-C에 비해 클로저, 다중 리턴 타입, 네임스페이스, 제네릭, 타입 인터페이스 등 Objective-C에는 없었던 현대 프로그래밍 언어가 갖고 있는 기능을 많이 포함시켰으며, 이에 따라 일정한 성능을 보이고 있다.
2. 개발 철학
Swift는 다음과 같이 코드의 표현력을 높이기 위한 다른 많은 기능을 제공합니다.
- 함수 포인터와 통합된 클로저
- 튜플 및 멀티플 반환 값
- 제네릭
- 범위 또는 컬렉션에서의 빠르고 간결한 반복
- 메소드, 확장 프로그램 및 프로토콜을 지원하는 구조
- 함수형 프로그래밍 패턴 (예: map 및 filter)
- try/catch/throw를 사용한 기본 오류 처리
3. Objective-C 와의 관계
Swift 프로젝트에서도 Objective-C는 아무런 제약 없이 사용 가능하다. Swift의 컴파일러 백엔드와 Objective-C의 컴파일러 백엔드는 둘다 LLVM으로 동일하며, 어떤 언어를 사용해서 코드를 작성하더라도 같은 중간언어로 번역되어 컴파일 된다.
4. 문제점
Objective-C에 비해서 많은 문제점이 나오고 있다. 빠른 Swift의 새로운 버전에 따른 수정. 코드를 하나하나 수정해 주어야하는 일이 발생하는 것. 대표적인 문제로 Swfit3.0 버전에 오면서 조금만 큰 프로젝트를 개발하다 보면 Code Completion 기능은 먹통이 된다. 이 부분에 대해서는 Apple은 Swift4.0 또는 4.2로 마이그레이션할 수 있도록 가이드를 제공하고 있다.
- 컴파일 속도
Objective-C에 비해서 빌드 속도가 현저히 느려졌다. 빌드 타임에 작성된 코드를 Swift로 변경하고 다시 그걸 컴파일하는 듯한 속도감을 보인다. - Xcode의 전반적인 반응 속도
Xcode를 사용하면서 Swift3.0으로 올리고 나서 CPU 사용을 계속적으로 full로 사용하여 전반적인 동작이 느려지는 문제가 발생.
위의 내용은 나무위키를 참조하였습니다.
https://namu.wiki/w/Swift(%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%20%EC%96%B8%EC%96%B4)
Swift(프로그래밍 언어) - 나무위키
Swift는 다음과 같이 코드의 표현력을 높이기 위한 다른 많은 기능을 제공합니다.튜플 및 멀티플 반환 값제네릭범위 또는 컬렉션에서의 빠르고 간결한 반복메소드, 확장 프로그램 및 프로토콜을 지원하는 구조함수형 프로그래밍 패턴 (예: map 및 filter)try/catch/throw를 사용한 기본 오류 처리Swift가 현대적인 프로그래밍 언어인 이유. WWDC에서 공개된 Swift의 특징은 Fast, Modern, Safe, Interactive이었으나,
namu.wiki
'TIL (Today I Learned)' 카테고리의 다른 글
[TIL] 2021-12-09 (목) 개발 일지 (0) | 2021.12.09 |
---|---|
Github #1 Contribution 기록 안될 때 (0) | 2020.01.24 |
[기초] Singleton Pattern (0) | 2019.08.30 |
Unit Test [단위 테스트] (0) | 2019.08.30 |
[Oracle SQL] ROW_NUMBER( ) 사용하기 (0) | 2019.08.29 |
댓글