BLOG main image
분류 전체보기 (92)
Cocoa Touch (11)
Cocoa (10)
Objective-C (13)
Swift (6)
Development (11)
Tools (11)
Books (7)
etc (21)
Application release (1)
Document Project (1)
106,258 Visitors up to today!
Today 16 hit, Yesterday 5 hit
daisy rss
tistory 티스토리 가입하기!
'mac os x'에 해당되는 글 2건
2009. 12. 1. 17:54

아무래도 한글을 처리 할 일이 많다.

그 중 소팅은 단연 중요하고 많이 처리되는 일인데, 코코아에서 아래와 같은 코드는 어떤 결과를 보여주게 될까?



NSArray *sTemp        = [NSArray arrayWithObjects:@"하루", @"허씨", @"한국인", @"호빵", @"하늘", nil];

NSArray *sSortedArray = [sTemp sortedArrayUsingSelector:@selector(compare:)];


for (NSString *str in sSortedArray)

{

    NSLog(str);

}



결과

2009-12-01 17:47:58.369 Test[1859:10b] 하늘

2009-12-01 17:47:58.371 Test[1859:10b] 호빵

2009-12-01 17:47:58.372 Test[1859:10b] 한국인

2009-12-01 17:47:58.372 Test[1859:10b] 허씨

2009-12-01 17:47:58.372 Test[1859:10b] 하루


이건 뭐... T_T;;;

(Mac OS X 10.5, 10.6, iPhone 모두에서 발생)


애플에 이야기 하긴 했는데 언제나 고쳐질지는 의문.

difro | 2009.12.01 23:28 | PERMALINK | EDIT/DEL | REPLY
@selector(compare:) 대신 @selector(localizedCompare:) 를 쓰니까 잘 되네요. (Mac 10.6 에서 테스트)
2009-12-01 23:26:36.602 Untitled[4808:a0f] 하늘
2009-12-01 23:26:36.603 Untitled[4808:a0f] 하루
2009-12-01 23:26:36.603 Untitled[4808:a0f] 한국인
2009-12-01 23:26:36.604 Untitled[4808:a0f] 허씨
2009-12-01 23:26:36.608 Untitled[4808:a0f] 호빵
maccrazy | 2009.12.02 09:59 신고 | PERMALINK | EDIT/DEL
흐잇.. 감사합니다. localizedCompare에서는 문제가 없군요. 다른 방법으로 해결했는데 localizedCompare를 쓰는게 더 편하군요. 그래도 compare:쪽 버그도 해결되어야 할 것 같기는 해요.
Name
Password
Homepage
Secret
2009. 1. 23. 13:34
[etc]
Mac OS X 용 트로이의 목마 가 발견 되었다고 화제가 되었다.

뭐, 예상 했었던 일 아닐까? 제 아무리 보안이 뛰어나다고 해도 이런 식의 바이러스(웜)이 나오는건 시간 문제였다. 몇년 전에 이미 다른 프로그램을 감염을 시킬 수 있는 트로이의 목마 샘플을 개발해본 적이 있었다. 단순히 가능성 여부를 확인하기 위해 작업을 했었기 때문에 외부로 유출을 시키지는 않았지만 메신저를 통해서 받은 파일을 통해 그 실체를 확인했던 몇몇 지인이 있을 뿐이었다.
물론, 해당 이슈에 대해서 애플에 비선을 통해 리포팅 하긴 했지만 OS 자체의 구조적 문제라서 어쩔 수 없다는 대답을 들었었더랬다.

불행스러운 점은, 일단 그 제작방법이 엄청나게 간단했다는 것이고 (약간의 발상의 전환만 하면) 그 파괴력은 적어도 피해자가 머리를 쥐어뜯고 괴로워 미쳐버릴 것 같은 상황으로 몰고가기 충분했다. Mac OS X의 경우 애플리케이션은 사용자가 read-write 권한을 가진 위치에 저장된다는 것이고 (대부분의 유저들이 이 상태에서 사용한다) 트로이의 목마 역시 그 애플리케이션을 감염시키는 동작을 하는데 있어서 아무런 제약이 없다는 것이다.
게다가 대부분의 중요한 정보는 사용자 디렉토리에 저장되어 있기 때문에 그 역시 안전하지 않다는 것이다. 시스템 라이브러리에 있는 파일을 다 지우는것 보다 도큐먼트 폴더를 지우는 것이 사용자 입장에서는 더욱 치명적이다.

다행스러운 점은, 그래도 Mac OS X은 비교적 안전장치가 많다는 것이다. 사용자의 승인이 없는 상태에서 루트권한을 빼앗는 것이 쉬운 일이 아닐 뿐더라 발견되었다 하더라도 머지않아 패치가 이루어지기 때문이다. 게다가 윈도우에서 흔하게 사용하던 기법인 후킹같은 것 역시 불가능에 가까운 수준이기 때문에 적어도 바이러스가 창궐할 위험성은 낮다고 할 수 있겠다.
덕분에 Mac OS X은 오랜 시간 바이러스로 부터 자유로울 수 있었고 이때까지 발견된 바이러스들 역시 유치한 수준이었다.

하지만 이런 환경은 결국 사용자로 하여금 안전불감증에 걸리게 하고있는데 만일 어느날 갑자기 제대로된 바이러스가 나온다면 그 피해는 윈도우에서 벌어진 일보다 더 커질 수도 있을 것 같다. Mac OS X은 바이러스로 부터, 해킹으로 부터 안전하다는 맹목적인 믿음은 위험하다.
Name
Password
Homepage
Secret
prev"" #1 next