티스토리 뷰
Swift3 시작하기
애플이 스위프트를 오픈소스로 공개한 이후 스위프트에 대한 관심이 무척 높아졌습니다. 6월에 진행된 애플 개발자행사인 WWDC에서는 스위프트3가 공개되었는데요. 스위프트3는 아직 베타버전이지만, 깃허브에 공개한 이후 많은 커미터들의 의견이 반영된 첫 번째 버전입니다.
오늘은 스위프트3를 가볍게 시작하는 걸로 출발합니다.
Swift에 대해 잘 알고싶으면 공식 홈페이지의 문서가 제일 좋습니다. 공홈에서 제공하는 메뉴얼은 진리입니다!
- Web: https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/index.html
- eBook: https://swift.org/documentation/TheSwiftProgrammingLanguage(Swift3).epub
1. 다운로드
서두에 말씀드린것처럼 Swift3는 아직 베타버전이기 때문에, 공식홈페이지를 통해 다운로드 받을 수 있습니다.
현재 공식으로 지원하는 플랫폼은 macOS와 Ubuntu 14.04/15.10 입니다. 앞으로 redhat계열만 지원해주면 저는 더 바랄나위가 없겠네요. 위 URL에서 본인의 플랫폼에 해당하는 버전을 다운받습니다.
2. 설치
macOS
맥에서는 XCode 8.0(베타)을 설치하면 됩니다. 기존에 XCode가 설치되어 콘솔에서 swift2를 기본 패스로 가지고 있는 경우, 다음 코드를 ~/.bashrc에 넣어줍니다.
export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}"
Ubuntu
우분투에서는 먼저 설치해야할 패키지가 있습니다. 스위프트의 프론트엔드 컴파일러 Clang입니다. LLVM이 백엔드로 동작합니다.
$ sudo apt-get install clang
아마 LLVM이 의존된 패키지로 함께 설치 되었던 것 같습니다. 그리고 위에서 다운받은 스위프트 패키지의 압축을 적당한 곳에 풀어줍니다. 그 후 압축을 풀은 위치를 기준으로 swift의 패스를 잡아주면 됩니다.
export PATH=/path/to/Swift/usr/bin:"${PATH}"
3. hello world 출력하기
제가 스위프트의 장점으로 뽑는 것 중 하나는 swift는 스크립트 언어로서도 활용할 수 있으며, 컴파일된 네이티브 언어로서도 활용할 수 있다는 점입니다.
먼저 아무 파일이나 생성해 봅시다. 실습은 우분투 기준으로 진행합니다.
- helloworld.swift
print("Hello World!")
hello world를 출력하는 건 위의 코드가 전부 입니다. 이제 실행하기 위해 콘솔을 열고 다음 명령을 입력해 봅시다.
$ swift helloworld.swift
결과가 잘 나오는걸 확인할 수 있습니다.
이제 컴파일을 해볼까요?
$ swiftc helloworld.swift -o helloworld
helloworld라는 파일이 생겼습니다. 파일의 속성을 볼까요?
$ file helloworld
hellowrold: ELF 64-bit LSB executable, x86-64 version 1 (SYSV), dynamically linked (uses shard libs), for GNU/Linux 2.6.24, BuildID[sha1]=8a26fd0ffasdfsaf31qwdcv214tsatv, not stripped
리눅스의 ELF 포멧으로 빌드가 된것을 확인할 수 있습니다.
이는 서버개발하는 입장에서 크나큰 장점이 될 수 있을 것 같습니다. 테스트서버에는 스크립트로 동작시켜서 개발한 코드의 적용 사항을 빨리빨리 확인합니다. 그리고 실제 운용서버는 컴파일된 코드를 올려서 아주 빠르게 동작시킬수 있습니다.
위의 바이너리파일을 실행시키면 같은 결과가 나오는 것을 확인할 수 있습니다. 그렇지만 스크립트로 실행시킨것에 비해 속도는 엄청 빠릅니다. 물론 이 예제에서는 속도차이를 체감하기 쉽지 않습니다. :)
참조
- swift 공식 홈페이지: https://swift.org
'Swift' 카테고리의 다른 글
[번역] Welcome to Swift - About Swift (Swift3) (0) | 2016.08.23 |
---|---|
[번역] Welcome to Swift - A Swift Tour (Swift3) (0) | 2016.08.23 |
- Total
- Today
- Yesterday
- zone
- typeScript
- Swift
- Zone.js
- Angular
- git 설정
- NgZone
- ECMA2015
- 스위프트
- 리눅스 터미널 색상
- angular2
- lua table
- terminal 색
- 챗봇
- ZONES
- QT
- vim
- 타입스크립트
- itoa
- 폰트 조정
- git proxy
- ansi color
- 안시 색상
- Rx.js
- 우분투 16.04
- observable
- 안시 컬러
- C언어
- qemu linux arm
- JavaScript
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |