티스토리 툴바



2011/12/30 15:28

[OSX] DMG->ISO 바꾸기.

hdiutil convert disk.dmg -format UDTO -o changename

 
Trackback 0 Comment 0
2011/07/01 10:18

[펌] The iOS App Launch Sequence

원본 : http://oleb.net/blog/2011/06/app-launch-sequence-ios/

설명하는 그림을 직접 그린것 같은데, 잘 그렸네요...

이상하게 이런 그림은 스크랩을 해놓고 싶더라는...

왜? 난 그림을 예쁘게 못그리니까 ㅡ,.ㅡ

 
Trackback 0 Comment 0
2011/06/21 10:03

target architecture가 OSX 64bit only 인경우 인스턴스 변수 빼기

@interface Greeter : NSObject 
    NSString *name;    
    NSInteger age;    
    BOOL upperCase;
}
@property(copy) NSString *name;
@property(assign, readonly) NSInteger age;
@property(assign, getter=isUpperCase) BOOL upperCase;

-(NSString *) greeting; 
-(id) initWithName:(NSString *)name; 
@end

property에서 힌트를 얻을 수 있기 때문에 인스턴스 변수를 모조리 없애주어도 됨(주의: 아래 스크린샷 처럼 64비트 설정 ONLY인 경우에만.)

@interface Greeter : NSObject 
@property(copy) NSString *name;
@property(assign, readonly) NSInteger age;
@property(assign, getter=isUpperCase) BOOL upperCase;

-(NSString *) greeting; 
-(id) initWithName:(NSString *)name; 
@end
 

 
--> from Cocoa Programming : A Quick-Start guide for Developers(Pragmatic programmers)
 
Trackback 0 Comment 0
2011/06/21 09:46

[OBJ-C2.0] property attributes.

@property(attribute1, attribute2,...) PropertyType propertyName;

getter 이름을 바꾸고 싶다면

@property(getter=isCanceled) BOOL canceled;

assign, copy, retain의 비교?

-(void) setAge:newAge 
    age = newAge;
} //assign

-(void) setName:newName 
    if (name != newName) {
        [name release]; 
        name = [newName copy];
    } 
} //copy


-(void) setBuddy:newBuddy 
    if (buddy != newBuddy) {
        [buddy release]; 
        buddy = [newBuddy retain];
    }
} //retain
 
--> from Cocoa Programming : A Quick-Start guide for Developers(Pragmatic programmers)
Trackback 0 Comment 0
2011/06/21 09:36

NSLog, NSMakeRect...

가끔씩 NS로 시작하는 녀석들은 모두 객체인 줄 아는 분들이 있는데,,
이런 녀석들은 C 함수에요 ㅡ,.ㅡ 
 
Trackback 0 Comment 0
2011/06/19 23:52

garbage collection 키기

기억력도 자꾸 떨어지고...검색하기 귀찮아서.
가끔 찾게되니까 그냥 블로그에 남겨둠. 

 
 
Trackback 0 Comment 0
2011/06/19 18:09

Dynamic Binding

[myWebView goBack]; 
     -> objc_msgSend(myWebView, goBack); 
[myWebView searchFor:myString direction:YES caseSensitive:NO wrap:YES]; 
     -> objc_msgSend(myWebView, searchFor:direction:caseSensitive:wrap, myString, YES, NO, YES);  

런타임에, 셀렉터가 해당 클래스의 디스패치 테이블의 에트리(요청된 메서드의 구현 코드가 있는 메모리의 위치를 가리키는...)에  있는지 찾는다. 해당 객체에 없으면 수퍼클래스로 찾아 올라간다(루트 클래스까지).
Trackback 0 Comment 0
2009/12/01 06:15

아이폰에서 글쓰기

티스토리 엡으로 첨써본다...

간단힌 쓸만한데 오타가 좀 생기네

출근이나 해야지


iPhone 에서 작성된 글입니다.
Trackback 0 Comment 0
2009/07/31 06:08

1983년에 애플 홈페이지가 있었다면?


재밌네요 ..

출처 : http://cache.gawker.com/assets/images/gizmodo/2009/07/17-apple_1983.jpg
Trackback 0 Comment 0
2009/01/08 22:40

사파리의 마우스 단축버튼

맥에서 마이티 마우스가 아닌 일반 마우스를 사용할 경우는 마우스의 단축 버튼으로 

사파리에서 뒤로가기가 정상동작하지 않는다(혹시 나만 모르고 있는건가? ㅡ,.ㅡ).

이를 위해서 간단한 유틸리티를 사용하면 되는데, 바로 Senlick이다. 

http://www.senlick.com/ 에서 다운받을 수 있으며, 

뭐 가난한 사용자는 시작할 때 메시지를 봐야하는 불편함이 있기는 하지만 

사파리 사용이 편해진 만큼 기분은 좋다.


Trackback 0 Comment 0