환경준비
맥, Xcode
Objective-C
C 에 기반, Smalltalk 에서 Java 와 Objective-c 로 갈라져 나왔다
@문자를 사용한 추가적 문법
@property 키워드를 이용해 get/set 처리
클래스 선언 (헤더, .h)
@interface 클래스명 : 슈퍼클래스 {
인스턴스 변수 선언
}
- (리턴타입)인스턴스 메소드 명:매개변수 선언
@end
클래스 구현 (모듈, .m)
@implementation 클래스
~ 헤더에서 선언한 것들을 구현 ~
- (리턴타입)인스턴스 메소드 명:매개변수 선언
{
내용
}
@end
기본문법
[object message:parameter];
IBAction, IBOutlet
IBAction : Interface Builder 에서 그려준 객체 중 동작을 처리하는 객체들에 대해 사용자의 인터랙션에 따라 메소드를 정의하는 키워드
IBOutlet : Interface Builder 에서 그려준 객체를 소스상에서 판별 할수있게 하는 키워드, IB – Xcode 로의 접점
액션 메소드의 일반적인 형태
- (IBAction) 메소드명:(id)sender;
아웃렛의 일반적인 형태
@property (nonatomic, retain) IBOutlet 객체클래스명 *객체명;
Outlet 을 연결하는 방법
객체의 connection 에서 App Delegate 로,
App Delegate 의 connection 에서 객체로
아웃렛은 App Delegate 에서 컨트롤 드래그하여 객체로
액션은 객체에서 App Delegate 로 컨트롤 드래그
Object 의 생성과 소멸
alloc : 메모리에 자리 잡게한다, init : 초기화 –> retain count : 1
retain count 가 0 이상이면 메모리 상에 살아있고 0 이 되면 소멸된다.
retain : –> retain count : 2
release : –> retain count : 1
SandBox
어플리케이션은 보호된 영역 내에서만 리소스에 접근할 수 있다.