-
[Swift] Compile, Link, Runswift 2024. 3. 2. 18:18
실행파일을 만드는 과정은 3단계이다. 1️⃣Coding 2️⃣ compile 3️⃣link ‣ ( run )
Compile
1. 의미
: 우리가 작성한 코드를 컴퓨터가 이해할 수 있게 0과 1로만 이루어진 바이너리 코드로 바꾸는 과정
2. 특징
가. 컴파일은 개발자가 하지 않는다.
나. Swift에 컴파일러가 내재되어 있다.
Link
1. 의미
프레임워크, 라이브러리 등에 공개된 코드를 컴파일된 코드와 연결하는 과정
2. 특징
가. 앱을 만들 때 모든 코드를 개발자가 만들지 않고 프레임워크, 라이브러리 등에서 가져와서 쓴다.
나. 링크는 개발자가 하지 않는다. Swift가 수행한다.
3. 관련 개념
가. Integrated Dvelopment Environment 통합 개발 환경
: Compile과 link를 수행할 때 복잡한 명령어를 내리지 않고 개발도구가 스스로 처리하는 스마트한 개발 환경
나. Build: Compile과 link를 묶어서 build라고 한다.
Run
1. 의미
: 프로그램을 실행하다.
2. 모드
가. Debug Mode -개발 과정에서 사용되는 모드. 프로그램 분석에 필요한 다양한 정보가 포함됨.
(장점) 코드를 분석하고 문제점을 찾는 것이 쉽다.
(단점) 파일 크기가 커지고 속도가 느리다.
나. Release mode - 배포 시 사용되는 모드
(장점) 파일 크기가 작고 컴파일러가 최적화 작업을 하여 속도가 빠르다.
(단점) 디버그 정보가 없어서 문제점을 찾는게 어렵다.
3. 관련 개념
가. compile time(build time): 코드를 작성하는 시점부터 compile과 link가 완료되는시점
나. run time: 프로그램이 실행되는 시점 *간혹 실행 환경이라는 의미로 사용되기도 함. 예)Swift runtime
다. 특정 연산자는 런타임에 type을 확인한다.
'swift' 카테고리의 다른 글
[Swift] Naming Convention(CamelCase) (0) 2024.03.02 [swift] Variable, Constant (0) 2024.03.02 [Swift] Special Character (1) 2024.03.02 [Swift] Literal, Identifier, Keyword (0) 2024.03.02 [Swift] Token, Expression, Statement (0) 2024.03.02