IT 201

Object-C 기본문법, 클래스 인터페이스 정의 및 클래스 구현

클래스 구성 2개의 파일로 나뉨 SomeClass.h : 클래스의 인터페이스 정의, 공개 메소드, 인스턴스 변수 SomeClass.m : 실제적 구현 및 Private 메소드 클래스 인터페이스 구현 아래코드는 비디오클립 헤더 파일인 Clip.h #import //필요한 파일을 불러옴 @interface clip : NSObject //NSObject의 하위클래스인 clip 클래스 정의를 시작 { // 아래는 인스턴스 변수 정의 int PlayCount; NSString *vid; NSString *title; NSString *orginalURL; } // 아래는 메소드 정의 + clip; // +는 클래스 메소드임을 뜻함 - (BOOL) isNewClip; // -는 인스턴스 메소드를 뜻함 @end /..

IT/아이폰 개발 2009.06.27

Object-C 기본문법, 클래스 프로퍼티 설정

인스턴스 변수를 프로퍼티로 선언하게 되면, 자동으로 접근자가 생성되는 등의 장점이 있다. Clip.h의 인스턴스 변수를 프로퍼티로 선언한 코드 (굵은 글씨) @interface Clip : NSObject { int PlayCount; NSString *vid; NSString *title; NSString *originalURL; } @property (retain) NSString *vid; @property (retain) NSString *title; @property (retain) NSString *originalURL; + clip; - (BOOL) isNewClip; @end @property를 이용해서 프로퍼티 정의함. (retain)은 Setter에 입력되는 값을 유지하라는 의미. Cl..

IT/아이폰 개발 2009.06.27

Object-C 기본문법, 객체생성 방법

2가지 방법이 있음. 첫 번째 : NSString *aString = [NSString string]; 두 번째 : NSString *bString = [[NSString alloc] init]; 바로 사용시에는 둘 간의 차이가 없으나 메모리 관리에서 차이가 있음. 첫 번째 방법은 string함수가 객체를 생성해 줌. 따라서 메모리 관리는 자동적임. 즉, 사용이 끝나면 자동적으로 반환됨. 단, 강제로 반환하면 에러를 발생시킴. 두 번째 방법은 수동으로 메모리 할당. 사용이 끝나면 꼭 반환해야 함.

IT/아이폰 개발 2009.06.27

Object-C 기본문법, 접근자 사용법

모든 인스턴스 변수는 Object-C에서 private 인 이유로 값을 가져오거나 설정하기 위해서는 접근자를 사용해야 함. Object-C 2.0에서 점( . )을 이용한 접근이 추가되었음. (마치 public인 것처럼) 다른 객체지향언어에서도 그렇지만 개인적으로 setValue, getValue 형태의 접근자를 설정해 사용하는 것이 좋다고 생각함 Object-C 기존 방법 [objectA setTitle:@"안녕하이"]; NSString *title = [objectA title]; objectA에 setTitle이라는 접근자 사용 Object-C 2.0 에서 추가된 방법 objectA.title = @"안녕하이"; NSString *title = objectA.title; *접근자: 변수에 접근하기 ..

IT/아이폰 개발 2009.06.27

Object-C 기본 문법, 메소드 호출 방법

기본 호출 방법 [Object method]; [Object method:input]; Object : 오브젝트 명 method : 매소드 input : 입력 매개변수 값을 돌려 받을 때 output = [Object method]; output = [Object method:input]; 객체를 돌려 받을 때 id newStringObject = [NSString string]; NSString *newStringObject = [NSString string]; 둘은 같은 의미, 명확한 경우는 id를 사용하는 것도 나쁘지 않으나, 실수를 증가시킬 우려가 있음. id : 모든 객체, 어떤 것이든 대체 가능함을 의미, 본래 포인터 타입이므로 *이 불필요 NSString : 클래스 string : 객체를 반..

IT/아이폰 개발 2009.06.27

아이폰 개발환경구축3 - Xcode 개발자 프로파일 추가

이번에는 Xcode에 개발자 프로파일을 추가한다. Xcode는 애플의 개발환경이며, Apple Iphone SDK를 설치하면 자동으로 함께 설치된다. 실행하기 위해서는 데스크탑(바탕화면)의 자신의 하드디스크 (예: Macintosh HD)에 Developer > Applications 디렉토리에 위치한 Xcode를 실행시키면 된다. 1. Xcode를 실행한다. 2. 처음 실행하면 위와 같은 화면이 뜨는데, 여기서 보지 말고 메뉴의 Window > Organizer 를 실행시킨다. 3. 개발용으로 사용할 아이팟터치(아이폰)을 연결시킨다. 연결시키면 다음과 같이 인식을 하게 되는데, "Use for Development"를 클릭하면 "Organizer"에 개발용 기기로 등록된다. 4. 다음과 같이 등록되었으..

IT/아이폰 개발 2009.06.27

아이폰 개발환경구축2 - 인증서 생성 및 컴퓨터 인증

이제 내 맥과 아이폰 개발자 홈페이지 간에 인증 과정을 거쳐야 합니다. 이 과정을 제대로 해야 기기 연결을 제대로 할 수 있습니다. 1. "Program Portal"에 들어 갑니다. "애플 아이폰 개발자 홈페이지"에서 상단 오른쪽에 있는 아래 링크를 이용하시면 됩니다. 아래와 같은 화면이 뜰겁니다. 여기서 왼쪽에 있는 메뉴를 주로 이용합니다. 2. 왼쪽의 "Certificates"에 들어가서 "Development"를 클릭해 보시면, 아직 인증서가 등록되지 않은 것을 볼 수 있습니다. 이제 인증서를 생성하도록 하겠습니다. (반드시 "Development"에서 진행하시기 바랍니다.) 3. 맥의 Finder로 가셔서 "이동 > 응용프로그램 > 유틸리티 "에 가셔서 "키체인 접근"을 실행합니다. 4. "키체..

IT/아이폰 개발 2009.06.27

아이폰 개발환경구축1 - developer 가입 및 개발자 프로그램 구매 및 승인

실제 기기로 테스트하거나 앱스토어에 등록해 판매하지 않고 공부만 할 예정이라면, 개발환경구축 과정 필요 없이 시뮬레이터만으로도 가능하다. 이 때, 방법은 아래의 1, 2번 과정만 수행하면된다. 우선 아이맥과 아이팟터치를 최신 버전으로 업데이트 시켜줘야 합니다. 아이맥을 처음 실행시키고 인터넷에 연결되면 자동으로 업데이트가 시작됩니다. 또 아이팟터치도 아이튠즈와 싱크되면서 자동 업데이트 됩니다. 1. 애플 개발자 홈페이지 (http://developer.apple.com) 에서 회원가입을 합니다. 단, 이때 회원가입 정보와 차후 개발자 프로그램 구매 정보가 동일해야만 고생을 안합니다. 회원가입시 정확한 정보를 입력하시고, 다음 단계에서 개발자 프로그램 구매시에도 동일하게 정보를 입력해야 합니다. 2. 애플..

IT/아이폰 개발 2009.06.27

아이맥, 아이팟터치 구입

2009년 2월 23일 아이폰용 어플리케이션을 개발하기로 마음 먹고 준비작업에 들어갔습니다. 우선은 맥과 아이팟터치가 필요한지라 고민 끝에 구입하였습니다. 고민 고민 하다가 조금 비싸더라도 모니터 등등을 또 구입하느니 맥미니보다는 아이맥이 낫겠다 싶어서 아이맥을 구입하기로 마음 먹었습니다. 아이팟터치는 제가 음악을 별로 즐기는 편이 아니라 개발용으로만 사용할 계획으로 8GB 모델을 선택하였습니다. 아이맥은 1,285,200원에 아이팟터치 8GB는 278,200원에 구입하였고, 액정보호필름을 추가로 구입하였습니다. 여러가지 글들을 읽어 본 결과 원활하게 진행하려면 맥을 사는 것 외에는 방법이 없겠더군요. 조금 무리를 하긴 했지만, 나름 만족하고 있습니다.

IT/아이폰 개발 2009.06.27

프랑스 인터넷 삼진아웃제 위헌결정, 우리나라는?

얼마전 프랑스에서 불법 복제물을 유포하거나 다운로드하다가 세번째 적발되면 1년간 인터넷 접속을 차단하는 법안을 마련 중이라는 소식이 있었습니다. 오늘 프랑스 헌법위원회에서 위헌 판결이 났습니다. 온라인 서비스에 자유롭게 접근하는 것은 인권에 관한 문제로 판결을 통해서만 개인의 인터넷 접근을 막을 수 있다. 표현의 자유와 통신의 자유를 보장하고 있는 헌법에 위배된다고 판결했습니다. 이 법안의 목적도 우리나라와 마찬가지로 온라인 저작권 침해를 막기 위해서 추진된 법안입니다. 1차 이메일 경고, 2차 서면 경고, 3차 인터넷 접속 1년 차단을 내용으로 하는데, 지난달 프랑스의회에서 통과되었습니다. 그럼 우리나라의 저작권법은 어떨까요? 우니라나의 경우에 보면 삼진아웃제 뿐만 아니라 게시판폐쇄라는 것 까지 추가되..

IT/IT이야기 2009.06.11