[iOS/OSX] NSNotification, NSNotificationCenter 기초 가이드

말이 약간 어렵지만 '앱 내부에 시그널 패스가 연결되지 않은 곳에 메시지를 어떻게 던질 것인가' 라는 의문이 나온다면 NSNotificationCenter 를 쓰는 것이 답이다. 좀 더 단순히 이야기 하자면, 앱 내에서 아무 데서나 메시지를 던지면 앱 내의 아무데서나 이 메시지를 받을 수 있게 해 주는 것이 NSNotificationCenter 의 역활이다. 그리고 이 메시지 내용을 감싸는 껍데기가 NSNotification 오브젝트이다.

[Emacs] Magit을 이용해 다른 브랜치의 일부 파일 머지하기

이미지
앞서 Git를 이용해 다른 브랜치의 일부 파일 복사해오기 라는 주제의 글을 올렸는데 같은 작업을 Magit을 이용해 좀 더 간단히 할 수 있다.

[Git] 다른 브랜치의 일부 파일 복사(패치) 하기

이미지
Git로 다수의 브랜치를 관리하며 브랜치간 머지(merge) 하기는 굉장히 간단한 일이다. 하지만 의외로 다른 브랜치의 일부 파일만 복사(즉 파일간 머지)해 오는 형태의 작업은 많이 하지 않나보다. 찾아보니 의외로 기존 명령어에 옵션을 하나 추가해서 간단히 할 수 있었다.

[Objective-C] 블럭 문법 (Blocks Programming)

최근 iOS나 OS X SDK Framework 를 보고 있다면 블럭에 기반한 메소드들이 점점 늘어나는 것 같다. 상황에 따라서 들여쓰기 레벨이 높아지거나 좀 불안한(?) 코드 모양이 나오는 듯 코드 리딩에 안좋은 모양새를 나타낼 때도 있지만, 그래도 여러 면에서 유용한 기능(?)이니 이 참에 메모를 남겨본다.

[iOS] CLGeocoder를 이용해 현재 위치의 주소 얻기

위도/경도 등의 위치 좌표를 이용해 현재 위치의 주소를 얻는 것을 Reverse Geocode 라고 부른다. 현재 iOS SDK 에서는 CLGeocoder 를 이용해 리버스 지오코딩을 할 수 있다.

[iOS] CoreLocation Framework를 이용한 현재 위치 찾기

iOS에서는 Mapkit을 이용하면 간단하게 현재 위치를 지동 상에 표시하는 것이 가능하다. 하지만 이건 MKMapView 를 사용 할 때의 이야기이다. 맵뷰를 사용하지 않고 현재 위치를 찾으려면 CoreLocation Framework를 이용해야 한다.

[iOS/OSX] 난수 만들기 (Random Number Generation)

Objective-C나 Swift에서 난수 관련된 함수들 이름이 좀 독특해서 잘 외워지지 않기에 메모를 남긴다.