검색/모바일 이야기
어도비 플래시, 단말기별 최적화 '고민 끝'
숲으로가다
2011. 3. 9. 17:59
▲ 어도비 디벨로퍼 에반젤리스트 라이언 스튜어트
단말기, 플랫폼과 함께 다양화 추세에 놓인 것이 콘텐츠와 애플리케이션(이하 앱) 개발툴이다. 어도비는 플래시 기술로 어디서나 돌아가는 콘텐츠와
앱을 만들 수 있다고 외치고 있지만, 그것만으로는 차별화하기 어려움을 스스로 안다.
어도비는 그래서 플래시로 브라우저용 콘텐츠와 네이티브 앱을 모두 만들어낼 수 있도록 하는 전략과 함께, 화면 크기에 상관 없이 레이아웃을 자동 최적화하고 한 번 개발해서 여러 플랫폼에 배포할 수 있는 기술을 제공한다고 강조한다.
라이언 스튜어트 어도비 디벨로퍼 에반젤리스트는 지난 7일 서울 삼성동에서 열린 기술 세미나 '어도비 리프레시'에 참석해 "어도비 플래시는 '인브라우저' 콘텐츠와 (네이티브) 앱을 실질적으로 모두 지원하고 있다"며 "웹브라우저나 운영체제(OS)가 플래시를 지원하지 않더라도 '어도비AIR'를 통해 네이티브한 앱을 만들어 실행토록 하고 있다"고 말했다.
■브라우저에서든, 네이티브 앱으로든
그에 따르면 개발자들은 자신이 만든 앱이 가능한 많은 플랫폼에서 돌아가길 원한다. 원래 데스크톱 환경을 겨냥해 만든 리치인터넷애플리케이션(RIA)도 최근 늘어난 모바일로 구현하고 싶어한다는 것.
어도비는 이같은 개발자 수요에 따라 어도비AIR를 모바일로 가져왔다. 이전까지는 일반PC 환경에 한정된 앱 개발 프레임워크였다. 브라우저에서 돌아가는 '모바일 플래시'만으로는 모든 플랫폼을 아우를 수 없었기 때문이다. 지난해 스티브 잡스 애플 최고경영자(CEO)가 플래시를 두고 '모바일에 맞지 않는 기술'이라고 단언하며 아이폰 운영체제(iOS)에서 지원하지 않을 뜻을 분명히 했던 게 대표 사례다.
어도비AIR로 만든 모바일 앱은 단말기 카메라, GPS, 가속도계 등을 제어하는 네이티브 '애플리케이션 프로그래밍 인터페이스(API)'를 지원한다.
간단히 말해 플래시로 한 번 만든 프로그램을 구글 '안드로이드' 기반 스마트폰, PMP, 구글TV, 태블릿은 물론이고 리서치인모션(RIM) '블랙베리'와 '플레이북'에서 모두 돌릴 수 있다는 얘기다. 브라우저에서 플래시를 보여주지 않는 아이폰과 아이패드도 AIR 기반 애플리케이션을 변환해 실행 가능하다.
반대로 AIR 기반 애플리케이션을 지원하지 않을 때는? HP 웹OS나 구글 크롬OS처럼 브라우저용 플래시 플러그인을 통해 실행하면 된다. 이를 두고 '인브라우저 콘텐츠'라고 표현한 것이다. 안드로이드와 RIM의 플랫폼은 사실 플래시든 AIR든 모두 돌아간다.
■"화면 크기, 제각각이어도 괜찮아"
단말기 크기만큼이나 다양한 것이 정보를 표시하는 화면 크기와 해상도다. 플래시가 아무리 날고 기는 멀티플랫폼 솔루션이라도 각 화면에 대한 최적화 작업이 필요하지 않냐는 지적이 나온다.
어도비는 플래시 개발툴에 이에 대한 대책을 마련해 뒀다. 그간 나온 모바일 앱의 특성을 조사한 뒤 공통점을 추려내 모바일 환경에 알맞은 시각 요소들을 미리 만들어 제공하는 것이다.
스튜어트 에반젤리스트는 "어도비 플렉스(Flex) 애플리케이션 프레임워크에서는 모바일에 최적화된 콤포넌트를 제공하고 '픽셀 밀집도'라는 기능을 지원한다"며 "개발자들이 여러 단말기에서 콘텐츠나 앱을 테스트할 때 원래 디자인한 의도를 벗어나지 않도록 설정 가능하다"고 설명했다.
픽셀밀집도는 일정한 화면 크기에 실제로 나타내는 화소수가 얼마나 많은지 나타내는 비율이다. 예를 들어 멀리서 봐야 하는 TV 단말기는 픽셀밀집도가 낮은 편이고, 코앞에서 봐야 하는 휴대폰은 픽셀밀집도가 높은 편이다. 모바일기기는 픽셀밀집도뿐 아니라 전체 화소수를 나타내는 해상도도 서로 다르다.
픽셀밀집도와 해상도가 심하게 다를 경우 생기는 문제는 이렇다. 예를 들어 어떤 앱에서 문자열을 표시한 단추를 만들 때 단추의 크기가 다르거나, 너무 작은 단추일 경우 그 글씨를 알기 어려울 정도로 찌그러져 보일 수 있다.
스튜어트 에반젤리스트는 "콘텐츠나 앱을 만들기 위해 수많은 단말기와 해상도에 알맞는 설정값을 관리하는 것은 개발자에게 부담이 된다"며 "어도비 모바일 프레임워크에서는 이를 대신 관리해줘 해상도나 단말기 설정값 등 인프라에 대한 문제를 잊고 디자인 자체에 집중할 수 있다"고 말했다.
어도비는 향후 프레임워크에 디버깅 기능을 보강할 계획이다. 데스크톱 환경에서 단말기 동작을 흉내내는 '에뮬레이팅'으로 빠르게 테스트하고 실제 앱 설치까지 이어질 수 있도록 지원할 계획이다