Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.

Microsoft UX 기술여행 3주차 "WPF A부터 Z까지"

 2주차때 한번 참석해 보고는 괜찮아서 계속 참석해 보려고 하고 있다. 시간의 압박도 있고 의지의 압박도 있고 이렇게 세미나를 참여 하는 것은 공부하고 익히는데 도움이 되기 때문에.... 일단 난 아직 VS 2008도 못깔았지만 그래두 어떤식으로 실버라잇이라는 녀석이 돌아가는 것이 약간은 이해가 가고 있다.

3주차는 WPF에 대한 부분이다. 알다시피 WPF는 Windows Presenatation Foundation이고 윈도우 비스타가 출현하면서 이곳에서 화려한 그래픽 UI를 표현하기 위해서 만들어 진 녀석이다. 비스타의 에어로 기능 같은 걸 생각하면 된다. 그리고 이 WPF를 웹에서 할 수 있게 만든게 실버라이트이다. WPF는 실버라이트랑 같다고 할수는 없지만 베이스는 같고 따로 분류할 때가 없어서 그냥 여기나 집어넣었다.

결과부터 말하자면 3주차 세미나는 2주차 보다는 좀 못한 느낌이었다. 바빠서 그랬던 것인지 약간 준비가 부족한 느낌을 받았다. 배운게 없는 것은 아니고 발표 준비하신 분들에게는 미안하지만 실제로 느낌게 좀 그랬다. 어쨌든 3주차 세미나는 닷넷채널에서 진행을 하였다.

WPF는 또 나랑은 분야가 다르기 때문에 쉽게 이해하기는 약간 어려웠다. 대충 내가 이해한 걸 좀 정리하는 차원이 될 것 같다.


  • 닷넷 2.0부터는 상위호환성을 유지하고 있기 때문에 닷넷 프레임워크 3.5를 깔면 2.0부터는 다 사용할 수 있다. 닷넷 2.0코드도 약간의 컨버전만 하면 동일하게 사용할 수 있다.
  • WPF는 Vista의 UX를 위해서 XML로 설계된 UI이고 XML을 통해서 디자이너와 공유하게 된다.
  • 닷넷과는 달리 보통 그래픽에서 사용하는 GDI+를 사용하지 않고 Milcore라는 중간 레이어를 통해서 직접 DirectX에 접근한다.
  • 플랫폼 인디펜던트 하다는 것은 다른 말로 하면 최적화가 어렵다는 뜻이기도 하다. Flex같은 경우는 Platform Indepentant하기 때문에 HW에 접근할 수 없어서 자연히 CPU의 부하가 커진다.
  • XAML의 각 부분을 객체로 파싱해서 메모리에 올리기 때문에 빠르고 빌드할 때 binary형로 만든다.(그냥 XAML을 읽어서 사용하는 경우에는 해당되지 않는다.)
  • XAML은 객체의 표현이다.
  • Gabage Collect는 고려해야 한다.
  • 실버라이트는 2D만을 지원하지만(2D로 3D효과를 낼 뿐) WPF는 Vector형태의 3D객체를 직접 다룰 수 있어서 Full 3D를 지원한다.
  • MS에서는 아직 3D를 위한 프로그램이 나오지 않았지만 ZAM3D(3DMAX파일 지원)라는 프로그램을 이용하면 3D로 만든 것을 XAML로 내보낼 수 있다.



WPF 활용 3종 세트

1. Full WPF Application : 성능을 최대한 끌어올릴 수 있는 형태이다. 닷넷프레임워크 3.x대가 필요하고 XP이상에서만 사용가능

2. XBAP1 : Xbap을 이용하면 WPF로 만든 것을 그대로 웹으로 올릴수 있다. (단 IE에서만 가능하다.), 모든 코드를 HTTP를 통해서 받으며 Sendbox보안모델의 적용을 받는다.


3. 실버라이트 : 실버라이트 플레이어에서 실행되며 Sendbox보안 모델의 적용을 받는다, 운영체제에 상관없이 사용할 수 있으면 대부분의 브라우저를 지원한다.
WPF는 CS단을 위한 것 이지만 Xbap2을 이용하면 WPF로 만든 것을 그대로 웹으로 올릴수 있다. (단 IE에서만 가능하다.)




WPF는 일단 웹이 아니고 개발언어의 대한 나의 지식이 조악한 관계로 흘려들어야 하는 부분이 많았고 뒤에 앉아서인지 집중하기가 좀 어려웠다. 가장 큰 이유는 상당부분이 지난번 세미나랑 겹친 부분이다. 물론 각 커뮤니티에서 준비하는 거고 Silverlight에서 중요한 건 WPF에서도 중요한 거지만 24주라고 대대적인 광고를 하고 도장까지 찍어주면서 참여를 유도하는 만큼 강좌의 흐름을 이어줄 책임이 MS측에 있지 않나 하는 생각이었다.

더군다나 중간에 디자이너와의 협업이라는 이름으로 진행된 부분은 지난번과 완젼히 겹치는 부분이면서도 발표는 발표라고 하기도 어려웠다. 익스프레션 키는데도 한 5분 걸린것 같고 머 기능하나 보여주는데 기본적으로 5분씩은 걸린것 같다. 5분동안 혼자 만지다가 이렇게 됩니다. 하고 또 다시 5분.... 지난번에 보지 않았다면 머하는지도 몰랐을 듯... 나도 회사에서 발표해봤지만 발표하기가 쉽지 않은 건 이해하지만 MS의 이름을 걸고 하는 세미나에서 이런 부분은 꽤나 아쉬운 부분이었다.

관련 발표자료는 이 곳에서 다운로드가 가능하다. 강의르 촬영한 웹캐스트도 같이 제공하고 있으며 PPT자료도 제공하고 있다. MS 로그인이 필요하다.



내 이해력부족으로 정리내용이 좀 빈약하기도 하고 그래서 그동안 있었던 실버라이트 관련 정보를 추가로 좀 적겠다.

1. 일단 실버라이트 1.1의 버전이 2.0으로 변경이 되었다. MS의 여태의 행보로 보아 욕심은 컸는데 Adobe가 계속 시장을 먹고 있는 건 못보고 있겠고 관심도 더 끌기 위해서 js가 베이스코드인 실버라이트를 1.0을 먼저 출시했다. 그리고 추가적인건 1.1에서 해줄께!! 라고 했는데 이게 단순히 0.1버전의 업글 수준이 아닌 수준이 되어버렸고 MS도 그걸 깨달았는지 얼마전에 내년에 발표예정이었던 실버라이트 1.1의 버전을 2.0으로 변경했다.

2. xbap에 대한 얘기가 본문에 있었는데 이걸 볼수 있는 사이트를 하나 소개하겠다.

사용자 삽입 이미지
영국 국영도서관에서 xbap으로 서비스를 하고 있다. 참고로 링크를 따라가면 나오는 닷넷프레임워크 3.5를 깔아야 한다. 시간은 꽤 걸린다. 일단 IE랑 네이트온등을 꺼주어야 프레임워크를 깔수 있다. 재부팅하라고 나오는데 재부팅은 하지 않아도 된다. 좀 느리긴 하지만 여러 효과가 볼만은 하다..

3. 엠넷이 실버라이트 1.0으로 된 서비스를 오픈했다. 국내에서는 SBS의 nView에 이어 두번째인데 개인적으론 nView보다는 훨 멋지다. 깜짝! 놀랬다. 실버라이트를 계속 좀 관심 주면서 실버라이트가 강세를 보여줄수 있는건 화려한 메뉴나 그런것 보다는 동영상쪽이라고 생각을 했는데 그걸 여실히 보여주었다.
알려진 바에 의하면 1.1로 다 작업이 되었었는데 1.1의 출시가 내년이 되면서 상업적 라이센스가 없기 때문에 1.0으로 다시 변환을 했다고 한다. 닷넷으로 한걸 Javascript로 만드는데 이렇게 퀄리티가 좋을 수 있다니... ㅠ..ㅠ 공도님이 프로젝트를 진행하셨다고 한다...

사용자 삽입 이미지
죽인다... 동영상을 보면서 옆에서 끌어다가 화면에 던지면 PIP3로 동작한다.  PIP화면을 이동할수 있고 클릭하면 주화면과 바뀐다. 풀스크린으로 볼수도 있고 아래 관련영상도 나오고 현재 영상의 일부구간을 따로 저장할 수도 있다.

신기술을 저렇게 멋진 서비스로 만들수 있는 개발자들의 환경이 부럽고 저걸 기획해 낼 수 있는 기획자가 부럽다...

  1. XAML Browser Application [Back]
  2. XAML Browser [Back]
  3. Picture In Picture : 화면안에 또 하나의 화명을 보여주는 것을 말한다. [Back]
2007/12/12 01:21 2007/12/12 01:21

유감스런 엠파스(Empas)의 검색엔진

(원래는 좀더 자극적인 제목을 썼다가 시간이 좀 지나고 그러다 보니 약간 노말(?)한 제목으로 바꾸었다. 낮에 포스팅 할라다가 바빠서.. ㅡ..ㅡ)

오늘 내가 자주가는 사이트중 하나인 SLRClub에 갔더니 엠파스 관련 글이 많이 올라와있었다. 먼가 했더니 자유게시판(다른 게시판도 되는지는 잘...)의 글이 엠파스에서 검색이 된다는 것이었다

사용자 삽입 이미지
실제로 가서 해보니 검색이 아주~ 잘 되었다.... 안그래도 사람많은데 너두나두 가서 검색하다보니 자유게시판에서 유명한 닉들이 하나하나씩 급상승 실시간 검색어에 오르는 헤프닝까지 발생했다. 자유게시판에 올린글이 다 올라오고 사진을 같이 올린 글은 썸네일까지 제공하고 있었다. ㅡ..ㅡ

대부분 아는 사항이겠지만 혹시 잘 모를 분들을 위해(나도 잘 모른다.) 검색에 대해서 조금 얘기를 하자면 검색사이트를 제공하는 곳에서는 크롤러라는 게 있다. 검색봇이라고도 한다.(물론 물리적으로 존재하는 건 아니다. ㅡ..ㅡ) 하여튼간 이 크롤러가 웹페이지를 미친듯이 돌아다니면서 웹페이지의 정보를 가져오고 그걸 분석해서 제공하는게 우리가 쓰는 검색엔진이다. 그래서 이 크롤러의 성능에 따라도 많이 달라지고(요즘은 다들 잘 긁어오는듯...) 구글처럼 가져온 데이터를 어떻게 분석하느냐에 따라 검색의 결과가 많이 달라지게 된다.

나두 크롤러의 내부구조같은건 잘 모르지만 일단 이녀석은 우리가 들어갈 수 있는 대부분의 웹사이트에는 다 들어갈 수 있다. 하지만 당연히 웹페이지란건 다 html소스이므로 이걸 분석해서 긁어오는 것이다. 실제 기술 구현을 해본건 아니지만 html과 웹이란 특성을 생각했을때 긁어오는 것 자체는 막을 방법이 없다. 그냥 와서 긁으면 되니까...

하지만 웹이란건 오픈이 일반적이지만 모두 그런건 아니다. 여자친구랑 비밀얘기를 하고 싶을 수도 있고 개인 일기장으로 사용할 수도 있다. 개인 공간이라고 생각하고 비밀스런 내용을 적었는데 네이버에서 검색한방에 나와버린다면 참으로 난감한 일이 아닐 수 없다. 그러면 누가 웹을 맘놓고 쓰겠는가.....

그래서 robots.txt라는 게 있다. 파일명을 보듯이 알겠지만 그냥 텍스트 파일이다. 이게 표준안이고 사이트도 있다.
아까 말한 크롤러가 사이트를 긁어갈라고 웹사이트에 오면 일단 루트경로에 robots.txt파일을 까본다. 그러면 표준안에 맞게 내용을 어디는 긁어가도 되고 어디는 긁어가면 안되는 지가 써있다. 그걸 보고 허용된 만큼 수집을 해가는 것이다.

물론 표준안이기 때문에 법적 구속력은 없기 때문에 크롤러가 이 표준안을 따르지 않고 수집하려면 할 수 있다는 얘긴데 이게 이제 막 제정된 표준도 아니고 개인적으로 만든 검색엔진도 아니고 상업적으로 운영되는 크롤러라면 당연히 준수해 주어야 할 상도같은 거다. 그리고 이걸 지키지 않으면 비난을 면치 못할 꺼라고 생각했다.

근데 그런 일이 벌어졌다. 그것도 어디 듣도 보도 못한 곳도 아니고 한국 검색사이트하면 5-6번만에 이름 나올만한 엠파스에서.....

사용자 삽입 이미지

자유게시판에 이에대해 많이 올라오는 글을 보고는 SLR클럽의 robots.txt를 보았다. SLR클럽 이하 모든 내용을 어떤 검색엔진도 크롤링을 허용하지 않겠다는 의미이다. 표준안을 지키는 크롤러라면 루트에 와서 저거 열어보고는 그냥 다시 다른 사이트로 가면 된다.

사용자 삽입 이미지

엠파스에 가서 좀 이름 유명한 닉으로 검색하면 열린게시판이란 부분에서 마구 쏟아지고 친절하게 썸네일까지 제공해주고 있다. 물론 누르면 SLRClub으로 간다. 자유게시판 같은 부분은 로그인을 안해도 볼 수가 있는 곳이기 때문에 뭐가 문제냐고 생각할지도 모르지만 이건 솔직히 개념을 상실한 거라고까지 생각이 된다. 더군다나 얘기를 듣자하니 이문제로 여러번 항의를 했는데도 고쳐지지가 않는다고 한다.

명시적으로 수집을 거부했는데 그것도 지키지 않다니.... SLR클럽같이 좀 크고 공통단어로 나오는 결과가 많기 때문에 확인이 가능했지만 공개하기를 거부한 어떤 내용을 엠파스가 검색결과로 보여주고 있는지는 모를일이다.

일단 현재로선 많은 항의가 들어와서인지 (일시적인지 몰라도) SLR클럽의 글들은 오후늦게부터는 검색결과에 나타나지 않고 있다. 물론 그에대해 특별히 엠파스의 입장 표명은 없었던듯 하다.(있
2007/12/06 23:35 2007/12/06 23:35