'기타'에 해당되는 글 2건

  1. 2010.06.21 기타 아이폰 팁 사용법
  2. 2010.06.21 [펌] Xcode 3 둘러보기(3) - 기타
아이폰기본사용2010. 6. 21. 23:53
기타 아이폰 팁 사용법
  • 핸드폰을 Unlock하지 않는 상태에서 홈버튼을 두번누르면 뮤직 플레이어가 상단에 뜬다. 그러면 Unlock을 하지 않고도 음악을 들을 수 있다.
  • 계산기를 세로로 하면 일반 계산기 기능이고, 아이폰을 가로로 누이면 공학용 계산기로 바뀌는것은 다 아는 사실
  • General Setting에서 Home Button 셋업을 어떻게 하느냐에 따라 홈버튼을 두번 누르면 Phone Favorites, Home, 또는 iPod로 바로 이동한다.
  • Settings --> Phones로 이동하면 Show My Caller ID라는 메뉴가 있는데 이 메뉴를 Off 시키면 상대방이 내 전화번호나 ID를 읽을 수 없다. 상대방 전화에는 전화번호나 이름이 나오는대신에 'Blocked" 또는 "Private Call"과 같은게 뜬다.
  • 이메일이나 메모패드에서 타자를 칠때 영문 대문자로 2-3자 이상을 계속해서 칠 경우가 종종 생기는데 (예를들면 SBS, TV등) 멀티터치를 지원하는 아이폰이기에 대문자를 사용하는 Shift 키(윗화살표 모양)를 누른 상태에서 영문을 치면 계속해서 대문자를 칠 수 있다.
  • 전화가 울릴때 받고 싶지 않고 바로 Voicemail로 보낼려면, Sleep&Wake 버튼을 두번 누르면 음성사서함으로 바로 넘어간다.


출처 : http://blog.naver.com/PostView.nhn?blogId=dandyher&logNo=150086481870
Posted by 오늘마감

댓글을 달아 주세요

XCODE2010. 6. 21. 09:28
[펌] Xcode 3 둘러보기(3) - 기타
출처 - http://www.cocoadev.co.kr/167






이번 포스팅에서는 Xcode 3에서 2.0으로 업그레이드 된 Objective-C와 추가된 컴파일 옵션에 대해서 알아 보겠습니다.

역시나 깊이도 없고 내용도 별로 없는 제목 그대로 둘러보기 입니다. 자세하고 정확한 자료는 아래의 애플에서 제공하는 문서들을 참고하시기 바랍니다.



1. Objective-C 2.0

1) 가비지 컬렉션 지원
Cocoa Object에 가비지 콜렉션이 지원됩니다. 이제는 더이상 retain, release에 신경을 쓰면서 오브젝트의 retain counts를 관리할 필요가 없게 되었습니다. 가비지 컬렉션은 기본으로 꺼져있습니다. 이를 사용하기 위해서는 Project 정보 윈도우의 Build에서 GCC 4.0 - Code Generation 분류중 'Objective-C Garbage Collection' 항목에서 지원여부를 선택해야 합니다.
   

* Unsupported
가비지 컬렉션을 사용하지 않습니다.

* Supported (-fobjc-gc)
가비지 컬렉션과 이전의 retain/release를 병행해서 사용할 수 있습니다.

* Required (-fobjc-gc-only)
가 비지 컬렉션만 사용하고 이전의 retain, release를 사용하지 않습니다. 새롭게 시작하는 프로젝트는 이 옵션을 선택하는 것이 좋을 것 같습니다.

가비지 컬렉션에 의해 메모리에서 삭제되는 오브젝트에게는 finalize이란 메시지가 전달됩니다. 이 메시지를 처리할 경우에는 반드시 super의 finalize도 호출해야 합니다.

- (void)finalize
{
    ...
    ...
    [super finalize];   
}


2) Property

@property 와 @synthesize를 이용하여 class 내부변수를 편리하고 쉽게 관리할 수 있습니다.

@property(속성) 타입 변수명;
@synthesize 변수명

property의 속성들은 아래와 같으며 ','로 구분합니다.

* getter
getter=getName과 같이 getter 함수의 이름을 지정합니다. 특별히 지정되지 않았을 경우에는 변수명과 같은 이름이 사용됩니다.

* setter
setter=setName과 같이 setter 함수의 이름을 지정합니다. 특별히 지정되지 않았을 경우에는 set[변수명]으로 사용됩니다.

* readonly
읽기전용으로 getter 함수만 사용 가능하고 setter 함수는 사용할 수 없습니다.

* readwrite
getter, setter 함수 모두 사용할 수 있습니다.

* assign
setter 에서 'value = newValue;'와 같이 단순한 할당이 적용됩니다;

* retain
아래와 같이 할당시 변수의 retain이 적용됩니다.
if (value != newValue)
{
    [value release];
    value = [newValue retain];
}

* copy
아래와 같이 할당시 변수의 copy가 적용됩니다.
if (value != newValue)
{
    [value release];
    value = [newValue copy];
}

아래는 property와 synthesize의 사용예입니다. property는 interface내에서 synthesize는 implementation내에서 선언됩니다.

* MyObject.h
#import <Cocoa/Cocoa.h>

@interface MyObject : NSObject {
    NSString *myName;
}

@property(copy,readwrite) NSString *myName;

@end

* MyObject.m
#import "MyObject.h"

@implementation MyObject
@synthesize myName;

@end

이 제 getter와 setter의 구현없이 소스코드에서 아래와 같이 사용할 수 있습니다.
MyObject *myObject = [[MyObject alloc] init];

[myObject setMyName:@"KingKong"];
NSLog(@"%@", [myObject myName]);


3) Dot(.) 문법지원
C++, Java에서 사용하는 '.'를 사용할 수 있게되었습니다. '[obj myName]'과 같이 사용하던 것을 'obj.myName'으로 사용할 수 있습니다. 아래가 사용예입니다.

obj.myName = @"cocoa"; // [obj setMyName:@"cocoa"];
NSLog(@"%@", obj.myName); // NSLog(@"%@", [obj myName]);


4) 에뉴뮬레이션 문법 지원
C 스타일의 for문 대신에 "for ([변수] in [collection 오브젝트])"와 같이 편리하게 사용할 수 있습니다. collection 오브젝트에는 NSArray, NSDictionary, NSSet등의 클래스의 인스턴스가 올 수 있습니다.

NSArray *myArray = [NSArray arrayWithObjects: @"A", @"B", @"C", nil];
   
for (int i = 0; i < [myArray count]; i++) {
    NSLog(@"%@", [myArray objectAtIndex:i]);
}
       
for (NSString *str in myArray) {
    NSLog(@"%@", str);
}



2. 다양한 플랫폼 지원

1) OS X 지원
OS X 10.5, OS X 10.4, OS X 10.3(Xcode 설치시 옵션)의 여러 OS X 버젼과 아이폰을 지원합니다.


2) 64bit 아키텍쳐 지원
이제 코코아 어플리케이션도 64비트로 작성할 수 있습니다.  


3) 컴파일러(GCC) 버젼 선택
GCC 버젼을 선택할 수 있습니다. Xcode 2.5에서도 사용했던 4.0 버젼이 기본으로 선택되어 있으며, 최신버젼 4.2 또는 시스템에 실치된 gcc도 사용이 가능합니다. 그리고 LLVM(Low Level Virtual Machine)을 지원하는 gcc도 선택할 수 있습니다.



가 비지 컬렉션, Property나 에뮬레이션 지원은 반가운 소식인데 닷('.') 문법 지원은 다소 의외입니다. '.'을 사용한 소스를 보면 C++, Java 프로그래머들은 처음 접할 시에 이질감이 덜하겠지만, Objective-C스러운(?) 맛이 줄어 들지 않을까 기우가 듭니다.

아무튼 애플에 의해 Objective-C가 다른 언어들의 장점을 흡수하면서 발전하는 모습을 보니 좋습니다.



출처 : http://blog.naver.com/PostView.nhn?blogId=seogi1004&logNo=110085700261
Posted by 오늘마감

댓글을 달아 주세요