본문으로 바로가기
homeimage
  1. Home
  2. 컴퓨터/마이크로소프트
  3. Windows7이 여는 미래 컴퓨팅 환경

Windows7이 여는 미래 컴퓨팅 환경

· 댓글개 · 바다야크

오늘, 아니 벌써 어제가 되었네요. 28일 어제 건국대 새천년관에서 "Windows7이 여는 미래 컴퓨팅 환경"을 주제로 세미나가 열렸습니다. 최근에 런칭된 윈도7이 요즘 이슈인데요, 과연 Microsoft가 자랑하는 윈도7의 달라진 모습에 따라 프로그래머가 어떻게 따라 가야하는지, 따라간다는 표현이 그렇습니다만, 새로운 UI에 맞추기 위해서는 어떻게 해야 하는지 궁금해서 참석했습니다.

요즘 왜 이렇게 피곤하지? ..... 쩝

오전 9시 30분부터 등록을 시작해서 오전 10시 10분부터 오후 6시까지하는 "하루 꼬박" 세미나였습니다. 세미나를 들으면서 모두 이해하지는 못했지만, 그래도 궁금했던 것이 풀리기도 하고, 오히려 실망되는 부분도 있었습니다만, 문제는 저의 체력이네요. 어제부터 하루종일 눈이 감겨 고생했는데, 새벽까지 작업해서인지 세미나 내내 잠이 쏟아졌습니다. 자다가 깨다 가를 반복하면서 들었는데, 코를 골지나 않았는지 걱정이 되더군요.

달라진 윈도7 타스크바를 제대로 사용하려면,

첫 시간은 Keynote와 함께 달라진 Windows7의 UI에 대한 얘기였습니다. 그와 함께 짧게나마 윈도7에 대한 개발환경 구축에 대한 얘기가 나왔습니다. 그리고 벌써 비주얼 스튜디오가 2010버전이 나오는군요. 이미 베터 버전은 나온듯합니다.

두 번째 시간은 이전과 많이 달라진 윈도7의 작업 표시줄, Taskbar에 대한 프로그래밍 방법에 대한 소개였습니다. 윈도7은 이전 윈도우보다 기능이 많이 확장도 모습도 많이 바뀐 Taskbar를 제공하지요. 프로그램에서 사용했던 파일 목록을 출력하는 "Jump List"나, 버튼 위에 커서를 올려놓으면, 타스크 바 위로 작은 미리 보기  이 윈도우가 출력하는 것을 보면 편하다 싶었는데, 이게 윈도7에서 자동으로 만들어 주는 것이 아니네요. 물론 기본으로 출력되는 메뉴도 있습니다만, Jump List나 썸네일 이미지 같은 경우 프로그램으로 처리하고 윈도우에 요청해야 합니다.

예를 들어서 Jump List 같은 경우,

  myList = JumpList.CreateJumpList();
  myList.AddToRent( @"sample.txt");

이런 식으로 말이죠. 썸네일 툴바도 출력할 부분을 미리 지정해 줍니다. 다시 말씀을 드려 현재 출력 중인 화면에서 썸네일 툴바로 출력하는 부분을 지정한다는 말씀이 되겠습니다. 즉, 아래와 같이 말이죠.

  TaskbarManager.Instance.TabbedThumbnail.ThumbnailClip(Handle, 
      new System.Drawing.Rectangle( x, y, w, h));

썸네일툴바에 출력하는 버튼도 역시 프로그램에서 생성하여 출력합니다.

  Button = new ThumbnailToolbarButton( ... );

이 말씀을 왜 드리냐 하면, 윈도7을 생각지도 못한 옛날 프로그램에서는 윈도7의 Taskbar를 제대로 사용하지 못하겠다는 생각이 들기 때문입니다.

멀티터치 기능 구현은 어떻게

제가 제일 궁금했던 멀티터치 프로그래밍에는 여러 가지 방법이 있더군요. 가장 간단한 방법인 WM_GESTURE메시지를 이용하는 방법인데, 간단하고 쓰기 편한 대신에, 회전하면서 확대를 같이 하는 등의 고급 처리가 아쉽게도 구현할 수 없습니다.

WM_GETSURE보다 매우 수고스럽지만 WM_TOUCH 메시지를 이용하는 방법도 있습니다. 그리고 WM_TOUCH를 기반으로 "Manipulation API"를 이용하는 방법도 있었습니다. 그러나 설명을 들었을 때에는 과연 이와 같은 방법으로 고급 멀티터치 기능을 과연 구현할 수 있을지 의문스럽더군요. 단순한 것은 모를까 인터넷 동영상에서 보았던 그 화려한 손 동작을, ... 글쎄요... ^^;

이뿐만 아니라 인텔에서 멀티 코어 프로그램에 대한 강좌도 있었습니다. 지금을 Two-Core를 많이 사용하지만, 4-Core 제품이 나왔고, 앞으로는 하나의 CPU에 더 많은 Core가 붙어, 더욱 기능이 강화되는 멀티 코어 제품이 나올 것입니다. 그러나 이런 코어 수의 증가는 컴퓨터의 속도를 증가시키려는 목적 뿐만은 아니라는 것을 알게 되었습니다.

물론 처리 속도를 올리기 위해 하나의 CPU에 더 많은 Core를 추가하는 것이겠습니다만, 엔진 속도를 올리는 Clock 수를 올리면 열이 나기 때문에, 열 문제 때문이라도 Clock 수를 높이는 대신에, Core 수를 늘린다고 하더군요. 그렇습니다. 속도도 중요하지만 열 문제도 큰 문제이거든요.

짧은 후기

이렇게 새로운 것을 알게 되어 즐겁기는 하지만 과정이 그렇게 즐겁지는 못했습니다. 프로그램 코드를 일일이 상세하게 설명해 주는 것은 감사하지만, 상세한 것은 생략하고 간단하게 정리된 코드를 먼저 보여 주었더라면 하는 아쉬움이 들었습니다. 아니면, 먼저 커다란 몸체를 대충 보여주고 상세 코드를 보여 주었다면, 훨씬 박진감있는 시간이 아니었을까 하는 생각을 해 봅니다. 위아래로 계속 스크롤해 가면서 소스를 설명하니 ....

SNS 공유하기
💬 댓글 개
최근글
이모티콘창 닫기
울음
안녕
감사해요
당황
피폐

이모티콘을 클릭하면 댓글창에 입력됩니다.