Swift 스위프트 문법 특성
1. 헤더 파일을 작성할 필요가 없다.
- 스위프트는 전처리를 위한 헤더 파일이 필요하지 않고, 헤더 파일과 소스 파일이 통합된 하나의 .swift 파일에서 필요한 내용을 정의하고 사용한다.
- 스위프트는 클래스나 구조체를 선언할 때 정의(Interface)와 구현(Implementation)을 분리하지 않고 통합해서 작성하는 특성이 있다.
2. 대소문자를 구분한다.
- 함수와 메소드, 인스턴스명의 첫 글자는 소문자
- 클래스와 구조체, ㅍ로토콜 등 객체의 첫 글자는 대문자
3. 구문 끝의 세미콜론은 생략 가능하다.
- 한 줄에 하나의 구문을 작성할 때 세미 콜론 생략 가능
- 한 줄에 두 개 이상의 구문을 작성할 때는 세미콜론 생략 불가능
4. 엔트리 포인트(시작점)으로 사용되는 main() 함수가 없다.
- 시스템에서 main() 함수를 호출하는 것을 시작으로 프로그램이 실행되는 Objective-C와는 대조적으로, 스위프트는 엔트리 포인트 함수가 없다.
- 대신 @UIApplicationMain 어노테이션을 사용하여 앱을 시작하는 객체를 지정한다. 하나의 앱에서 @UIApplicationMain 어노테이션이 붙은 객체는 단 하나뿐이어야 한다. (AppDelegate)
5. 문자열뿐만 아니라 문잘 큰따옴표를 사용한다.
- String 타입과 Character 타입 모두 큰따옴표를 사용하고, Character 타입을 사용하려면 반드시 명시해야 한다. 명시적으로 지정해 주지 않으면 타입 추론기에 의해 문자열(String)로 처리된다.
6. import 키워드를 사용하지만, 라이브러리와 프레임워크의 참조 용도이다.
- Objective-C는 다른 파일에 정의된 객체를 참조하려면 반드시 import 구문을 사용해야 개체가 정의된 헤더 파일을 반입해야 한다.
- 스위프트에서 import 구문은 프레임워크나 외부 라이브러리를 사용하기 위한 목적으로만 사용된다.
7. 한 줄 주석, 여러 줄 주석 처리 방식을 모두 사용할 수 있고, 중첩 주석을 사용할 수 있다.
- 한 줄용 주석: //
- 여러 줄용 주석: /* ~ */
8. try ~ catch 방식의 오류 처리를 지원한다.
- 스위프트 초기 버전에는 옵셔널 개념을 사용하도록 권고하며 try ~ catch 방식을 지원하지 않았다.
- Objective-C와의 호환성을 위해 사용하는 코코아 터치 프레임워크에서도 일부 오류 처리 기법이 사용되고 있었다. 때문에, 완전히 오류 처리 기능을 무시하고 옵셔널만을 고집할 수 없어서 try ~ catch 기능을 스위프트2에서 발표했다.
출처: 꼼꼼한 재은씨의 Swift: 문법편
'iOS > 개념' 카테고리의 다른 글
[Swift] 클로저(Closure)란? (0) | 2022.04.09 |
---|---|
[Swift] 스위프트 변수와 상수 (0) | 2022.04.02 |
[Swift] 함수 타입이란? (Function Types) (0) | 2022.03.19 |
[Swift] 프로퍼티 (Properties) 종류 (저장 or 연산 or 타입) (0) | 2022.03.08 |
[Swift] SwiftUI Stack (VStack, HStack, ZStack) (0) | 2022.02.23 |