카테고리
[iOS프로그래밍] Protocol ?
iOS 에서의 Protocol 은 어떤 의미를 가질까. 버젓이 Xcode 상에 Protocol 이라는 명칭으로 나온다. 흠... Network 상에서 Protocol 의 의미는 서로 다른 환경에서 "어떤 것"을 하기 위한 "약속"(통역)으로 의미를 하는데.... Objective-C 에서의 Protocol은 어떤 의미를 가질까... 조금 자세히 들여다보자. Objective -C 에서의 프로토콜을 간단하게 설명한 글이다 - Java 의 인터페이스 개념과 비슷하다. 자바에서는 클래스를 생성해놓고 인터페이스를 만들어서 다른 클래스에서 사용할 때 편리하게 하나의 메소드를 구현해놓고 사용이 가능하다!. - 여러 클래스에서 공통적으로 사용하는 메소드를 정의하는 수단이다. - 프로토콜에서 요구하는 메소드를 구현할 ..
[iOS프로그래밍] XCode Singleton 개념잡기
Singleton... 자주 언급되는데 막상 서적이나 Web 상에 많은 정보가 없네요... 소스야 짜면 짤수록 실력이야 느는게 당연한 것이고, 좀 더 깊게 공부하기 위해서 '디자인 패턴'과 '아키텍쳐' (개발구조)등에 대해서 쉬는날은 짬짬히 공부를 진행해야 할 것 같습니다. 금일은 Singleton, Singleton 이 뭔지에 대해서 공부를 해볼까 합니다. (국내에는 정보가 없고 외국사이트 http://cocoawithlove.com/2008/11/singletons-appdelegates-and-top-level.html를 참조했습니다) "전역변수"란 경험이 있는 프로그래머들에게는 두려움을 불러일으키는 용어라고 하는군요. 하지만 실제 전역변수는 어플리케이션에서 필요합니다. 전역변수를 사용하는 경우는,..
[iOS프로그래밍] 객체의 생성과 해제
iOS를 접하면서 가장 크게 겪고 있는 혼란(?)이 바로 요 "객체의 생성과 해제"부분입니다. JAVA에서는 new를 통해 객체를 선언만 해준다면, 알아서 초기화를 하고 '가비지 컬렉터'를 통해 자동으로 사용하지 않는 객체를 회수합니다. 물론 Xcode 4.2 부터는 ARC(Automatic Refrence Counting)이 생겨 release메소드를 사용하지 않고도 객체의 참조횟수와 변수의 규칙에 따라 객체를 해제하지만, - 잠시 ARC에 대해 짚고 넘어가자면, ARC는 객체를 참조한 횟수 (Refrence Count)와 변수의 유효영역 규칙(Scope Rule)에 따라 객체를 해제하는 것을 의미하며, 변수를 사용하고 해제 할 때 참조횟수가 1이 감소하고 이 값이 0이하이면 객체를 알아서 해제 하는 ..
[iOS프로그래밍] 가로모드, 세로모드 고정시키기
1. 세로 고정 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation ==UIInterfaceOrientationPortraitUpsideDown); } 2. 가로 고정 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationLand..
[iOS프로그래밍] NSDictionary를 파헤쳐보자
NSDictionary. 굉장히 많이 사용됩니다. NSArray 는 배열을 만들어놓고 index 값을 통해 사용을 하게 되지만, NSDictionary 는 Dictionary (사전)처럼 여러 변수를 넣어놓고 찾아서 쓸 수 있습니다. 각 변수는 "key 값"을 통해 찾게 됩니다. 사전에서 "ㄱ"을 찾아 단어를 찾듯이 말이죠. 뿐 아니라 요 NSDictionary는 안에 다른 종류의 객체도 가질 수가 있습니다. (그림출처 : http://blog.yagom.net/218) Dictionary 도 Array 와 같이 수정이 가능한 NSMutableDictionary와 NSDictionary 로 나뉩니다
[iOS프로그래밍] Xcode 4.2 Bad Access 오류는 NSZombieEnabled로 잡자!
가끔 시뮬레이터가 꺼지면서 Bad_Access가 나는 경우가 있더군요... 처음인 저는 너무나 당황했지만 (메모리 상 문제라고 뜨는데, 메모리 상 문제면 메모리 할당과 제거에서 제거 된 무언가를 불러온 경우)라 생각이 들었는데, 아직 소스가 익숙치가 않아서 고민하며 찾아봤더니 NSZombieEnabled 라는 것이 있더군요. NSZombieEnabled는 정확하지 않게 나오는 Bad_Access 오류를 조금 더 구체적으로 보여줍니다. 이를 테면, OOO 변수가 제거 되었는데, 불러오려고 했다 라는 등의 ... 그렇다면 Xcode 4.2 에서 NSZombieEnabled 를 사용하려면 Edit Scheme 에서 Run App이름 으로 되어 있는 부분에 Environment Varibales 에 위 그림과 ..
[iOS프로그래밍] Appdelegate
iOS프로그래밍 시리즈가 포스팅 순서가 두서없이 진행이 되고 있습니다. 실무를 하면서 공부하며 모르거나 개념이 확실치 않은 부분에 대해서 포스팅을 하는 거라 조금은 헷갈리실 수 있겠지만, 따로 순서가 있는 것이 아니니 필요한 부분만 발췌해서 혹시나 공부하시는 분들께 도움이 되었으면 합니다. Appdelegate Project 생성 후 생기는 파일들 중 appdelegate라는 것을 보셨을 겁니다. 이 Appdelegate가 뭘까?라는 부분에 대해서 포스팅을 진행하겠습니다. 어플리케이션 델리게이트는 다른 객체를 대신해서 책임지고 어떠한 일을 해주는 클래스 를 의미합니다. 전처리가 일어날 때 UIApplication클래스 대신하여 무언가를 할 수 있도록 해줍니다. 모든 cocoa 프로그램은 UiApplica..
2012년 봄 돌아온 "넬 5집"과 살아온 "버스커버스커 1집"
2012년 봄,포스팅의 제목과 같이 돌아온 "Nell"과 살아온 "버스커버스커"의 앨범에 대한 포스팅입니다. 2012년 가장 Hot 한 두 Album 신인인 버스커버스커와 4년만에 컴백한 Nell, 둘의 음악적 스타일과 직접적으로 비교하기엔 조금은 '뭐'한 부분이긴 하지만, 2012년 봄에 가장 어울리고 산뜻한 두 앨범을 고르라면 넬의 Slip Away와 버스커버스커 정규1집이 떠오른다. 두 앨범 사이에 뭔가 연관성이 있는 것도 아니지만, 두 밴드의 음악적 성향이 너무나 다르지만, 왠지 모르게 버스커버스커의 앨범이 나온 뒤 '넬'의 복귀소식에 두 밴드가 어딘가 모르게 닮았다는 생각이 드는 것도 사실이다. 큰 사랑을 받으며 내 iPod에서도 가장 즐겨 듣는 노래 중 하나가 된 '버스커버스커'의 벚꽃엔딩, ..