2. UI 자동화 기술 개요

Microsoft 사에서는 Windows 운영체제에서 동작하는 대부분의 UI(사용자 인터페이스) 요소를 프로그래밍 방식으로 액세스할 수 있는 Miscrosoft UI 자동화를 제공합니다. 따라서 이 책의 대부분의 내용은 MSDN에서 자동화 요소 기술을 소개하는 것을 기반으로 작성하였습니다. MSDN에 여러 페이지로 흩어져 있는 내용을 항목 별로 묶고 각색하여 작성한 것이 많습니다.

보다 정확한 내용을 원하거나 자세한 내용을 원하시는 분들은 MSDN을 함께 보시면 자동화 기술을 익히는데 보다 많은 도움을 줄 것입니다.

MSDN에서는 UI 자동화를 WPF(Windows Presentation Foundataion)을 지원하는 모든 운영 체제에서 사용할 수 있는 Microsoft Windows의 새로운 내게 필요한 옵션 프레임워크로 정의하고 있습니다.

UI 자동화 기술은 프로그래밍 방식으로 데스크톱에 있는 대부분의 UI 요소를 제어할 수 있으며 다양한 UI 정보를 얻어와 사용자에게 제공할 수 있습니다. 대부분의 UI 요소라고 한 이유는 응용 프로그램을 개발하는 개발자가 새로운 형태의 UI 요소를 개발할 때 접근할 수 없게 만들어 UI 자동화 기술로 접근하지 못할 때도 있기 때문입니다. 이와 같이 제작한 것을 접근성이 떨어진다 혹은 접근성이 없다고 말합니다. 따라서 응용 프로그램을 개발할 때는 UI 자동화 기술로 제어할 수 있게 구현하여야 합니다. 응용 프로그램을 접근성 있게 개발하면 UI 자동화 기술을 이용하여 보조 기술이나 접근성 평가 도구를 통해 UI 요소를 제어하거나 정보를 수집할 수 있습니다.

이와 같은 UI 자동화 기술은 키보드나 모니터 등의 표준 기술이 아닌 다른 하드웨어 장치나 소프트웨어 기술로 컴퓨터를 사용할 수 있게 제공하는 보조 기술을 개발할 때 사용합니다. 미국에서는 이미 1985년 법률(재활법 508조)로 이를 보장하고 있으며 Microsoft 사는 이를 준수하기 위해 UI 자동화 기술을 제공하고 있습니다. 따라서 윈도우즈 운영체제에서 보조 기술을 만들 때 사용하는 표준 기술을 UI 자동화라 할 수 있습니다.

UI 자동화 기술은 보조 기술을 개발할 때도 필요하지만 특정 소프트웨어가 접근성을 보장하는지 테스트하기 위한 평가 도구를 개발할 때도 사용할 수 있습니다.

이번 장에서는 UI 자동화 기술의 구조와 이들에 관한 간단한 소개를 할게요.

그리고 UI 자동화 기술에서 중요한 UI 요소와 UI 자동화 속성, UI 자동화 이벤트, UI 자동화 트리, UI 자동화 컨트롤 패턴에 관하여 간단히 소개합니다. 이들에 관한 자세한 소개와 사용 방법은 3장부터 자세히 다루고 있습니다.

이번 장에서는 UI 자동화 기술을 간략하게 소개하고 이를 사용하는 아주 간단한 포커스 트레커를 만드는 실습을 진행할 것입니다.