2014년 6월 30일 월요일

Xcode Playground Killer Codes

Xcode Playground Killer Codes in Swift Language (from Xcode 6 Beta 2)

Objective-C에서 Swift로 넘어가기 #2

앞서 썼던 Objective-C에서 Swift로 넘어가기 위한 글에 이어서 이번에도 스위프트로 넘어갈 때 알아두면 크게 손해보지는 않는(?) 사항 몇 가지를 정리해 본다. 이번 글은 NSFileManager를 다루면서 겪었던 다수의 짜증(?) 해결 과정을 담고 있다.

2014년 6월 23일 월요일

예제로 보는 스위프트(Swift) - MyDatetime 클래스

스위프트(Swift) 가이드 글을 올리고 나니 ‘안그래도 형편없는 글들인데 나눠져 있어서 찾아 보기도 힘들겠구나’ 라는 생각만 잔뜩 들었다. 그래서 차라리 동작 가능한 풀소스 예제를 올려보는게 더 낫겠다는 생각이 들어서 새롭게 글을 써 본다. 이번 예제는 심심해서 만들어 본 MyDatetime 클래스이다.

2014년 6월 18일 수요일

Swift - 병렬 프로그래밍(Concurrency Programming) 가이드

병렬 프로그래밍(Concurrency Programming) 이란 멀티스레딩 혹은 멀티프로세싱이란 말과 비슷한 개념이다. 백그라운드(background) 혹은 비동기(Asynchronous)로 작업을 처리한다던가, 동시에 여러가지 일을 처리하도록 하려면 이 병렬 프로그래밍에 대해 알아야한다. 여기서는 Swift에 한정해서 다룬다.

Swift - GCD(Grand Central Dispatch) 기초

GCD(Grand Centeral Dispatch)라는 표현을 정확히 뭐라고 표현해야 할지는 모르겠다. 대충 클로져(Objective-C 에서는 블럭) 단위로 병렬 프로그래밍(Concurrency Programming) 혹은 멀티 스레딩(Multi Threading)을 하기 위한 기술로 생각하고 있다. 물론 이 기술은 기존 Objective-C 에서도 잘 사용하던 기술인데 C API로 구성되어 있어서 스위프트에서도 비슷하게 이용이 가능하다.

물론 그 중심에는 Dispatch Queue 라는 개념이 있다. 큐 기반 병렬 프로그래밍은 잘 알려진 기법 중 하나이기도 하다.

Update: 예제 코드를 Swift 3 기반의 문법으로 업데이트 하였다.

Swift - NSOperationQueue 병렬 프로그래밍 기초

NSOperationQueue는 큐에 작업을 쌓아두고 이 작업들을 병렬로 처리하기 위한 클래스이다. 큐(Queue)라고 해서 한번에 하나씩 처리가 될 거라고 생각될 수도 있겠지만, 개별 작업을 개별 스레드에서 가능한 만큼 병렬로 한번에 실행시키려고 하는 기특한 녀석이다.

Swift - NSThread 병렬 프로그래밍 기초

병렬 프로그래밍(Concurrency Programming)의 전통적인 강자라면 역시 스레드(Thread)가 있겠다. 이번에는 NSThread에 관한 소개글을 메모한다.

2014년 6월 17일 화요일

Objective-C에서 Swift로 넘어가기

Objective-C 개발자가 스위프트(Swift)로 넘어가기 위해 필요한 지식을 약간 모아봤다.

Swift - 유용한 전처리기(Preprocessor)

전처리기(Preprocessor)란 말은 C나 C++에서 쓰이는 의미와 동일하다. 컴파일 타임 시 처리되는 특수한 구문으로 #으로 시작되는 명령어이다. 심지어 문법도 비슷하다. 하지만 심각한 차이점도 있다보니 별도로 메모를 해 두는게 좋을 것 같아서 글을 남긴다.

Swift 언어에 대한 인상

한 언어에 대한 전반적인 내용을 써 본 건 스위프트(Swift) 언어가 처음이다. 공부하는 겸 글을 싸질렀지만 그 덕분에 많은 도움이 되기도 했다. 그리고 그 덕분인지 언어에 대한 인상이라는 글을 쓸 기회가 생긴 것 같다.