Swift/Objective-C 오브젝트 직렬화(Serialization)

직렬화(Serialization) 라는 표현은 대개 OOP언어에서 특정 클래스 오브젝트를 파일로 저장하거나 파일에서 읽어들일 때, 혹은 네트워크 등으로 전송하거나 받거나 하기 위해 특수하게 가공하는 것을 의미한다. Objective-C나 Swift에서는 이 부분에서 인코드(Encode), 디코드(Decode) 용어를 사용한다.

[Xcode] Swift 프로젝트의 디버그(DEBUG) 플래그

이미지
Objective-C 프로젝트에서는 자동으로 정의되는 매크로(Preprocessor Macro)가 있어서 앱이 디버그 빌드인지 파악이 가능하다. 하지만 Swift 프로젝트에서는 자동으로 생성되지 않기 때문에 수동으로 처리해야 한다. 이번 글은 이 디버그 플래그를 생성하고 사용하는 방법에 관한 것이다.

[OSX] 알림센터를 이용해 알림 띄우기

이미지
이번 글은 OS X의 알림을 표시하는 방법에 대한 것이다. 알림(Notification)이라 표현했는데, 이 알림 기능은 OS X Lion 에서 추가된 OS X 알림 센터를 의미한다.

iOS 8 이상에서 LocationManager 가 작동 하지 않는 경우

iOS 8 부터 또 새로운 보안 강화안이 마련된 것 같다. 이번 포스팅은 CLLocationManager를 이용하고자 할 때의 변동사항을 정리한다.

[Swift/ObjC] 딜레이 이후 실행하기

특정 사유로 특정 코드를 특정 시간 이후에 실행시켜야 할 경우가 있다. 이유야 어쨌든, 이렇게 특정 시간(딜레이, Delay) 이후에 코드를 실행시키도록 하는 코드를 알아보자.

Swift String의 split과 join

Swift의 String은 split이나 join 같은 기능을 제공하지 않는다. 이게 뭐 대단한 사실은 아니지만, Python에서 개인적으로 문자열의 split이나 문자열 배열 join 기능은 굉장히 유용하고 자주 사용하는 기능이었기에 Swift에도 있었으면 했다. (왠지 이번에도 Python 중독자 이야기가 되는 것 같다 -_-)

Swift의 String을 Python스럽게 만들어보기

Objective-C의 카테고리 기능은 기존 클래스를 확장하는 용도로 많이 사용된다. Swift에서는 비슷한 기능을 Extension 이라는 기능으로 제공하는데, 이를 잘 활용하면 기본 클래스의 기능을 더욱 확장할 수 있어서 좀 더 편한 코딩이 가능하다.