NSObject 클래스 ───────────── 인스턴스를 생성할 때는 alloc 메소드를 이용한다고 설명했습니다. 그런데, NSDate의 클래스 레퍼런스를 찾아봐도 alloc 메소드에 대한 설명은 보이지 않습니다. 객체지향 언어에서는 어떤 클래스의 자원을 바탕으로 또 다른 클래스를 작성하는 상속이 많이 이용됩니다. alloc 메소드는 NSDate 클래스가 상속하고 있는 NSObject 클래스에 있는 메소드 입니다. 이 때 바탕이 되는 클래스를 슈퍼클래스(superclass), 그것을 상속하는 클래스를 서브클래스(subclass)라고 합니다. NSDate 클래스는 NSObject 클래스의 서브클래스 입니다. NSDate -(상속)-> NSObject 이 NSObject 클래스는 Cocoa 환경에서 모든 ..
클래스에 준비되어 있는 메소드 파악하기 ────────────────────────────── 인스턴스를 생성하면 그 클래스에 준비되어 있는 다양한 메소드를 이용할 수 있습니다. 물론 그렇게 하기 위해서는 클래스에 어떤 메소드가 준비되어 있는지를 알아 둘 필요가 있습니다. 이 때 활약하는 것이 온라인 매뉴얼입니다. 온라인 매뉴얼은 Xcode의 [help] 메뉴에서 [Developer Documentation]을 선택하면 표시됩니다. 오른쪽 위에 있는 [Search] 필드에 키워드를 입력해 도큐멘트를 검색할 수 있습니다. 지금부터 나오는 설명은 Xcode3을 예로 설명합니다. 온라인 매뉴얼의 툴 바에 있는 [Home] 메뉴에서 [Mac OS X 10.6 Core Library]를 선택하여 [Core Ref..
2011년 7월 그동안 버려두었던.. 티스토리 블로그를 다시 시작하면서 많지는 않지만 하루에 하나 혹은 몇일에 하나정도 포스팅을 했던것들을 정리해봤습니다. 전체등록 포스트수 : 86 월별 글 수 분기별 글 수 2011년 3분기 41 2011년 4분기 45 시간별 글 수 카테고리별 글 수 그냥좋아!!/IT관심사 (5) 그냥좋아!!/MAC (7) 그냥좋아!!/Zero (1) 그냥좋아!!/iPhone (4) 그냥좋아!!/음악 (21) 그냥좋아!!/최근이슈 (2) 불사르자!!/ETC (1) 불사르자!!/Objective C (4) 불사르자!!/XE / ZEROBOARD (1) 불사르자!!/iOS (10) 즐겨보자!!/그냥 (8) 즐겨보자!!/기타 (3) 즐겨보자!!/스물네살의 그림일기 (6) 즐겨보자!!/일상1..
인스턴스가 생성되는 과정 ──────────────────── 인스턴스화, 즉 기존의 클래스로부터 인스턴스를 생성하기 위한 흐름은 다음과 같습니다. (1) 인스턴스를 저장하기 위한 변수를 선언한다. (2) 인스턴스를 생성한다. 인스턴스를 저장하는 변수의 선언 먼저 인스턴스 변수의 선언입니다. 여기서는 int형이나 float형 같이 C언어에 원래부터 있던 자료형과 Objective-C 객체의 데이터를 구별하기 위해서 전자를 기본 자료형, 후자를 객체형이라고 부르겠습니다. 인스턴스를 저장하기 위해서는 기본 자료형 변수의 선언과 마찬가지로 사전에 객체형 변수를 선언해야 합니다. 이 때 다음과 같은 형식으로 사용합니다. 기본 자료형 변수의 선언과 달리 변수 앞에 *가 붙어 있다는 점에 주의해야 합니다. (Obj..
인스턴스 메소드와 클래스 메소드 ────────────────────────── 클래스에 준비되어 있는 메소드는 인스턴스 메소드와 클래스 메소드의 2종류로 크게 나눌 수 있습니다. 인스턴스 메소드는 인스턴스에 대해 실행하는 메소드 입니다. 인스턴스 메소드의 실행 [인스턴스 메시지] 예를 들어, 다음 예에서는 myself라는 인스턴스의 이름을 구하는 name 메소드를 실행하고 있습니다. name1 = [myself name]; 이것은 개별 인스턴스에 대해서 실행하고 있으므로 인스턴스 메소드입니다. 이에 비해, 특정 인스턴스에 의존하지 않는 메소드를 클래스 메소드라고 부릅니다. 클래스 메소드는 다음과 같이 실행할 수 있습니다. 클래스 메소드의 실행 [클래스 메시지] 다음에 상세히 설명하겠지만 인스턴스를 생성..
메소드의 호출 방법에 대한 예비지식 ─────────────────────────── Objective-C의 메소드 호출 방법은 조금 특수합니다. Java나 C++ 같은 일반적인 객체지향 언어를 경험하신 분들은 익숙해지기 전까지 조금 어렵게 느껴질 수도 있습니다. Objective-C의 메소드 호출 방식은 다음과 같습니다. 메시지 방식 [객체 메시지] 전체를 대괄호 []로 에워싸고 객체와 메시지는 사이에 공백을 두어 구분합니다. 이렇게 하면 Receiver인 객체로 메시지가 보내지고, 대응하는 메소드가 호출됩니다. 메시지의 반환값을 변수에 대입할 때는 다음과 같이 합니다. 메시지의 반환값을 변수에 대입 변수 = [객체 메시지] 이 때 메시지가 게터 메소드처럼 인수를 가지지 않는 메소드인 경우에는 메소드의..
NSLog 함수에 대해서 ──────────────── NSLog(@"Hello, World!"); NSLog 함수의 인수로는 Objective-C의 문자열을 전달합니다. 여기에서 Objective-C의 문자열이라는 것은 정확하게 NSString 클래스의 인스턴스 입니다. 원래는 어떤 클래스에서 그 오브젝트인 인스턴스를 생성하기 위해서는 보통 alloc 메소드 드으이 전용 메소드를 실행할 필요가 있습니다. 다만 문자열은 빈번하게 사용하기 때문에 다음과 같은 형식으로도 NSString 클래스의 인스턴스를 간단히 생성할 수 있도록 되어있습니다. NSLog, NSString과 같이 Cocoa 환경의 클래스와 함수의 이름은 'NS'로 시작합니다. 이는 Mac OS X의 전신인 'NeXTSTEP'의 약자입니다. ..
헤더파일의 저장소 ─────────────── #import 이것은 Foundation 프레임워크의 'Foundation.h'라는 헤더파일을 읽어 들이는 프리프로세서 지시문인데, 프레임워크와 헤더파일은 어디에 있는걸까요? 우선 프레임워크의 경우 Mac OS X에서는 시동 디스크의 [시스템] - [라이브러리] - [Frameworks] 폴더 아래에 프레임워크별 폴더로 나뉘어 저장되어 있습니다. Foundation 프레임워크의 경우는 [Foundation.framework] 폴더에 프레임워크 본체와 헤더 파일이 저장되어 있습니다. Foundation 프레임워크의 헤더파일은 [Foundation.framework] 폴더의 [Headers] - 'Foundation.h'가 됩니다. 헤더 파일은 일반적인 텍스트 ..
- Total
- Today
- Yesterday
- Programming
- Spring Framework
- Java
- iBATIS
- oracle
- 아이폰 어플리케이션
- 오브젝티브 C
- 제이쿼리
- IT
- MySQL
- 자바
- Objective C
- 티스토리챌린지
- MAC OSX 10.7
- Objective-C
- iOS 개발
- 오브젝트 C
- zero
- 아이폰
- JSP
- iPhone
- 자바스크립트
- JavaScript
- 아이폰 개발
- Spring
- SQL
- 오블완
- jQuery
- tomcat
- Object C
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |