Microsoft MVP성태의 닷넷 이야기
XAML 이 뭘까? [링크 복사], [링크+제목 복사]
조회: 8937
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

XAML?


XAML 이 뭘까? 간혹... 이에 대해서 단순히 WPF 의 표현 언어라고만 알고 있는 사람들이 있습니다. 여기에 대해 간단히 짚고 넘어가 볼까요? ^^




우선, XAML 의 올바른 정의는 다음과 같습니다.

  • Don Box has a great description of what XAML is "A way to wire up CLR objects, no more, no less".
  • Chris Anderson’s definition of XAML ? "XAML is a declarative markup language that defines an object model"
; http://donxml.com/allthingstechie/archive/2004/11/28/1550.aspx

즉, XAML 은 WPF 전용 언어가 아니라는 것이죠. 실제로 WPF 와 XAML 에 대한 설명을 보면 다음과 같은 표현이 나옵니다.

Windows Presentation Foundation (WPF) implements a Extensible Application Markup Language (XAML) loader

그렇습니다. WPF 는 단순히 XAML 용 Loader 를 구현한 응용 사례에 불과한 것입니다.

이쯤되면,,, WF(Workflow Foundation) 에서 사용되는 XAML 에 대한 개념도 이해되기 시작합니다. 즉, WF 역시 XAML 용 Loader 를 구현했다는 것이지요. 그래서 Wikipedia 의 정의에 보면 다음과 같은 표현이 나옵니다.

1. XAML is used extensively in the .NET Framework 3.0 technologies, 
particularly in Windows Presentation Foundation (WPF), 
where it is used as a user interface markup language to define 
UI elements, data binding, eventing, and other features, and 
in Windows Workflow Foundation (WF), in which workflows themselves can be defined using XAML

2. XAML elements can map directly to Common Language Runtime (CLR) object instances 
whereas attributes can map to CLR properties and events on those objects

; http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language

사실... 어찌보면, XAML == WPF 라고 잘못 여기고 있는 것이 한편으로는 이해가 되곤 합니다. 요즘 들어, 어딜 가도 UI/UX/RIA 라고 도배를 하고 있으니. ^^ (개인적으로, 마치 소프트웨어 개발이 그것이 전부인 양 선전하는 것을 보면 한숨이 절로 나옵니다.)

아뭏든... XAML 을 WPF 라고 이해하시는 분들은, 다음의 토픽을 꼭 먼저 읽어본 후에 XAML 공부를 계속하시기 바랍니다.

Amazing XAML
; http://www.microsoft.com/belux/msdn/fr/community/columns/himschoot/amazingxaml.mspx

(위의 글을 쓴 사람의 소개에 Microsoft Regional Director 라고 되어 있는데요. 이는 마이크로소프트 내부 직원이 아니라, 외부 인사 중에서 주어지는 - 일종의 Microsoft MVP 와 같은 혜택을 받은 사람입니다. 말 그대로 지역별로 이런 RD 가 선출이 되는데,,, 물론 한국에도 있는 것으로 알고 있습니다. 현재 한국 RD 는 누구인지는 모르겠지만... 조만간 위와 같은 멋진 글을 쓰시길 기대해 봅니다. 음, 저런 글을 보면... 부럽군요. ^^)



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]


donaricano-btn



[최초 등록일: ]
[최종 수정일: 2/5/2008 ]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer@outlook.com

비밀번호

댓글 쓴 사람
 



2008-03-10 07시27분
[키온] 설마 한국의 Microsoft RD가 진짜 모르는건 아니죠? 그 사람 메일 주소가 funnyfox라는....
[손님]
2008-03-10 07시44분
넵. funnyfox 님의 ^^ 멋진 글을 기대해 온지 십수년(^^;)... 은근한 압박으로다가 위와 같은 글을. ^^
kevin25
2008-03-10 04시36분
[짜두] 음~ 정말 누굴까요?~ㅎㅎㅎ
[손님]
2008-03-26 10시44분
kevin25

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
469정성태1/2/201411553ATI - DVI에서 HDMI 케이블로 바꿨는데 화면 축소 현상
467정성태1/1/201413165개발자 여러분들에게 추천하는 상품 - 책상용 팔걸이 레스트보드(RESTBOARD) [4]
466정성태11/27/201314595제니퍼소프트는... [3]
464정성태11/5/201310075사파리 웹 브라우저의 메모리 leak 현상 [4]
463정성태10/31/20139220Adobe Reader로 PDF 파일 저장할 때 CPU 100%치는 현상
462정성태11/1/201311737우와~~~ 성태가 책을 썼습니다. ^^ [9]
461정성태9/19/20138108TED 강연 - Marla Spivak: Why bees are disappearing
460정성태8/19/201314268PC의 시간이 맞지 않는 경우, CMOS 배터리 교체 [2]
459정성태8/11/20139856TED 강연 - 에이미 커디(Amy Cuddy): 당신의 신체 언어가 자신의 모습을 결정한다.
458정성태5/11/20139732생각의 전환: 1. 개인 인공위성을 만든 미디어 아티스트 송호준 [3]
457정성태4/1/201312084삼성 노트북 - 고성능 전원 옵션에서 액정 화면이 어두운 경우
456정성태3/11/201311385재미있는 수학 문제 하나: x = y 일때 2 = 1 ? [3]파일 다운로드1
455정성태3/7/201312976윈도우 서버 2012에서 플래시가 동작하지 않는 경우
454정성태1/25/20139108네이버의 애드포스트 수익이 해피빈으로도 전환된다는 사실! 아시나요? [2]
453정성태1/23/201318963윈도우 8/2012 업데이트 후 Windows.old 폴더 삭제하는 배치 명령어 [5]
452정성태1/21/201319901시스템 트레이에 블루투스 아이콘 나오게 하는 방법 [1]
451정성태1/16/20138713세상을 바꾸는 노력 - 정치후원금
450정성태12/31/20129339유연한 개발자의 2013년 새해 인사 [7]
449정성태1/8/201415340새로운 노트북 - 삼성 센스 NT700Z5C-S88 크로노스 [2]
448정성태12/14/201212716유튜브(Youtube) 비디오 파일을 안전하게 다운로드 받는 방법 [1]
447정성태12/14/201287224분짜리 Ad-Movie 입니다.
446정성태10/28/201225852오피스 2013 한글 버전 설치
445정성태10/24/20129295생애 처음으로 펀드를 하다. ^^
443정성태10/10/201210714HD 4500 그래픽 카드 및 Bamboo 펜에 대한 윈도우 8 문제 해결 [1]
442정성태9/26/20121553764GB 램을 가진 새로운 작업 PC [6]
441정성태9/11/201215792윈도우 8 백업 오류 - 0x800700E1
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...