댓글 좀 굽신굽신

posted by 쟤시켜 알바 2010/06/06 06:03
언제 부턴가 Open with로 파일을 열 수 있는 어플리케이션 목록을 보면 동일한 어플이 중복으로 표시가 된다. 

인터넷에서 검색한 하나의 방법은 터미널을 띄운 후 아래와 같이 명령어를 입력하는 것이다.
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -seed -rfv -all user, system, local

먼가 길고 치기도 어렵다. 그리고 터미널은 쓰는 사람은 쓰지만 모르는 사람은 참 쓰기 어렵다. 윈도우의 도스창이 그렇듯...

다른 한가지 방법은 Onyx란 어플리케이션을 이용하는 것이다.
방법은 Onyx를 실행한 후 Maintenance 탭으로 이동한 후 Rebuild 탭을 선택하고 LaunchServices를 체크한 후 Execute 버튼을 누르면 된다.
LaunchServices만 선택하고 실행하면 시간은 그렇게 오래 걸리지 않는다.

위 어플은 아래 페이지에서 다운로드 받을 수 있다.

위의 두가지 방법은 모두 버전 10.5 이상의 Mac OS에서만 해결 가능하다.
저작자 표시
posted by 쟤시켜 알바 2010/03/14 05:13
맥북을 쓰는 사람들(http://cafe.naver.com/inmacbook)
맥 관련 네이버 카페다. 여기서 딱히 정보를 얻는다기 보다는 다른 사람들의 맥 사진 찍은거 보러 간다. 또 한가지는 중고 매물 보러 간다. 그 이외에는 특별히 활용하고 있지는 않다.

맥 관련 커뮤니티이자 쇼핑몰이다. 맥을 쓰는 사람들과 동일한 용도로 사용하고 있다.

x86OSx.com(http://x86osx.com)
해킨토시 관련 정보를 제공하는 사이트다. 체계적이지는 않지만 검색을 통해서 해킨토시와 관련된 정보를 어느 정도를 얻을 수 있다. 처음으로 PC에 해킨토시를 깔았을 때, 필요한 정보는 여기서 모두 구했었다.

MacRumors: Buyer's Guide(http://buyersguide.macrumors.com)
각 맥 제품별 제품 주기를 보여준다. 이를 토대로 제품을 사도 괜찮은지 아니면 기다려야 하는지 판단을 할 수 있다. 하지만 모든 애플 제품이 주기를 맞춰서 나오지는 않는다.

EveryMac.com(http:/www.everymac.com)
맥의 제품 스펙을 볼 수 있다. 맥 중고 매물을 볼 때 스펙을 정확히 알려주지 않을 때에는 이곳에 가서 모델명 등으로 확인할 수 있다.

클리앙 커뮤니티 내 맥 소모임이다. 친목 목적으로 자주 간다. 가끔 올라오는 맥당 특가 매물이 일품이다.

맥 관련 제품 및 악세사리를 파는 쇼핑몰이다. 물론 여기서 사본적은 없다.

애플 프리미엄 매장이다. 온라인 뿐 아니라 오프라인 매장도 함께 한다. 오프라인에서 사는 경우 정식 셀러중에서는 가장 싼 것으로 알고 있다. 맥 제품 구매시 메모리, 하드 등을 변경할 수 있는 옵션을 제공한다.

맥 관련 어플리케이션은 구글 검색을 이용하거나 글을 보다가 우연히 알게되어 구하는 경우가 대부분이다. 물론 각 사이트에 가면 추천 어플리케이션에 관련된 글을 볼 수 있긴 하다.

윈도우 쓸 때는 굳이 사이트 같은 걸 알아놓지 않아도 쉽게 정보를 구하곤 했는데 맥은 유저수가 적다보니 그렇게 되지 않는 것 같다.

좋은 사이트를 알게 되면 이후 추가할 예정이다.
저작자 표시
posted by 쟤시켜 알바 2010/02/04 20:35
2008년 2월에 산 아이맥이 또 말성이다.
예전에 액정에 김(?)이 서려서 A/S했었는데 이번에는 액정에 잔상이 남는다.
스크린샷을 찍었을 때는 깨끗하게 나오는 걸 봐서는 액정이 맛이 간거 같다.

자세히 보면 잔상은 그냥 줄이 간게 아니라 Finder가 프레임으로 보인다.
클릭해서 보면... 파일 이름하고 정보도 볼 수 있다. -_-;;;

내일 애플에 전화 넣어서 방문수리를 맡겨야 할 것 같다.

확실히 애플 제품은 애플케어를 사는게 맞는 것 같다. 1년쯤부터 고장이 나기 시작하는 걸 한두개 본게 아니니 원...

나랑 애플은 정말 안맞는 것 같다. 샀던 제품 대다수가 액정에 문제가 있으니 원...
맥북프로 새로 나오면 살려고 하고 있는데 이래서야 원 마음 놓고 살 수 있을까 모르겠다.
저작자 표시

'Apple > ETC' 카테고리의 다른 글

심심해서 해본 Geekbench  (0) 2010/06/09
매직마우스와 마이티마우스  (0) 2010/05/21
아이맥 액정 문제  (2) 2010/02/04
Learning Object-C: A Primer  (2) 2008/03/16
신동 Macbook 입양 완료  (10) 2008/02/27
MacBook Pro 17인치 색감 문제, 그리고 애플의 개판 A/S  (20) 2008/01/29
posted by 쟤시켜 알바 2008/12/15 09:06
Nokia N97과 iPhone 3G를 비교한 글이 하나 올라왔다.(14일자)

  • 발표 시기는 iPhone 3G가 5개월(08년 7월) 빨리
  • 두께는 N97이 조금 더 두껍다.(몇미리 차이인지는 모름) slide open했을 때는 거의 두배
  • 무게는 N97이 150g, iPhone 3G가 133g
  • 지원하는 네트워크는 대충 비슷하나 중요한 이슈가 아니니 그냥 넘어가겠음
  • 둘다 3.5인치이나 N97의 해상도가 640×360으로 iPhone 3G(320×480)보다 큼
  • N97는 slide out 방식의 키보드 제공
  • N97은 Symbian v9.4 3G는 Mac X
  • N97은 Java와 MMS 지원
  • N97 내장 메모리는 32G, iPhone 3G는 8/16G
  • Bluetooth 모두 지원, IR은 지원 안함, Wi-Fi 지원
  • 내장 GPS 탑재, iPhone 3G는 Google map 사용, N97은 Nokia Maps 2.0 사용
  • N97은 5메가 픽셀 카메라, iPhone 3G는 2메가 픽셀 카메라, N97은 오토 포커싱, 플래시 지원
  • N97은 내장 라디오 지원, iPhone 3G은 없음
  • iPhone 3G의 배터리는 확인된 정보가 없음
  • N97은 09년 초 550 유로에 판매 예정
출처 : Gadget Review2U, Nokia N97 vs Apple iPhone 3G

보너스 #1 - 공식 데모 영상(구라빨)


보너스 #2 - 구동하는 동영상

저작자 표시

'UX > Products' 카테고리의 다른 글

HTC의 HD2 사진 몇장  (0) 2010/02/02
LG 쿠키폰  (10) 2009/04/07
Nokia N97  (0) 2008/12/15
딱 마음에 드는 컨셉폰  (0) 2008/12/12
HTC Touch Diamond를 잠시 사용해보고...  (4) 2008/07/28
소니 마일로(Sony mylo)  (8) 2008/04/29
posted by 쟤시켜 알바 2008/01/29 22:47
사진이 좀 이상하지만 이건 Dell 24인치에서 보이는 화면이다.
그리고 이건 MacBook Pro 17인치에서 보이는 화면이다. 사진이 좀 이상하지만 아래는 회색이 아닌 옅은 분홍색처럼 보인다.

Nikon D70s에서 찍은 사진이 좀 이상해서 Panasonic LX-2로 다시 찍어봤다.

이건 Dell 24인치에서 찍은 사진
이건 MacBook Pro 17인치

역시 사진이 이상하지만 회색이 아닌 색으로 표시되는 것을 알 수 있다.

처음에는 잘 인지하지 못하고 있었는데 같은  MacBook Pro 17인치를 사용하시는 분이 내 걸 보고는 색감이 무지 안좋다고 했다. 그 이야기를 딱 듣고 보니 역시 이상해 보였다. 제공되는 모니터 프로파일들을 변경해보면 아래 동영상처럼 색감이 확 변한다. 회사에 있는 iMac이나 내 자리에 있는 맥프로로 확인해봐도 이렇게 확 달라지지는 않는다.
iMac에서는 화면이 밝아지거나 짙어지는 정도지 동영상처럼 색감이 푸르딩딩하게 나타나거나 하지는 않는다..

지금부터는 애플의 개판 5분 후 A/S에 대해 이야기를 하겠다.
이 문제를 확실히 인지한 후 애플 기술지원센터(1544-2662)에 전화를 걸었다.
나 : 얼마전(1월 16일) 맥북 프로 17인치를 구입해서 22일날 받고 23일날 개봉했다. 몇일 쓰다가 보니 옅은 회색(내 블로그 사이드바 배경색)이 옅은 분홍색으로 보인다.
담당 직원(인지 알바인지) : 고객님이 환경설정에서 잘못 만지시면 그럴수도 있다. 어쩌고 한다.
나 : 그래서 혹시나 내가 잘못 건드린게 있는지 하고 레퍼드를 새로 깐 후에 바로 다시 봤는데 그렇더라.
담당직원 : 맥북 프로가 원래 라인에 따라 다른 부품을 쓰기 때문에 미세한 차이는 있다.
나 : 회색이 분홍색으로 보이는게 미세한 차이냐?
담당직원 : 기본적으로 기술지원은 고객님이 노트북 앞에 있어야 가능하다.
나 : 내가 회사고 내가 퇴근하는 시간이면 당신네들은 응답 시간이 끝나지 않냐.
담당직원 : 회사에 가져와서 하면 되지 않느냐
나 : 우리 회사는 노트북 들고와서 개봉할 수 없는 회사다(노트북 뿐만 아니라 왠만한 전자제품은 다 결재를 받아야만 안에서 사용할 수 있고, 노트북 같은 것은 좀 복잡하다.)
나 : 내가 어제 색상 보정도 해봤다.
담당직원 : 고객님이 잘못 만져서 그럴 수도 있다. 전문가 모드로 해봤느냐
나 : 하다가 중간에 껐다.
담당직원 : 중간에 꺼도 설정 값이 남을 수 있다.
나 : 내가 아까도 말했듯이 내가 잘못한 게 있을까봐 새로 설치를 해서 확인을 했다.
이런 식의 무한 루프 약간 반복 후
나 : 알겠으니 오프라인 A/S 매장이나 알려달라, 찾아가겠다.
담당직원 : 이 문제로 A/S를 받을 수 있는지 잘 모르겠다.
나 : 알겠으니 알려나 달라

그래서 용산에 있는 전화번호를 받은 후 끊었다. 열도 받고 짜증도 나서 오후 반차를 내고 집으로 가서 다시 기술지원센터에 전화를 했다.
나 : 오전에 전화를 했었다. 지금 노트북 앞이다.
담당직원 : 오전에 상담내역을 확인하고, 몇가지를 해보라고 한다.
첫번째가 시스템 환경설정 -> 모니터 -> 색상으로 가서 보정을 누르고 이것저것 만져보라고 한다.
나 : 아침에도 이야기 했었는데 내가 다 해봤다. 그래도 문제는 여전하다.
담당직원 : 그래도 모르니 다시 한번 해봐라.
나 : 깔짝깔짝 거린 후 그래도 어제와 같다.
담당직원 : 옵션키와 커맨드키 P키 R키를 동시에 눌러봐라.
나 : 똑같다.
나 : A/S 센터 가겠다.
담당직원 : A/S 받을 수 없을 수도 있다.

전화를 끊고 사진을 잠시 찍어 빨빤 형에게 보여줬더니 색상 온도 문제일 확률이 90%라고 한다.
그래서 부트 캠프를 이용하여 XP를 설치한 후 확인해 봤더니 제대로 보인다.
그리곤 피곤해서 잤다.

아침에 출근해서 다시 기술지원센터에 전화를 했다.
나 : 어제 전화를 했었다. 레퍼드에서는 이상하게 보이는데 XP에서는 제대로 보인다.
담당직원 : 라인업에 따라 다르게 보일 수도 있다.
나 : 안다. 근데 처음 왔을 때부터 색상이 잘못 보이는 거는 애플이 잘못한 거 아니냐. 색상 온도값 문제 같다. 이 부분을 해결해 달라.
담당직원 : 시스템 환경설정 -> 모니터 -> 색상 -> 보정 -> 전문가모드를 이용하여 이 부분을 해결할 수 있다.
나 : 장난하냐. 일반 사용자가 그걸 어떻게 맞추냐
담당직원 : 그럼 애플에서 제공하는 공식 메뉴얼을 이메일로 보내주겠다. 이메일 주소를 알려달라.
나 : 이건 나만 문제가 있는게 아니지 않냐. 동일한 라인업이면 동일한 문제가 발생할 수 있는데 애플에서 패치를 해주든거 처리를 해주어야 하지 않냐
잠시 공식 메뉴얼 보내주겠다는 이야기를 반복했다.(이때 강한 충동을 느꼈다. 죽여버릴까-_-)
나 : 지금 무슨 헛소리냐. 애플이 잘못해서 내놓은 걸 나보고 고쳐서 쓰라는 거냐. 난 그럴 수 없다. 패치를 내놓던가 해라.
담당직원 : 여기(기술지원센터)에서는 그걸 처리할 수 없다.
나 : 그럼 그걸 처리하는 데 연락처를 달라.
담당직원 : 바로 연결이 안된다.
나 : 그럼 연결해달라.
담당직원 : 2~3분만 기다려달라. 연결하고 있다.
약 10여분이 지난 후
담당직원 : 연결이 안된다. 다시 2~3분만 기다려 달라.
약 10여분이 지난 후
담당직원 : 죄송하다. 연결이 안된다.
나 : 더 이상 못기다리니 니네가 나한테 전화해라. 오전 중으로
담당직원 : 죄송하다. 빠른 시간에 연락 주겠다.

여기서 일차전 끝.
이 이야기를 간결하게 팀 사람 몇분에게 이야기를 했다. 이야길 들으신 분 한분이 애플 쪽에 전화를 걸었다.
그리고 이차전 시작. 여기서는 내가 직접 통화한게 아니라 담당직원이 무슨 말을 했는지 모른다.
먼저 애플 온라인 스토어에 전화를 걸어 맥북 프로를 구입했는데 색감이 이상하다. 고장난 것 같다 하니 애플 온라인 스토어에서 기술지원센터에 연락하라고 했다. 그래서 연락을 하여 LCD 색감이 이상하다. 고장난 것 같다하면서 기술지원센터에서 뭐라고 하던 간에 난 잘 모른다. 고장난것 같다. 교환해달라고 했다. 잠시 후 연락 준다고 한 후 감감 무소식 나는 외근이 있어서 나갔고 문자를 보냈더니 다시 연락을 준다고 했다고 한다. 그리고 한 5시 쯤 넘어서 새제품으로 교환해 주겠다고 했다. 새제품 교환은 1회로 한정되는데 교환 후에도 똑같은 문제가 발생할 수 있다고 한다. 내가 도와주신 분에게 환불은 안되냐고 물었더니 교환 씨리얼을 알려줄테니 애플 온라인 스토어에 전화를 해서 그때 물어보면 된다고 했다.
1회 교환 후에 똑같은 증상이 나타나면 당연히 환불 받아야 하지 않겠는가.

애플은 예전이나 지금이나 고객 가지고 장난치려는 수작이 뻔히 보인다. 조금 모르면 다 고객이 잘못한 것으로 떠넘길려는 심보가 확실히 보인다. 미국처럼 기업소송 활성화되면 반드시 애플 소송 한 번 걸 것이다.

한가지 느낀 것은 이런 전화를 할 때 나처럼 꼼꼼히 문제점을 파악하는 것보다 그냥 모른다고 고장 난 것이니 바꿔달라고 우기는 게 현명하다는 것을 느꼈다. 다음부터 문제 생기면 나도 그렇게 해야겠다.
우리팀 그분의 포스는 감히 범접할 수가 없다.

내일 전화해서 1회 새제품 교환 후 동일 문제 발생 시 환불이 되는지 물어보고 안된다면 그냥 환불해달라고 해야겠다.
지금 나온 라인업이 아마 이번 버전의 맥북프로 마지막 버전일 듯 싶은 데, 패널 문제라면 동일한 문제가 계속 발생할 게 불 보듯 뻔한데 참고 쓸 수는 없는 노릇 아닌가.
(잠깐 검색해보니 패널하고 VGA하고 안맞으면 이럴 수도 있다고 한다.)

환불 받으면 맥북 프로 다시 안사고 맥북 중고를 사서 쓸 생각이다. 그러다가 새버전 맥북 프로 나오면 그 때 다시 맥북 프로를 질러야 할 듯 하다.

p.s. - 상담내역은 좀 미화하여 쓴 거고 실제 내용은 좀더 고객을 열받게 하는 말투였다. 그리고 나는 언성을 높여서 이야기를 하고 있던 상태였고.

Updated : 2008/01/30 09:54
방금전 애플 온라인 스토어에 전화를 걸어서 환불 신청을 했다.
나 : 맥북 프로에 문제가 있어서 애플 쪽에서 새제품으로 교환을 해주기로 했다. 그런데 새제품으로 바꿔도 동일 증상이 발생할 수 있다는 이야기도 같이 들었는데 환불이 가능하냐?
담당직원 : 그건 주문지원부(이름이 확실하지 않다.)에 연락을 하셔야 한다. 그쪽으로 연결해주겠다.
다른 담당직원으로 변경
나 : 좀전에 했던 이야기 반복.
담당직원 : 환불 진행되고 있다.
나 : 그건 내가 전에 잘못 주문한 마우스에 대한 환불이다.
담당직원 : 그렇네.
나 : 새제품 교환 해주기로.... 환불은 안되냐?
담당직원 : 언제 주문 했냐
나 : 1월 16일날 주문했다.
담당직원 : 오늘까지 보내주셔야 한다.
나 : 16일날 주문이고 22일날 받았다.
담당직원 : 그러냐. 그럼 월요일이나 화요일쯤 받겠다.
나 : 받았던 세트 그대로 주면 되냐
담당직원 : 그렇다.
나 : 알았다.

환불한데니 목소리가 마이 차갑네. ㅋㅋㅋ
맥북 프로 환불 하면 문제가 이것저것 사놓은 것이 무용지물이 된다. 내 메모리 4기가와 껍데기와 LCD 보호하는 천떼기, 가방...
그냥 냅뒀다가 새 맥북프로 17인치 나올 때까지 기다려봐야겠다.

'Apple > ETC' 카테고리의 다른 글

아이맥 액정 문제  (2) 2010/02/04
Learning Object-C: A Primer  (2) 2008/03/16
신동 Macbook 입양 완료  (10) 2008/02/27
MacBook Pro 17인치 색감 문제, 그리고 애플의 개판 A/S  (20) 2008/01/29
왔다 맥북프로!  (8) 2008/01/24
살 맥북 프로 액세서리들  (4) 2008/01/21
posted by 쟤시켜 알바 2008/01/08 08:33
Characteristics of Great Software
  • High Performance
  • Ease of Use
  • Attractive Appearance
  • Reliability
  • Adaptability
  • Interoperability
  • Mobility
Mobility에 대한 디자인은 노트북 사용의 급등함에 따라 점점더 중요해지고 있다.
Mobility를 지원하는 프로그램은 시스템 폴링이나 불필요한 주변 장치에 대한 접근을 통한 배터리 파워를 낭비하지 않고, 사용자가 이동할 때나 모니터 구성을 변경하거나 슬립모드 또는 활성화되었을 때 멈추지 않게 하는 기능을 제공해야 한다.
Mobility를 지원하기 위해, 프로그램은 네트워크 구성 변경을 포함한 다른 시스템 구성에 적응할 수 있어야 한다.
많은 하드웨어 디바이스는 컴퓨터가 동작하는 중에 플러그 상태 또는 언플러그 상태가 될 수 있다. 이동을 인지하는 프로그램은 이러한 변화에 우아하게(?) 반응해야 한다.
또한 파워 사용과 같은 이슈에 민감해야 한다.
지속적인 하드나 광학 드라이브에 대한 접근은 노트북의 배터리를 빠르게 소모시킨다.
하나의 배터리 충전으로 컴퓨터를 더 오래 사용할 수 있도록 모바일 사용자를 고려해야 한다.

Guidelines
  • 이벤트에 대한 폴링을 피하라.
    • 시스템 폴링은 불필요하게 CPU 시간을 낭비하고 그 다음으로 포터블 시스템에서 배터리 파워를 소모한다.
    • 대부분의 modern API는 흥미로운 뭔가가 일어나면 프로그램에 알려주는 방법을 가지고 있다.
    • 이러한 통지를 받기위해 등록하고 적절하게 응답하라; 그렇지 않으면 (프로그램이 아무것도 하지 않는다면) 완전히 유휴 상태가 된다.
  • 소프트웨어를 사용할 때 사용자에게 프로그램 CD를 넣으라는 요구를 하지 마라.
    • 사용자에게 로컬 하드 드라이브에 모든 것을  설치할 수 있는 옵션을 제공하라.
  • 하드나 광학 드라이브에 파일 접근을 최소화하라.
    • Performance를 향상시킬 뿐 아니라, 드라이브를 좀더 자주 덜 돌게 함으로써 배터리 소모를 줄일 수 있다.
  • 네트워크 구성 변경을 적용하기 위해서는 Modern 네트워크 인터페이스  사용하라.
    • 모바일 사용자는 장소나 어느 한순간에 무선 접속 장소를 바꿀 수 있다.
    • 이러한 구성 변경을 다루기 위해 CFNetwork와 다른 modern 인터페이스를 사용하라.
  • 네트워크 볼륨의 연결이 끊기는 경우, 파일 시스템에 접근할 때 이를 허용하라.
    • 네트워크 볼륨이 사라지면 사용자에게 알리고 파일을 다른 볼륨에 저장할 수 있는 옵션을 제공하라.
  • 화면 해상도 변경과 모니터의 플러그와 언플러그에 민감하게 반응하라.
    • 모바일 사용자는 다른 해상도를 요구하는 프로젝트나 다른 디바이스에 연결할 수도 있기 때문에 소프트웨어의 화면 크기를 고정이라고 생각하면 안된다.
    • 모니터가 사라지면, 윈도우들이 보이는 상태로 남을 수 있도록 모니터에 있던 모든 윈도우의 위치를 조정하라.(모니터가 다시 나타났을 때 이전 위치에 놓이게 하기 위해)
posted by 쟤시켜 알바 2008/01/08 08:24
Characteristics of Great Software
  • High Performance
  • Ease of Use
  • Attractive Appearance
  • Reliability
  • Adaptability
  • Interoperability
  • Mobility
Interoperability는 프로그램이 다른 환경들 사이로 커뮤니케이션할 수 있는 능력을 뜻한다.
이 커뮤니케이션은 사용자 또는 프로그램 레벨에서 일어나고 현재 컴퓨터 또는 원격 컴퓨터의 프로세스에서 발생할 수 있다.
프로그램 레벨에서, 상호 사용 가능한 프로그램은 다른 프로그램과 자신의 프로그램 사이에 데이터를 옮기는 것을 지원한다.
Pasteboard(클립보드)를 지원해야 하고 같은 또는 플랫폼에서 다른 프로그램의 파일 포맷을 읽을 수 있다.
사용자는 pasteboard, drag&drop, AppleScript, Bonjour, 그리고 서비스 메뉴에서 서비스 등과 같은 특징에서 interoperability를 볼 수 있다.
이러한 모든 특징은 사용자가 다른 어플리케이션으로(부터) 데이터를 보내거나 받을 수 있는 방법을 제공한다.

Guidelines
  • 가능하면 사용자가 다른 프로그램의 사용자와 문서를 쉽게 교환할 수 있도록 커스텀 파일 포맷 사용을 피하라.
    • 커스텀 파일 포맷을 사용해야만 한다면, 사용자가 다른 어플리케이션과 데이터 교환을 위해 가져오기와 내보내기 기능(capability)를  제공하라.
  • 모든 지원가능한 플랫폼에서 동일한 파일 포맷을 사용하라.
    • 한 플랫폼의 어플리케이션에서 만들어진 문서가 다른 플랫폼의 동일 어플리케이션에서 읽혀질 수 있도록 하라.
    • 다른 플랫폼의 사용자가 알아볼 수 있고 열어 볼 수 있도록 파일 확장자를 지원하라.
  • 가능한 데이터 교환에 표준 프로토콜을 사용하라.
    • XML은 크로스 플랫폼이고 광범위하게 지원되기 때문에 어플리케이션과 플랫폼에서 데이터 교환에 있어 선호되는 포맷이다.
    • Mac OS X 역시 매우 많은 네트워크 프로토콜을 지원한다.
  • Cocoa와 Core Foundation으로 제공되는 Mac OS X 환경설정(preference system) 수행을 이용하여 설정 데이터를 저장하라.
    • 이러한 수행은 설정 데이터를 사용자에게 데이터를 바로 또는 스크립트를 이용하여 수정할 수 있는 기회를 제공하는 일반 텍스트 파일로 저장한다.
  • 유연성과 확장성이 가능하게 AppleScript 객체 모델을 조심스럽게 디자인하라.
    • 좋은 AppleScript 통합(integration)은 사용자나 어플리케이션이 데이터와 상호 작용하는 것에 대한 사상이 필요하다.
    • 또한 프로그램의 데이터 구조와 주의깊은 통합이 필요하다.
posted by 쟤시켜 알바 2008/01/08 08:16
Characteristics of Great Software
  • High Performance
  • Ease of Use
  • Attractive Appearance
  • Reliability
  • Adaptability
  • Interoperability
  • Mobility
Adaptable 프로그램은 주변 환경에 적절하게 적응하는 것이다.
현재 환경이 바뀔 때 동작이 멈추지 않는다는 것이다.
네트워크 연결이 다운된다면, adaptable 프로그램은 사용자가 오프라인에서 계속 작업할 수 있게 해준다.
마찬가지로, 특정 리소스가 잠기거나 사용 불가능하게 되었을 때, adaptable 프로그램은 사용자의 요청에 맞는 다른 방법을 찾을 것이다.
Mac OS X의 강점 중 한가지는 설정 변화에 빠르게 적응할 수 있는 능력이다.
예를 들어, 사용자가 시스템 설정에서 컴퓨터의 네트워크 환경을 변경한다면, CFNetwork를 이용하여 네트워크 설정 변경을 자동으로 처리하는 사파리나 메일과 같은 어플리케이션이 자동으로 변경된 부분을 잡아낸다.

Guidelines
  • 인터페이스에 허용(forgiveness)와 영리함(intelligence)를 넣어라.
    • 소프트웨어가 파일 시스템 볼륨이나 네트워크가 사라지는 경우를 다룰 수 있게 하라.
    • 사용자에게 다른 볼륨에 저장하기나 추후 네트워크에 재연결과 같은 옵션을 제공하라.
  • 가능한 하드웨어와 접근할 수 있는 하드웨어에 가정을 피하라.
    • 하드웨어 구성은 컴퓨터, 국가, 사용자에 따라 아주 다르게 바뀔 수 있다.
    • 예를 들어, 모든 매킨토시가 프로세서에 벨로시티 엔진이 장착된것이 아니다.
    • 마찬가지로 모든 키보드가 같은 키셋을 가지고 있지 않다.
    • 하드웨어는 실행 중 추가되거나 제거될 수 있다.
    • 사용 가능한 디바이스 구성을 감지하기 위해 I/O 킷 인터페이스를 사용하라.
  • 현재 사용자의 장소에 의해 가정하지 마라.
    • 다른 날짜,  시간, 그리고 숫자 포맷을 다룰 수 있게 준비하라.
    • 또한, 현재 사용자의 주소 포맷이 반드시 사용 중인 주소 포맷이라고 가정하지 마라.
    • 예를 들어, 사용자는 address book에 외국인의 주소와 함께 연락처를 저장할 수도 있다.
  • 실행 환경을 가정하지 마라.
    • 프로그램이 NetBootk 환경에서 실행된다면, 시스템 리소스의 접근은 제한되거나 읽기 전용일 것이다.
    • 예를 들어, 전형적인 NetBoot 환경에서는 사용자의 홈 디렉토리만 쓰기 가능하다.
  • 화면 유효성과 해상도의 변화에 민감해져라.
    • Mac OS X는 모니터의 하플러깅을 지원하고 Quartz 서비스를 통해 변경을 어플리케이션에 알려준다.
    • 소프트웨어는 윈도우 위치와 크기를 조정하여 이에 대해 적절하게 반응해야 한다.
  • Modern 시스템 API를 사용하라.
    • 애플은 Modern 시스템 API는 구성 변경을 제대로 다루도록 동작한다.
    • 몇몇 legacy API 또한 구성 변경을 지원할 수도 있지만, 미래의 릴리스 버전에서 지원할 것이다
  • 커스텀 디바이스 드라이버를 만들지 마라.
    • I/O 킷은 많은 표준 프로토콜과 디바이스 타입을 지원하는 동작 드라이버를 포함하고 있다.
    • 이러한 드라이버에 의존하면  새 버전의 Mac OS X에서 하드웨어어가 자동으로 동작하는 것을 의미한다.

posted by 쟤시켜 알바 2008/01/08 08:04
Characteristics of Great Software
  • High Performance
  • Ease of Use
  • Attractive Appearance
  • Reliability
  • Adaptability
  • Interoperability
  • Mobility
사용자의 신뢰를 받을 수 있는 프로그램이 신뢰할만한(reliable) 프로그램이다. 사용자가 예상하고 바라는 방향으로 정보를 보여주는 그런 프로그램 말이다.
신뢰할만한 프로그램은 사용자의 데이터의 무결성을 유지시켜주고 데이터 상실이나 전와될만한 것을 방지해주기 위해 가능한 모든 것을 수행한다. 또한 이러한 것들을 충분히 해결할 수 있고 충돌 없이 복잡한 상황을 처리할 수 있다.
Reliability는 소프트웨어 디자인의 모든 분야에서 중요하며, 특히 오래 실행되는 프로그램에서 더욱 중요하다.
예를 들어, 과학 프로그램은 종종 큰 데이터 셋 계산을 수행하며, 계산을 수행하는데 오랜 시간이 걸린다. 만약 이러한 프로그램이 계산 도중 충돌이 일어난다면, 과학자는 몇일 또는 몇주간의 일하는 시간을 잃어버릴 수도 있다.

Guidelines
  • 사용자 인터페이스는 예상 가능한 방식으로 작동하게 하라.
    • 같은 종류의 액션들은 각각 같은 결과를 만들어야 한다.
  • 문서에 예상 가능한 결과를 제공하라.
    • 출력에서 있어, 사용자가 화면에서 보는 컨텐츠는 출력이 되는 것과 같게 하라.(Mac OS X 프린팅 다이얼로그에서는 프린트 미리보기 옵션을 제공하고 있다)
  • 문서를 불러오거나(import) 내보낼때(export) 데이터 손실을 줄이거나 없애라.
    • 프로그램이 다른 어플리케이션의 파일을 불러오거나 가져올 때, 파일 포맷을 완벽하게 지원하라.
    • 어플리케이션이 주어진 파일 포맷에서 모든 데이터를 가져오지 못하면, 사용자에게 데이터 손실이 일어날 수도 있다는 경고를 하고 원본 파일의 복사본에서 작업할 수 있는 옵션을 제공하라.
  • 다양한 환경에서 소프트웨어를 테스트하고 적절하게 반응하지는 검증하라.
    • 네트워크가 다운되거나 마운트된 볼륨이 사라지는지에 대해 시뮬레이션하고 소프트웨어가 적절하게 반응하고 처리하는지 확실하게 하라.
  • 패키징시 소프트웨어가 시스템 요구사항을 명확히 표기하라.
    • 소프트웨어가 저사양 하드웨어에서 테스트할 때까지 저사양 하드웨어에서 돌아간다고 가정하지 마라.
    • 마찬가지로, 지원하는 Mac OS X버전을 표기하라.
  • 에러를 예측하고 우아하게 다뤄라.
    • 함수가 결과 코드를 반환하면, 문제가 있는지 적절하게 반응하지는지에 대해 체크하라.
    • 또한 에러를 잡기 위해 예외 처리자를 사용할 수 있다.; 그러나, 최소한응로 사용하라.
    • 예외 처리자는 어플리케이션의 메모리가 차지하는 공간을 증가시키며 이는 performance를 떨어뜨린다.
  • 사용자 입력이 예상한대로 입력된 것인지 확실히 하기 위해 사용자 입력의 유효성을 확인하라.
    • 형식지정자(formatter object)는 사용자가 숫자와 날짜를 올바르게 입력할 수 있도록 도와준다.
    • 문제가 발생하는 것을 막기 위해 코드에서 사용자 입력 데이터의 유효성을 확인해야 한다.
  • 메모리 누수와 코드에서 발생하는 다른 문제들을 찾기 위해 애플이 제공하는 performance와 debugging 툴을 사용하라.
    • 이러한 툴들은 개발자가 알지 못하는 숨겨진 버그를 찾아낸다.
  • Legacy API보다는 modern API를 선택하라.
    • Modern API는 legacy API보다 더나은 시스템 설정 처리를 제공한다.
  • 커스텀 API을 시스템과 표준 기반의 API에 속하게 하라.
    • (표준 방식에 맞추라는 의미인듯)
posted by 쟤시켜 알바 2008/01/05 22:21
Characteristics of Great Software
  • High Performance
  • Ease of Use
  • Attractive Appearance
  • Reliability
  • Adaptability
  • Interoperability
  • Mobility
사용자가 매킨토시 플랫폼과 특히 Mac OS X에 끌리는 한가지 특징은 멋진(stylish) 디자인과 하드웨어와 소프트웨어의 attractive appearance다.
매력적인 하드웨어와 시스템 소프트웨어를 만드는 것이 애플의 일이지만, 소프트웨어에 attractive appearance를 가미하기 위해 Mac OS X의 강점을 이용해야만 한다.
Mac OS X와 함께 딸려 오는 파인더와 다른 어플리케이션들은 고해상도와 고품질의 그래픽와 32비트 컬러와 투명도를 포함하는 아이콘을 사용한다.
어플리케이션이 appearance와 사용자에게 연관성이 있는 정보를 더 잘 전달하기 위해 고품질 그래픽을 사용해라.
예를 들어, 시스템은 가장 나은 선택을 구분하고 윈도우에 차원 성질을 더하기 위해 투명효과를 사용한다.

Gudelines
  • 사용자 인터페이스를 디자인할 때 Part3에 있는 가이드라인을 따라라.
    • 가이드라인은 컨텐츠를 배치하는 방법과 소프트웨어의 시각적 외형을 디자인하는데 필요한 조언을 제공한다.
  • 패키징에서 사용자 인터페이스를 잘 다듬는 일까지, 소프트웨어가 전문적으로 디자인한 것처럼 보이게 하라.
    • 고화질의 그래픽과 아이콘을 사용하라. 필요하다면, 이러한 것들을 만드는 전문 그래픽 디자인 회사와 계약하라.
    • 컨트롤, 메뉴, 다이얼로그와 같은 표준 Mac OS X 사용자 인터페이스 요소를 채택하라. 시스템에서 제공하는 것들을 대신하기 위해 자신만의 커스텀 컨트롤이나 다이얼로그를 구현하지 마라.
    • 시스템에서 제공하지 않는 컨트롤이 정말로 필요하다면 이 문서에 있는 가이드라인을 참고하고 새로운 요소를 만들기로 결정하거나 기존에 있는 요소나 작동방식을 바꾸기 전에 'Extending the Interface'를 읽어라.
    • (이 부분은 추후에 보강해야할 것 같다.)
  • 32비트 색상을 사용하라.
    • Mac OS X는 32비티 색상에서 최고의 performance를 제공하도록 최적화되어 있다.
    • 시각적 요소에 8비트 색상 팔레트로 한정할 필요가 없다.
    • 8비트 그래픽은 최소한으로 지원되며 예전 어플리케이션을 지원하는데 대부분 충분하다.
  • 사용자 인터페이스를 디자인하기 위해 인터페이스 빌더를 사용하라.
    • nib 파일들을 사용하지 않더라도, 인터페이스 빌더가 제공하는 메트릭스를 사용하여 코드에서 화면과 컨트롤들을 정확히 배치할 수 있다.
    • (윈도우 계열은 공식적인 인터페이스 빌더가 없으니 패쓰, 물론 VS에서 할 수는 있지만 지원하는 형식에서만 사용가능하다.)
  • Quartz, Cocoa, ATSUI, 그리고 OpenGL과 같은 modern API를 사용하여 텍스트와 그래픽을 표현하라.
    • QuickDraw와 같은 legacy API를 사용하는 것을 피하라.