Swift Language 튜토리얼
신속 언어 시작하기
수색…
비고
Swift 는 Apple에서 개발하여 오픈 소스로 배포 한 응용 프로그램 및 시스템 프로그래밍 언어입니다. Swift는 Apple의 macOS, iOS, tvOS 및 watchOS 운영 체제 용 Objective-C 및 Cocoa / Cocoa 터치 API와 상호 운용됩니다. 스위프트는 현재 macOS와 Linux를 지원합니다. Android, Windows 및 기타 플랫폼을 지원하기위한 커뮤니티 노력이 진행 중입니다.
빠른 개발 은 GitHub에서 발생 합니다 . 기부는 일반적으로 끌어 오기 요청을 통해 제출됩니다.
버그 및 기타 문제는 bugs.swift.org 에서 추적됩니다.
Swift 개발, 진화 및 사용에 대한 토론은 Swift 메일 링리스트 에서 개최됩니다.
기타 리소스
- Swift (프로그래밍 언어) (Wikipedia)
- 신속한 프로그래밍 언어 (온라인)
- 신속 표준 라이브러리 참조 (온라인)
- API 디자인 가이드 라인 (온라인)
- 신속한 프로그래밍 시리즈 (iBooks)
- ... and more about developer.apple.com .
버전
스위프트 버전 | Xcode 버전 | 출시일 |
---|---|---|
개발이 시작되었습니다 ( 첫 번째 커밋 ). | - | 2010-07-17 |
1.0 | Xcode 6 | 2014-06-02 |
1.1 | Xcode 6.1 | 2014-10-16 |
1.2 | Xcode 6.3 | 2015-02-09 |
2.0 | Xcode 7 | 2015-06-08 |
2.1 | Xcode 7.1 | 2015-09-23 |
오픈 소스 데뷔 | - | 2015-12-03 |
2.2 | Xcode 7.3 | 2016-03-21 |
2.3 | Xcode 8 | 2016-09-13 |
3.0 | Xcode 8 | 2016-09-13 |
3.1 | Xcode 8.3 | 2017-03-27 |
첫 번째 Swift 프로그램
hello.swift
라는 파일에 코드를 작성하십시오.
print("Hello, world!")
- 한 단계에서 스크립트를 컴파일하고 실행하려면 터미널에서
swift
를 사용하십시오 (이 파일이있는 디렉토리에서).
터미널을 시작하려면 Linux 에서 CTRL + ALT + T 를 누르거나 macOS의 Launchpad에서 찾으십시오. 디렉토리를 변경하려면
cd
directory_name
(또는cd ..
로 돌아가십시오)을 입력하십시오cd ..
$ swift hello.swift Hello, world!
컴파일러 는 프로그래밍 언어 (원본 언어)로 작성된 소스 코드를 다른 컴퓨터 언어 (대상 언어)로 변환하는 컴퓨터 프로그램 (또는 프로그램 집합)이며, 후자는 종종 개체 코드로 알려진 이진 형식을 사용합니다. ( 위키피디아 )
- 별도로 컴파일하고 실행하려면
swiftc
사용swiftc
.
$ swiftc hello.swift
이렇게하면 코드가 hello
파일로 컴파일됩니다. 실행하려면 ./
입력하고 파일 이름을 입력하십시오.
$ ./hello Hello, world!
- 또는 명령 줄에서
swift
를 입력하고 인터프리터에 코드를 입력하여 신속한 REPL (Read-Eval-Print-Loop)을 사용하십시오.
암호:
func greet(name: String, surname: String) { print("Greetings \(name) \(surname)") } let myName = "Homer" let mySurname = "Simpson" greet(name: myName, surname: mySurname)
이 큰 코드를 조각으로 분해 해 봅시다.
func greet(name: String, surname: String) { // function body }
-name
과surname
사용하는 함수 를 만듭니다.
print("Greetings \(name) \(surname)")
- 콘솔에 "인사말"을 인쇄 한 다음name
을 입력하고surname
합니다. 기본적으로\(
variable_name
)
은 해당 변수의 값을 출력합니다.
let myName = "Homer"
하고let mySurname = "Simpson"
-myName
,mySurname
및 values :"Homer"
,"Simpson"
과 같이let
을 사용하여 상수 (변경할 수없는 변수)를 만듭니다.
greet(name: myName, surname: mySurname)
우리는 상수의 값을 공급 이전에 만든 함수 호출 -myName
,mySurname
.
REPL을 사용하여 실행 :
$ swift Welcome to Apple Swift. Type :help for assistance. 1> func greet(name: String, surname: String) { 2. print("Greetings \(name) \(surname)") 3. } 4> 5> let myName = "Homer" myName: String = "Homer" 6> let mySurname = "Simpson" mySurname: String = "Simpson" 7> greet(name: myName, surname: mySurname) Greetings Homer Simpson 8> ^D
REPL에서 종료하려면 Ctrl + D 를 누릅니다.
스위프트 설치하기
먼저 컴파일러와 구성 요소를 다운로드 합니다.
다음으로 경로에 Swift를 추가하십시오. macOS에서 다운로드 가능한 툴체인의 기본 위치는 / Library / Developer / Toolchains입니다. 터미널에서 다음 명령을 실행하십시오.
export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}"
Linux에서는 clang을 설치해야합니다.
$ sudo apt-get install clang
Swift 도구 체인을 시스템 루트가 아닌 다른 디렉토리에 설치 한 경우 Swift 설치의 실제 경로를 사용하여 다음 명령을 실행해야합니다.
$ export PATH=/path/to/Swift/usr/bin:"${PATH}"
다음 명령을 실행하여 현재 버전의 Swift를 확인할 수 있습니다.
$ swift --version
Mac에서 Swift의 첫 번째 프로그램 (놀이터 사용)
Mac 에서이 링크 를 따라 Mac App Store에서 Xcode를 다운로드하여 설치 하십시오 .
설치가 완료되면 Xcode를 열고 Playground로 시작하기를 선택 하십시오 .
다음 패널에서 놀이터 이름을 지정하거나 MyPlayground
그대로두고 다음을 누를 수 있습니다.
놀이터를 저장할 위치를 선택하고 만들기를 누릅니다.
놀이터가 열리고 화면은 다음과 같이 보일 것입니다 :
놀이터가 화면에 표시 되었으므로 ⇧ + cmd + Y 를 눌러 디버그 영역 을 표시하십시오.
마지막으로 놀이터에서 텍스트를 삭제하고 다음을 입력합니다.
print("Hello world")
디버그 영역 에서는 'Hello world'가 표시되고, 사이드 바에 는 'Hello world \ n'이 표시됩니다.
축하해! Swift에서 첫 번째 프로그램을 만들었습니다!
iPad의 Swift Playgrounds 앱의 첫 프로그램
Swift Playgrounds 앱은 이동 중에도 Swift 코딩을 시작할 수있는 좋은 방법입니다. 그것을 사용하려면 :
1- App Store에서 iPad 용 Swift Playgrounds 다운로드.
2 - 응용 프로그램을 엽니 다.
3 - 내 운동장 탭에서 왼쪽 상단의 + 를 탭한 다음 빈 템플릿을 선택합니다.
4- 코드를 입력하십시오.
5 내 코드 실행을 눌러 코드를 실행합니다.
6- 각 줄의 앞면에 결과가 작은 사각형에 저장됩니다. 결과를 나타 내기 위해 탭하십시오.
7 - 코드를 천천히 실행하여 코드를 추적하려면 내 코드 실행 옆에있는 버튼을 누릅니다.
선택적 값 및 선택적 enum
값의 부재를 처리하는 선택적 유형입니다. 선택사는 "값이 있고 x와 같거나" "전혀 가치가 없다"라고 말합니다.
선택 사항은 실제로는 Swift의 새로운 슈퍼 파워 기반 열거 형 중 하나입니다. 여기에는 None
과 Some(T)
두 가지 값이 있습니다. 여기서 T는 Swift에서 사용 가능한 올바른 데이터 유형의 관련 값입니다.
예를 들어이 코드 조각을 살펴 보겠습니다.
let x: String? = "Hello World"
if let y = x {
print(y)
}
실제로 위의 코드에서 print(x.dynamicType)
문을 추가하면 콘솔에 다음과 같이 표시됩니다.
Optional<String>
끈? 는 선택적으로 구문 론적으로 설탕이며 선택적은 그 자체로 유형입니다.
Xcode의 코드에서 Optional이라는 단어를 command- 클릭하여 볼 수있는 Optional의 헤더를 단순화 한 버전입니다 :
enum Optional<Wrapped> {
/// The absence of a value.
case none
/// The presence of a value, stored as `Wrapped`.
case some(Wrapped)
}
선택 사항은 실제로 열거 형이며 일반 유형의 래핑과 관련하여 정의됩니다. 두 개의 케이스를 가지고 .none
값이 없음을 나타내고,하기 .some
래핑 된 형태의 결합 된 값으로 저장되어있는 값의 존재를 나타 내기 위해.
내가 다시 그것을지나 가게해라. String?
String
아니라 Optional<String>
입니다. Optional
이 유형이라는 사실은 자체 메서드 (예 : map
및 flatMap
가 있음을 의미합니다.