CLOSE SEARCH
POSTS TAGGED WITH: Swift

Swift – showMeTheFunction(language: “Swift”)

Objective-C를 처음 접했을 때 가장 혼란스러웠던 점은 바로 함수를 정의하고 호출하는 방식이었습니다. helloworld();에 익숙했던 저는 [self helloworld];라는 문법에 적응하는데 많은 시간이 걸렸습니다. Swift의 함수를 공부하면서 그 때의 기억이 다시 떠오르는건 왜일까요? 하지만 모든 어려움과 생소함은 시간과 노력이 해결해 주고, 특히 이전에 아쉬웠던 점들이 많이 개선되었기 때문에 Objective-C를 공부할 때보다는 더 많은 기대를 가지고 공부를 할 수 있을 것 같습니다.

Swift – Change the flow

Swift는 애플에서 4년간 공들인 언어답게 Objective-C 언어에서 제공하는 기본적인 반복문과 제어문을 넘어서, 반복의 범위를 더 쉽게 지정할 수 있는 문법, Value Binding/Optional Binding과 제어문의 활용 등을 통해 복잡한 코드를 이전보다 훨씬 간결하게 표현할 수 있도록 도와줍니다. 특히 Switch문의 경우 Objective-C에서는 제공하지 않던 다양한 기능을 제공합니다. 저는 개인적으로 코드가 간결하게 정리되지 않는 느낌이 들어서(지극히 주관적입니다^^;) switch 문을 선호하지 않았지만, Swift에서는 너무 매력적인 기능들이 많아서 switch문을 적극적으로 사용하게 될 것 같습니다.

Swift – let collections = [“Array”, “Dictionary”]

Swift는 두가지 컬렉션 자료형을 제공합니다. Objective-C의 컬렉션은 모든 종류의 객체를 저장할 수 있었지만, Swift는 저장할 수 있는 자료형의 종류를 엄격하게 제한합니다. 예를 들어, String 배열에는 String만 저장할 수 있고, Int를 저장하는 것은 오류입니다. 이로 인해 컬렉션 자료형의 융통성은 거의 없어졌지만, 컬렉션에서도 일반화 프로그래밍의 이점을 얻게 되었습니다.

Swift – “String” + “Character”

@“hello world”가 아니고 “hello world”입니다. 이제 어느정도 골뱅이(@)에 적응이 되었다 싶었는데, 다시 C 스타일의 문자열로 되돌렸네요. 하지만 Swift의 String 자료형은 NSString 클래스와 긴밀하게 연동(toll-free bridged 와 유사하다고 보시면 됩니다)되어 있으므로, @만 빼고 마치 NSString 클래스를 사용하듯이 쓰면 됩니다.

Swift – Operators && Operator Function

Swift에서는 Objective-C에서 제공했던 대부분의 표준 연산자들을 제공합니다. 한발 더 나아가, 그동안 연산자들을 사용하면서 자주 발생하는 실수들을 사전에 방지할 수 있는 다양한 기능들을 제공합니다. 그리고 기본 연산자의 동작을 재정의하거나 +++ 와 같은 새로운 연산자를 만들어서 사용할 수 있도록 해줍니다.

Swift Basics – Variables, Constants, Data Types, Tuples, Optionals

Comments

Swift에서는 Objective-C와 매우 유사한 방식으로 주석을 사용할 수 있습니다.  한줄 주석(//) 과 여러줄 주석(/* */)을 추가하는 방식은 동일하지만, 여러줄 주석의 경우 주석 내부에 또 다른 여러줄 주석을 내포할 수 있습니다. 그래서 주석을 작성할 때 */ 때문에 받았던 스트레쓰!가 사라지게 되었습니다 :)

 

Variables & Constants

Swift의 변수와 상수는 다른 언어와 개념적으로 동일하지만, 선언 문법에서 큰 차이를 보입니다. 변수를 선언할 때는 키워드 var, 상수를 선언할 때는 키워드 let을 사용합니다. 특히, 상수는 Swift에서 광범위하게 사용하며, 단지 변경될 필요가 없는 값을 저장하는 것 이상으로 코드를 좀 더 안전하고 이해하기 쉽게 하는 역할을 담당하고 있습니다.

Swift – Quick Tour

새로운 언어는 프로그래머에게 어떤 의미를 가질까요? 처음부터 다시 배워야 하는 골칫덩어리? 아니면 새로운 자극제?
Swift를 바라보는 시각은 사람마다 모두 다르겠지만, 저처럼 예상하지 못했던 한방(?)에 당황하신 분들은 많으시리라 생각됩니다.
Objective-C라는 멋진 언어를 두고 새로운 언어를 개발자들에게 던져준 애플의 의도가 무엇일까요? Swift를 Java나 C#처럼 앱과 웹을 모두 개발할 수 있는 언어로 만들려는 것일까요?