티스토리 뷰

2014년 6월, 애플은 iOS 기반에서 어플리케이션 개발을 할 수 있는 새로운 언어(WWDC, World Wide Developers Conference에서 발표)를 발표하였죠. 

Fast(빠르고), Modern(현대적이고), Safe(안전하고), Interactive(상호작용 가능한)라는 특징을 가지고 나오게 된 스위프트(Swift)는 오브젝티브 C(Objective C)를 반드시 알아야만이 iOS 어플리케이션을 개발 할 수 있었던 단점을 보완했습니다.


Apple 로고



2014년에는 스위프트 1.0이, 2015년에는 스위프트 2.0이 발표가 되었는데요. 스위프트 2.0부터는 형검사와 형변환등에 대해서 더욱더 강력해졌고, 이에 따라 안정성이 높아졌다는 평가입니다. 



스위프트 공부하기



저도 개인적으로 오브젝티브 C를 공부하다가, 

기존의 문법과 너무 다른 방식으로 눈에 익지않아 포기를 했었는데요.


오늘부터 새로운 언어 스위프트( Swift)를 공부해 볼까 합니다.

이 글에서는 스위프트와 오브젝티브 C의 차이점에 대해서 알아볼까 합니다.


1. 메소드 호출 방식


오브젝티브 C와 스위프트 언어의 가장큰 차이는 문법인것 같네요. [] 기반으로 메소드를 호출했던 오브젝티브 C와는 달리 스위프트는 다른 언어와 마찬가지로 ()방식을 이용합니다. 이는 기존의 언어에 익숙했던 개발자들에게 가독성을 높여주는 역할을 하면서, 개발 편의성을 제공해주기도 할 것이로 보입니다. 


2. 자료형


오브젝티브 C는 자료형에 대한 제한이 없었으나, 스위프트는 자료형을 제한합니다. 

스크립트 언어(VBScript등)에서 많이 쓰는 Implicit(암묵적) 타입을 사용하지 않고, 명시적 타입을 사용하여 코드의 일관성과 가독성을 높여 주게 됩니다.


변수의 선언은 var로 선언이되고, 아래와 같이 String 변수와 Int 변수를 이용하여 String 으로 만들고자 하면 Int의 값을 String으로 변환해야 합니다.


let nPoint = 50

let strPoint = "점입니다."

let strResult = String(nPoint) + strPoint // strResult는 50점입니다와 같은 문자열로 변환됨


3. 높은 안정성


스위프트를 개발한 애플의 목적이 새로운 언어에는 안전한 언어로 개발하는데 있었습니다.

따라서 스위프트는 오브젝티브 C보다 훨씬 안정성이 높고, 안전한 언어일 수 밖에 없습니다. 예를 들면 변수에 대한 초기화를 언어 기반에서 요구시켜, 변수의 잘못된 사용을 막아줍니다.


4. 스위프트는 컴파일러 기반 언어


스위프트는 컴파일러 언어입니다. 따라서 C, C++과 같이 작성된 코드가 컴파일 되기 전에는 실행에 대한 결과를 알 수가 없습니다. 하지만  Playground라는 기능을 제공하여 컴파일이 필요치 않은 간단한 코드를 컴파일 없이 실행할 수 있습니다. 이를 이용하여 디버깅의 편리성도 제공하고 있습니다.


애플 스위프트(Swift)


스위프트 공부할 수 있는 자료는 웹상에서도 많은데요.

애플의 자료를 한글화한 http://swift.leantra.kr/가 가장 무난하지 않나 싶네요.


시간이 나면 스위프트에 대한 공부를 본격적으로 시작해봐야 할 것 같습니다. 

그럼 이만 줄이겠습니다. 


이 글이 도움이 되셨으면, 아래의 하트를 눌러주세요.


댓글