Objective C 기초
- 최초 등록일
- 2011.07.03
- 최종 저작일
- 2011.07
- 11페이지/ MS 워드
- 가격 2,000원
소개글
Objective C가 좋은 이유
배우기가 쉽기 때문이다. C++과 비교할 때, 정말 쉽게 배울 수 있고, 반면 기능은 막강하기 때문이다. 물론 C와 비교해서도 좋은 이유는 객체지향 프로그래밍 언어이기 때문이다. Objective C는 단순하면서도 뒤에 배우겠지만 dynamic binding이 가능해서 막강한 프로그래밍이 가능하다.
물론 메모리관리는 C++ 대비 조금은 귀찮게 느껴지는 부분이긴 하지만, 어느 정도 익숙해지면 뭐 그다지 어려운 부분이 아니다. 또한 compiler가 실수로 놓치는 부분을 다 알려주기 때문에 실제로 문제가 되는 경우는 별로 없다.
무엇보다 가장 objective C가 좋은 점은 뭐니뭐니해도 가장 큰 시장인 app store에 자신이 만든 S/W를 판매하고 돈도 벌 수 있다는 점이 아닐까.
이러한 objective C는 배우기가 쉽다는 것도 하나의 큰 장점이다. 기본만 익히면 그 표현을 반복해서 써 먹을 수 있는데다가, 크게 머리를 써야하는 일이나 어려움 없이 사용할 수 있다. 제목과 같이 objective C의 기본적인 특성들을 요약 정리해서 초보자들도 쉽고 빠르게 감을 잡고 입문할 수 있도록 하였다.
목차
1. Objective C의 기초
2. Objective C가 좋은 이유
3. 객체지향 그리고 Class, Object, Instance 맛보기
4. Calling Methods란 (객체의 mothod를 호출하는 법)
5. 접근자란 무엇인가 (Accessors / getter, setter)
6. Class 설계하기
7. 클래스 초기화 (init method란)
8. 메모리 관리
9. 콘솔출력 (Logging)
10. Nil 이란? - Null pointer
11. 기존 객체에 나만의 method를 쉽게 추가 (Categories)
12. 프로토콜이란 (Protocol)
본문내용
Objective C의 가장 큰 장점 중의 하나는 class 설계가 간단하다는 것이다. 파면 팔 수록 끝이 없는 C++의 class와는 비교도 안 될 정도로 간단하고, 기능은 powerful하다는 것이 큰 매력이라고나 할까. 크게 두 가지를 정의해 주면 된다. Interface와 implementation이다. Interface는 .h의 header file을 말한다. C나 C++등의 다른 언어와 동일한 concept이라고 할 수 있다. Implementation file은 .m 파일을 말하는데, 이것은 .c나 .cpp과 동일한 개념이다. Implementation의 앞 음절을 따서 .m이라고 하는 것이다.
먼저 interface를 살펴보자. 즉, header file(.h파일을 말하는 것으로써, 여기서는 Photo.h파일을 의미함)을 살펴보는 것이다.
#import
@interface Photo : NSObject {
NSString* caption;
NSString* photographer;
}
- (NSString*) caption;
- (NSString*) photographer;
- (void) setCaption: (NSString*)input;
- (void) setPhotographer: (NSString*)input;
@end
처럼 하게 되는데, 이는 NSObject란 class의 상속을 받아서 Photo란 class를 설계하겠다는 뜻이다. 물론 NSObject 없이 그냥 맨땅에 헤딩, 즉 처음부터 자신만의 class를 설계할 수도 있다. 그런데, 대부분 편리한 기능이 NSObject에 구현되어 있으므로 상속받아 사용하면 편리할 때가 많다. NSObject는 NS가 Object앞에 붙어있는 이름인데, NS는 대부분의 Objective C 객체 이름의 접두어로 붙어다닌다. NS는 스티브잡스가 NextStep이란 회사를 운영하면서, 앞자를 따서 붙인 이름이다. 맨 처음 NS어쩌고 하는 단어를 보면 많이 어색한데, 배경을 알고나면 뭐 너무 허무하기 까지 하다. NSString, 등등 모든 NS객체는 그 상위 클래스가 있는데, 그 것이 바로 NSObject이다.
참고 자료
없음