Swifter {Swift Developer}

메뉴

 

Swift 프로그래밍 언어란?

swift-logo-hero

Swift는 Apple사의 iOS/OS X를 위한 프로그래밍언어입니다. WWDC(Worldwide Developers Conference) 2014에서 발표되었습니다. Apple의 운영체제에서 실행되는 앱 개발에 기존부터 사용되고 있던 Objective-C와 공존하는 형태가 됩니다.

Swift는 멀티패러다임 컴파일러 프로그래밍 언어이지만, Xcode의 Playgrounds에서나 터미널에서 대화식으로 디버깅할 수 있습니다. LLVM 컴파일러를 사용하고 있으며, 라이브 코딩에 대응하고 있는 것이 특징입니다. 병렬 스크립트 언어 Swift는 이름은 같지만 다른 언어입니다.

[alert style=”info”]1. 역사[/alert]
Swift는 2010년 LLVM의 시초가 된 Chris Lattner에 의해 개발이 시작되었습니다. 이후 Apple 사내의 4년간의 개발기간을 거쳐 2014년 WWDC에서 일반인들에게 발표된 동시에 Apple 개발자등록을 하고 있는 개발자들에게 베타버전 제공을 시작하였습니다.

 

[alert style=”info”]2. 특징[/alert]

Apple은 Swift 발표시, “모던, 안전, 고속, 인터랙티브”를 큰 특징으로 꼽습니다.

모던 – 폐쇄 또는 튜플 제네릭 프로그래밍, Optional형의 채용등을 들 수 있습니다.

안전 – 정적인 형 검사 변수의 초기화 강제 숫자 형식의 오버플로우 검사, 자동참조 카운트에 의한 메모리 관리등을 말합니다. 또한, if문자의 괄호생략금지, switch-case문은 명시적으로 지정되지 않는한 실행되지 않도록 하는등의 기존 프로그래밍언어에서 버그가 발생하기 쉬운 부분을 문법적으로 해결하고 있습니다.

인터랙티브 – Swift는 컴파일러 언어이면서 인터프리터로 스크립트를 실행하는 것도 가능한 대화형 실행환경(REPL)도 준비되어 있습니다. Swift는 같이 발표된 Xcode 6에서는 소스코드를 실행결과를 그래픽으로 확인하면서 개발할 수 있는 Playgrounds가 구현되어 있습니다.

예제 소스코드

[swift]

println(“Hello World!”)  // 이렇게만 코딩해도 문자열이 출력됨

/*
*  주석은 C언어 스타일의 여러줄 주석처리와
*/
// C++언어 스타일의 한행 주석 모두 지원함

// var name:Type = value 에서 Type변수 name을 선언하고 value로 초기화
var explicitDouble:Double = 70 // 70.0

/// 형이 생략된 경우, 형추론을 통해 초기값 형태가 적용
var implicitInteger = 70    // Int
var implicitDouble = 70.0   // Double

// let name:Type = value 에서 Type형 정수name에 value를 설정함
// 형추론이 가능한 경우 형표기는 생략
let theAnswer = 42

// 식별자에는 대부분 유니코드 문자 사용 가능
let 오렌지수 = 3
let 딸기수 = 5

// 문자열 리터럴 “…”안에 있는 (expr)에 식expr 내용을 명시

let 오렌지설명= “나는 (오렌지수)개의 오렌지를 가지고 있다”  // ”나는 3개의 오렌지를 가지고 있다”
let 과일설명 = “나는 (딸기수 + 오렌지수)개의 과일을 가지고 있다 ” //”나는 8개의 과일을 가지고 있다”

// Swift는 사전도 기본 지원함
// 다음은 Dictionary<String, Int>형의 정수 사전정의를 보여주는 예
let people = [“Anna”: 67, “Bety”: 8, “Jack”: 33, “Sam”: 25]

//사전 내용을 열거 for (key, value) in dict { … }
for (name, age) in people {
println(“(name) is (age) years old.”)
}

// 메소드나 함수는 “func”문법을 사용하여 선언
// 파라미터 변수 명명법에 주의 -> 에서 리턴형을 선언
func sayHello(personName: String) -> String {
let greeting = “안녕하세요! ” + personName + “님”
return greeting
}
// “안녕하세요. 명준님” 출력
println(sayHello(“명준”))

[/swift]

 

[alert style=”info”]3. 문법[/alert]

이 부분부터 작성중입니다.

3-1. 상수와 변수

 

3-2. 기본 데이터형

 

문자열

 

배열

 

사전형

 

튜플

 

형 별칭

 

3-3. 연산자

 

3-4. 제어구조

if문

 

switch문

 

for/for-in문

 

while/do-while문

 

3-5. optional형

 

3-6. 패턴매칭

 

3-7. 함수와 클로져

 

함수

폐쇄

 

3-8. 열거형

 

3-9. 클래스와 구조체

 

3-10. 제네릭

 

3-11.기타

 

 

Facebook Comments

카테고리:   Swift Books

댓글

죄송하지만 댓글은 닫혀 있습니다.