스나이퍼님의 뽀대나는 프로그램 한번 만들어보고 싶다.에 대한 트랙백.
최근의 프로그램들은 스나이퍼님께서 지적하신대로 대부분 아주 훌륭한 UI 요소를 지니고 있습니다. 버튼, 배경, 타이틀바 어느곳 하나 윈도우의 표준적 요소를 찾아볼 수 없는 프로그램이 대부분이죠. 아마도 윈앰프의 스킨 기능이 나오면서부터 이러한 것들이 일반화 되기 시작한 것 같죠.
하지만 이러한 리치 UI에는 크게는 두가지 부류가 있습니다. 한가지가 위에서 제시한 윈앰프류라고 볼 수 있습니다. 다른 분야는 MS 오피스에서 찾을 수 있습니다. MS 오피스의 경우 크게 뭔가 디자인적인 요소는 찾을 수 없지만, 윈도우의 표준 인터페이스에서 가장 진보한 수준의 UI를 보여주는 프로그램이죠. 오피스를 97부터 모아놓고 보면 아마도 그네들의 UI가 얼마나 많이 바꼈는지를 알 수 있을 겁니다.
아래는 스나이퍼님의 블로그에서 지적되었던 MS CRM 프로그램의 스크린 샷입니다.
대부분의 코멘트를 다신 분들이 디자이너의 힘을 강요했지만, 위의 스크린샷에는 그렇게 많은 이미지가 포함되어 있지 않습니다. 많아야 2~3개 정도의 이미지겠죠. 눈에 띄는 것은 그나마도 큼지막한 아이콘 두개가 전부입니다. 하지만 위와 같은 비트맵 요소가 모두 주어진다고 해도 위와 같은 다이알로그를 처음부터 끝까지 만드는 것은 그리 수월한 작업은 아닙니다. 디자이너적인 요소보다는 프로그래밍적 요소가 더 많이 필요하다는 의미죠.
왼쪽은 멜론 서비스에서 사용되는 플레이어 프로그램입니다. 이러한 프로그램이 비트맵으로 도배된 전형적인 프로그램의 모습이죠. 실제로 이러한 UI를 구현하기 위해서는 디자이너의 힘이 절대적입니다. 디자이너 없이 이런 UI를 만들었다면 그 프로그래머는 디자이너 해도 굶어죽진 않겠죠. 이러한 리치 UI또한 모든 비트맵이 지원되더라도 쉽게 만들 수 있는 것은 아닙니다. 많은 UI 프로그래밍 테크닉이 절대적으로 필요하죠.
많은 프로그래머들이 디자이너가 없어서 훌륭한 UI를 만들 수 없다는 이야기를 종종합니다. 하지만 실제로 그러한 비트맵이 주어져도 그러한 UI를 만들기가 쉽지 않다는 것을 아는 사람은 많지 않죠. 물론 상용 UI 라이브러리를 쓴다면 이야기는 다릅니다.
제가 몇해동안 일하면서 느낀점은 저정도의 UI를 프로그래밍하는 것도 쉽지 않다는 것이며, 그런 정도를 프로그램할 수 있는 프로그래머도 거의 없다는 점입니다. 또 한가지는 저러한 애플리케이션 디자이너도 절대적으로 부족하다는 점이죠. 제가 회사에서 일해본 대다수의 디자이너 분들은 애플리케이션의 기본적인 기능을 이해하지 못하신 분들이 대부분이었습니다.
첫번째로 제시된 MS CRM 프로그램이 그럴듯해 보이는 가장 큰 이유는 배치입니다. 적절한 위치에 적절한 비트맵이 있고, 간격이 적절하며 내부 타이틀바와 선들 또한 일정한 규칙에 의해서 통일된 느낌을 주죠. 밑에있는 멜론 플레이어도 초록색으로 전체적으로 일관된 느낌을 줍니다.
하지만 회사에서 가져오는 대부분의 시안들은 말그대로 그림을 그려오는 경우가 대부분입니다. 가지 각색으로 구성된 트루컬러 그라데이션 비트맵 버튼들을 가져오는 것은 기본이죠.
제가 지금 일하는 회사의 제품도 결과물만을 보면 제법 쓸만한 UI를 제공합니다. 비트맵으로 말이죠. 물론 저는 UI에 관여하지 않기 때문에 직접 만들지 않았지만, 한날 문제가 생겼다고 해서 가보니까 굉장한 꽁수를 쓰더군요. 화면 전체를 비트맵으로 덮은 다음 텍스트 상자나 콤보 상자가 들어가야 할 자리에만 보더를 없앤 그것들을 배치해 버리더군요. 보더도 비트맵에 모두 포함되어 있습니다. 급조하기 위해서는 꽤나 쓸만한 방법이라는 생각이 들더군요.
물론 그런만큼 프로그램은 터무니없이 무겁고 버벅됩니다. 제대로된 리치 UI를 만드는 일은 무척이나 어려운 일임에 틀림없습니다. 뛰어난 프로그래머와 함께 감각을 지닌 디자이너 모두가 필요하기 때문이죠.