Swift 입문

2023. 9. 12. 12:52iOS

1. Swift 관련 문서

https://www.swift.org/documentation/

 

Swift.org

Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.

www.swift.org

https://docs.swift.org/swift-book/documentation/the-swift-programming-language/guidedtour/

 

Documentation

 

docs.swift.org

 

2. swift 실습

https://www.onlinegdb.com/online_swift_compiler

 

Online Swift Compiler - online editor

OnlineGDB is online IDE with swift compiler. Quick and easy way to run swift scripts online.

www.onlinegdb.com

 

 

2.1. 자료형 선언

- 변수명은 Swift가 Unid

- 변수 선언: var 변수명 : 자료형

(단, 초기값이 있을 경우 컴파일러가 타입 추론(type inference)를 지원하므로 자료형 기입을 생략해도 된다:

var 변수명 = 초기값)

*kotlin에서도 동일

- 상수 선언: let 변수명 = 초기값

(상수에는 값을 한 번만 할당할 수 있으며, 반드시 선언 시 초기값을 줄 필요는 없다)

- type annotation: 변수 및 상수 선언 시 자료형을 기입하는 방식

- type inference: 변수 및 상수 선언 시 자료형을 기입하지 않을 경우 컴파일러가 값에 해당하는 자료형을 선택

 

2.2. print()

- 문자열 사이에 변수 및 상수 표기: \()

- separator: print() 함수 내 요소 사이의 구분자를 지정하며, 기본값은 공백

- terminator: print() 함수 간 사이의 구분자를 지정하며. 기본값은 개행문자

 

2.3. 자료형 종류

- Int: 정수 값을 표현하는 자료형으로, 기본 크기는 8바이트

- Float: 32비트의 크기를 가지는 부동소수점 값을 표현하는 자료형으로, 소수점 아래 6자리까지 표현

- Double: 64비트의 크기를 가지는 부동소수점 값을 표현하는 자료형으로, 소수점 아래 15자리까지 표현

(부동소수점 값은 기본적으로 Double형을 가짐)

- Bool: 참 또는 거짓을 가지는 자료형

- Character: 문자, 숫자, 문장 부호, 심볼 같은 유니코드 문자 하나를 저장하는 자료형

(유니코드 이용 시: var char1 = "\u{0033}")

- String: 단어나 문자를 구성하는 일련의 문자 자료형

 

2.4. Tuple

- 여러 값을 하나의 개체에 일시적으로 묶는 방법

- 튜플 내 항목들은 어떠한 타입도 될 수 있고, 항목들이 같은 자료형일 필요도 없다.

- index를 활용하여 접근할 수 있다,

- 튜플 생성 시 값에 이름을 지정할 수 있고, 이름을 통해 접근할 수 있다.

- 튜플을 분해하여 새로운 변수에 저장할 수 있다.

- empty tuple: 아무 내용도 없는 튜플로, Void가 이에 해당한다.

 

2.5. optional

- 값이 있을수도 없을수도 있는 자료형

- 선언 시 자료형 뒤에 ? 표기

- 값을 할당하지 않을 경우 nil을 가짐

- optional Integer를 갖는 y, z

- optional 해제를 위해서는 변수명 뒤에 ! 표기(단, 초기값 부여 필요)

 

3. 참고자료

- iOS 프로그래밍 기초: 한성현 교수님

 

 

 

'iOS' 카테고리의 다른 글

Mac 입문, Xcode 입문  (0) 2023.10.31
first class object - 2, Class  (0) 2023.10.17
Swift 함수, first class object - 1  (0) 2023.10.10
Swift 문법 - 2  (0) 2023.09.26
Swift 문법 - 1  (0) 2023.09.19