작년에 이어 이 떡밥을 물지 않은다면 블로그에 쓸게 무엇이 있겠는가? 아이폰 사용자로서 애플의 개발자 컨퍼런스인 WWDC를 봐주는 것이 예의이리라.
우선 놀랄만한 점은 이미 유출된 사양 그대로 '아이폰4'가 나왔다는 점이다. Retina Display 960x640 고해상도 그래픽에, 500만 화소 카메라를 달고, 영상통화 가능한, iOS4(iPhone OS4)는 누구나 다 예상했던 점이다.
하지만, 화려한 숫자의 향연과 멋진 데모와 눈요기, 3D게임이 가능할 자이로스코프 탑재 같은 전혀 예상치 못한 하드웨어 스펙을 넣어주는 센스를 발휘함으로서 결국 잡스교인들은 기립박수로 마무리 할 수 밖에 없게 만들었다.
잡스교, 그 실체는?
WWDC는 애플이 매년 하는 가장 중요한 기술 이벤트 중 하나다. 57개국에서 5,200명이 참석했고 8일만에 매진됐다고 한다. 우리 나라에서도 평소의 4배가 넘는 60여명이 참석했다고 하니 바야흐로 우리 나라에서도 80년대 애플 전성 시대가 다시 오는가 싶다.
하지만, WWDC 가신 분들의 실망담도 만만치 않으니... 간지나는 기념 랩탑 가방 하나 못 받아 오게 생겼다. 티셔츠도 없고 그냥 자켓 하나.
게다가 해외 컨퍼런스에 가보시면 가장 확실하게 느끼는 것으로 정말 성의 없이 던져주는 '런치 박스'. 내가 이돈 내고 여기 왔나 싶을 정도로 극악 무도하다. 애플이라고 예외는 아니다.
게다가 스티브 잡스가 이번 WWDC에서 자신들에게 두가지 애플리케이션 플랫폼이 있으니 하나는 완전히 개방된 통제하지 않는 표준 기반 HTML5요. 그 다음은 앱스토어라고 말했으나...
전날 애플이 오픈한 HTML5 데모 사이트는 사파리 밖에 못들어가도록 해 두었다. 이를 두고 며칠동안 트위터와 블로그는 애플의 '양아치짓(?)'에 대해 성토가 이어졌다. 사실 이 데모들은 Video, Audio 태그와 CSS3 속성 일부를 쓴것으로 타 사 웹 브라우저에서도 대부분 구동 되는 기능이다.
좀 더 완벽하게 보여 주고 싶었는 것인지 아니면 사파리 끼워 팔기를 원했던 것인지 어쨌던 90년대 넷스케이프 vs. IE 브라우저 전쟁때나 보던 화면을 보고 사람들은 분개했다. 과거에서 배우고 앞으로 나아가야 할 시점에 말이지...
그러나, 무한 잡스교를 따르는 이유는
괴팍하고 완벽 주의자이면서 폐쇄적인 이 모든 단점에도 뻥뻥 터뜨려 주시는 스티브 잡스를 두려우면서도 존경할 수 밖에 없는 이유가 있다.
아이팟에 이어 곧 아이폰류를 1억대 팔고 있어 모바일에 있어 우리의 자존심(?)인 삼성, LG를 깔끔히 뛰어 넘고 있는것도 그렇지만...
레티나 디스플레이 같은 듣도 보도 못한 고해상도 디스플레이를 선보이는가 하면...
중력 센서 뿐만 아니라 전혀 예상치 못한 자이로스코프 같은 걸 집어 넣는가 하면... (이제 3D 게임 시장의 시작일듯.)
그래도 가격은 팍팍 다운시켜 준다.
WI-FI 기반의 화상 통화가 폰에서 바로 가능하게 함으로서, 스카이프 가볍게 눌러 주시고.
iAD를 통해 모바일 앱 광고 시장을 확실하게 개척하여, 구글 살짝 긴장케 하였다.
결정적으로 iPhone 4를 출시하는 처음 출시하는 다섯개의 나라에 이어...
대한민국이 7월 출시하는 두번째 국가 그룹에 속하였으니... 이는 70만 아이폰 사용자의 승리가 아닐까 싶다. 현지 소식통에 따르면 KT를 통해 7월에 국내 출시한다고 한다. 그동안 묶여 있던 대기 수요 폭발할 듯... 할렐루야!
아이폰 사파리를 이용해서 웹페이지를 열면
전화번호 형태로 생긴 텍스트에 자동으로 전화 걸어주는 링크를 만들어버립니다.
a태그를 사용하지 않아도 웹페이지내에 010-3377-xxxx 같은 텍스트가 있으면 자동으로 링크를 걸어버리기때문입니다.
하여가네 이렇게 되면 편하기는 하지만 원치않게 링크가 걸리기 때문에 전화 연결을 바라지 않을때나 등등.. 뭐.. 그런게 잇기때문에.. 이럴때는.
<meta name = "format-detection" content = "telephone=no">
로 전화거는 기능을 아예 없애고
필요할 전화걸기 기능을 넣을때는
1. WAP(wireless application protocol, 무선 어플리케이션 프로토콜)
모바일 단말기에서 웹사이트를 볼 수 있는 방법을 표준화하기 위한 무선 통신 프로토콜들의 규격으로 WAP포럼에서 제정되었습니다.
WAP방식은 전세계적으로 가장 많이 사용되고 있으며 공개된 표준 규격입니다.
망이나 단말기의 종류에 관계없이 다양한 무선환경에서 동작이 가능합니다.
HTML을 WML로 전환하기 위해 게이트웨이가 반드시 필요하기 때문에 통신 사업자는 초기 설치 비용이 부담이 될 수 있습니다.
콘텐츠 제공 업체는 실제로 서비스될 사이트를 WML로 구현해야 하기 때문에 개발 비용이 드는 단점이 있습니다.
2. WML(Wireless Markup Language, 무선 마크업 언어)
WAP 에서 작동하는 무선 프로토콜 마크업 언어입니다.
작은 화면과 제한된 메모리를 가진 무선 이동 단말기에 적합한 언어입니다.
XML을 기반으로 작성되기 때문에 유동성이 풍부하다는 장점이 있습니다.
3. XML(eXtensible Markup Language, 확장성있는 마크업 언어)
어떤 정보를 표현할 때 사용자가 새롭게 정의하여 사용할 수 있는 확장 가능한 마크업 언어입니다.
HTML이 데이터를 보여주기 위해 고안되었다면, XML은 데이터의 저장과 전송을 위해 고안되었습니다.
HTML에서 동적인 데이터를 보여주고자 한다면 데이터가 변경될 때마다 매번 HTML을 수정해야 하지만,
XML을 사용하면 데이터를 XML파일로 분리하여 저장할 수 있기 때문에 XML파일만 수정하면 되므로,
HTML은 레이아웃과 디자인 표현을 위해서만 사용하면 됩니다.
4. 풀브라우징(full browsing)
모바일 단말기에서도 PC에서 웹사이트를 보는 것 처럼 동일하게 웹서핑을 하고 문서나 동영상도 볼 수 있는 서비스를 뜻합니다.
브라우징 속도 및 동영상 재생, ActiveX 지원 등의 문제를 안고 있으며 스마트폰을 이용해야 제대로 서비스를 즐길 수 있습니다.
풀브라우징을 제공하는 폰은 구글폰, 캔유폰, 햅틱폰 등이 있습니다.
5. 풀브라우저(Full Internet Browser)
풀브라우징을 지원하는 브라우저를 뜻합니다.
원래는 풀 인터넷 브라우저였는데, 사람들이 자꾸만 줄여 불러서 이제는 모두 풀브라우저라고 부른답니다.
6. 스마트폰(SmartPhone)
PDA의 기능과 휴대폰의 휴대전화 기능을 결합한 휴대용 기기를 뜻합니다.
과거 PDA를 개발하던 업체에서 전화기능을 합쳐 PDA폰이라 불렀고, 그 반대로 이동통신 업체에서 PDA 기능을 휴대폰에 탑재하여 스마트폰이라 불렀습니다
지금은 이 둘을 모두 통칭하여 스마트폰이라 부릅니다.
7. 모바일OK
유무선 단말의 종류에 상관없이 웹사이트, 웹 응용 등을 자유롭게 이용할 수 있도록 하는 모바일 웹 표준 기술을 총칭합니다.
현재는 국내 유무선 웹사이트의 경우 ActiveX 등으로 인해 모바일에서 사용이 불가능하여 모바일용으로 웹사이트를 따로 제작했지만,
모바일OK1.0을 활용하여 표준작업을 하게 되면 유선의 웹사이트도 모바일에서도 완벽하게 볼 수 있다고 합니다.
시범 단계를 거쳐 모바일OK1.0 을 출시했지만, 모든 사이트들이 모바일OK표준을 따라 다시 재작하려면 아무래도 오랜 시간이 걸릴 것 같습니다.
8. WiBro (Wireless Broadband,와이브로)
무선 인터넷 접속 규격의 일종으로, 삼성전자와 한국전자통신연구원이 개발한 무선 광대역 인터넷 기술입니다.
WIFI기반의 무선랜 인터넷 접속은 일정한 반경을 벗어나면 서비스를 사용할 수 없지만, Wibro는 시속 60Km 정도의 속도로 빠르게 움직이는 차량 안에서도
PC나 휴대형 정보 단말기를 이용해 초고속 인터넷을 사용할 수 있습니다.
9. WIFI (Wireless Fidelty, 와이파이)
Wi-Fi Alliance 라는 비영리 단체에서 독자적인 호환성 테스트를 거친 제품에 한하여 부여하는 인증마크로 무선 네트웍을 지칭하는 말로도 쓰입니다.
Wi-Fi 인증을 획득한 제품은 상호 접속성 등을 인정 받은 제품이라는 뜻이기 때문에 거의 모든 구매자들이 Wi-Fi 인증을 획득한 제품을 구매하고 있습니다.
국내의 무선랜 서비스 사업자들도 무선랜 제품에 Wi-Fi 인증을 의무화 하고 있기 때문에, 대부분의 무선랜 제품은 Wi-Fi인증을 획득했다고 볼 수 있습니다.
10. Mobile Platform (모바일 플랫폼)
단말기에 탑재되어 단말기의 하드웨어 기능을 사용할 수 있게 해주고, 프로그래밍 환경을 제공하는 역할을 담당하는 소프트웨어입니다.
즉, 통화 기능만 있는 기본 폰(Phone) 단말기나 카메라,MP3를 사용할 수 있는 기능폰 등에 탑재되어 이런 기능을 사용할 수 있게 해주는 소프트웨어란 뜻입니다.
11. WIPI (Wireless Internet Platform for Interoperability, 위피)
WIPI는 무선 인터넷을 사용할 수 있게 해주는 공개 무선 인터넷 플랫폼의 표준입니다.
플랫폼이 여러 개니까 각각의 플랫폼에 맞춰 개발을 해야 하니, 아무래도 여러 가지 문제들이 많았습니다.
그래서 한국 이동통신 사업자와 단말기 제조사 그리고 플랫폼 개발 업체들이 한마음이 되어 “플랫폼을 표준화하자!” 라고 해서 만든 플랫폼입니다.
하지만 J2ME 플랫폼과의 유사성으로 인해 로열티를 지불해야 합니다.
2005년 부터 WIPI플랫폼을 의무적으로 탑재하게 하였으나 2009년 4월 후로는 의무가 해제됩니다.
WIPI탑재 의무화 해제에 따라 한국 휴대전화 시장의 개방은 가속화 되어 경쟁이 치열해 질 것으로 보입니다.
핸드폰에 내장되어 있는 CDMA 칩의 제조사인 퀄컴사(Qualcomm)에서 개발한 모바일 플랫폼으로써
Binary형태의 파일을 실행할 수 있어서 속도가 타 무선 플랫폼과 비교해서 매우 월등합니다.
퀄컴 칩셋을 쓰는 단말기에서만 사용됩니다.
자바기반의 기존 플랫폼들과는 달리 이용자들이 원하는 소프트웨어를 단말기에 직접 내려 받아 쓸 수 있는 점이 특징이며,
통신 사업자마다 플랫폼이 달라 많은 문제를 초래하고 있는 이동 콘텐츠 분야의 기술 표준으로 무선 인터넷 활성화에 크게 기여하고 있습니다.
13. Android (안드로이드)
Google에서 만든 모바일 오픈 플랫폼이며, 구글폰 G1에 탑재되어 있습니다.
java언어를 이용하여 응용프로그램을 개발할 수 있도록 지원합니다.
Symbian의 연간성장률은 14%, Android의 연간성장률은 300% 정도로 예상되며,
Symbian은 스마트폰 시장의 50%이상을 점유하고 있지만, Android는 점유율 제로 상태에서 Symbian과 치열한 경쟁을 펼칠 것으로 예상됩니다.
14. Symbian(심비안)
유럽에서 만든 모바일 플랫폼입니다.
스마트폰 분야에서 가장 널리 사용된 플랫폼이며 전세계 시장의 약 50%이상을 점유하고 있습니다.
15. Windows Mobile (윈도우 모바일)
Microsoft 사에서 만든 모바일 플랫폼입니다.
오랫동안 사용되어 안정성과 성능이 검증된 모바일 플랫폼으로 기본 라이브러리부터 UI까지 풍부한 기능을 제공합니다.
Android 와 iphone을 경계하며 더욱 성능을 강화하려 하고 있습니다.
인터넷 문서를 위한 마크업 언어는 유명한 Tim Berners-Lee에 의해 1991년에 발표된 HTML1.0 을 시작으로 계속 발전되어, 현재 WWW에서는 HTML4.01, XHTML1.0 을 주로 사용하고 있으며 HTML5 와 CSS3 가 표준화 작업 중에 있습니다.
하지만 모바일 기기에서 사용할 수 있는 인터넷 어플리케이션은 비교적 최근에 활발하게 개발되기 시작했으며, 이 어플리케이션에 사용되는 마크업 언어는 모바일의 특성상 열악한 환경에서도 제대로 동작할 수 있도록 스펙이 축소되고 최적화되어 있다는 특징이 있습니다. 모바일 기기의 어플리케이션 개발에 사용하는 국제 표준을 WAP(Wireless Application Protocol) 이라고 하는데요, 크게 WAP1.x (1.0 ~ 1.3), WAP2.0 세대로 나눌 수 있습니다.
WAP1.x 에서는 XML 을 기반으로 개발된 WML 이 주요 마크업 언어로 이용되었지만, WAP 2.0 부터는 XHTML의 Subset(XHTML 풀 스펙에서 모바일 용으로 적당한 일부 스펙을 그룹화함)인 XTHML-MP 가 사용됩니다. 여기에서는 모바일 전용으로 개발된 마크업 언어들의 종류와 특징을 간략하게 소개해 보려고 합니다.
(1) WAP 1.0 & WML
WAP 의 최초 버전인 WAP1.0 의 주요 언어는 WML(wireless Markup Language)입니다. 이 언어는 휴대전화 같은 모바일 기기에 최적화된 언어로 XML기반으로 설계되어 있습니다.
보통의 데스크탑/노트북 컴퓨터 등의 PC와 달리 모바일 기기는 다음과 같은 특성을 가지는데요,
작은 메모리 용량
작은 저장 공간
느린 CPU
좁은 화면크기 (주로 320*240이내의 해상도, 2~3인치 이내의 크기)
입력방법의 제한 (키패드만 존재하거나, 터치스크린을 사용하여 키보드가 없음)
전원의 시간 제한 (밧데리의 용량이 작아 기동유지시간이 짧음)
모바일 웹 1.0 이라고도 할 수 있는 WAP 1.x 체제 아래에 있던 모바일 기기(주로 휴대전화와 초기PDA)들은 지금의 그것에 비해 성능이나 화면 등의 환경이 매우 열악하였기 때문에 WWW 에서 사용되던 HTML을 그대로 사용하는 것이 어려웠습니다. 따라서 이 시기의 모바일 어플리케이션은 주로 텍스트 중심으로 모바일 기기에 특화된 WML(wireless Markup Language)를 주요 마크업 언어로 사용하였습니다.
WML은 XML 기반으로 만들어졌기 때문에 문법 검사에 매우 엄격하다는 특징을 가지고 있습니다. 또한 PC의 웹브라우저처럼 마크업의 문법 오류를 자동으로 수정하여 렌더링할 만한 CPU 파워가 부족했기 때문에, 모바일 기기에서의 마크업은 PC 에서의 HTML 과 달리 문법을 엄격하게 적용하여 제작되어야 합니다.
WML 은 다음과 같은 DTD를 사용합니다.
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//PHONE.COM//DTD WML 1.1//EN" "http://www.phone.com/dtd/wml11.dtd" >
<wml>
<card id="main">
<p mode="wrap">This is a sample WML page.</p>
</card>
</wml>
WML도 HTML과 마찬가지로 하이퍼링크와 폼 요소를 가지고 있으며 HTML과 비슷한 문법을 가지고 있습니다. 하지만, HTML과 구별되는 가장 특징적인 요소로 card 와 deck 이라는 개념이 추가되어 있는데요, card는 각각의 페이지로 보면 되고 deck는 html에서의 <HTML> 자체로 보면 됩니다. 즉, WML 문서를 가리키는 하나의 deck 안에 여러개의 card를 포함하여 하나의 문서 안에 여러 페이지를 통합할 수 있습니다. 모바일에서는 통신 비용이 매우 비싸기 때문에, 그 통신 비용을 최소한으로 줄이기 위해 WML을 이용하여 한번에 여러 페이지를 미리 다운받게 하기 위해 이러한 개념이 추가된 것으로 이해할 수 있겠습니다.
WML 은 엄밀히 말하자면 HTML 처럼 웹 문서의 DTD가 아닌 모바일 기기의 응용프로그램을 개발하기 위한 언어이기 때문에 웹브라우저에 종속되는 DTD가 아닙니다. 웹문서가 아닌 어플리케이션 개발 표준이기 때문에, 모바일 기기의 응용프로그램 개발 측면에서 화면을 구성하는 용도로 많이 사용되어 왔습니다.
현재는 1.3 까지 스펙이 완료되어 있고, WAP 2.0 체제에서 사용할 수 있는 WML 2.0 규격이 개발되고 있습니다.
(2) cHTML (compact HTML)
cHTML도 WML, XHTML-MP와 마찬가지로 모바일용 마크업언어의 표준으로서 인정받고 있는데, cHTML은 일본 DoCoMo 주도로 개발되었고, HTML2.0, HTML3.2, HTML4.0의 스펙을 기반으로 하여 모바일용으로 특화된 subset입니다. 일본에서 많이 사용되었으며, cHTML 문서의 DTD의 선언은 다음과 같습니다.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0 Draft//EN">
최근의 모바일 기기의 흐름은 WQVGA해상도(400*240)을 사용하는 비교적 고성능의 휴대전화, PDA 입니다. 최신의 스마트폰으로는 애플의 iPhone, 삼성의 옴니아, 소니에릭슨의 XPERIA X1 등이 있으며 이 기기들은 VGA(640*480), WVGA(800*480) 등의 고해상도를 사용하기도 하는데요, 이와 같이 고성능을 가지는 PDA/스마트폰에 탑재되는 웹브라우저들은 PC에서 사용하는 것과 같은 Quirks mode(DTD선언하지 않음), HTML 4.01, XHTML 1.x 를 자체적으로 지원하고 있습니다.
이들 모바일 웹브라우저에서 지원하는 문서형식은 PC 에서 사용하는 HTML을 그대로 사용할 수 있으며, 사용하는 DTD선언이나 HTML문법도 같고 HTML 에서 사용되는 요소를 모두 사용하고 렌더링 할 수 있을 정도로 발전하였습니다. 또한 자체서버를 이용하여 코드를 최적화하여 보여주는 기능, 일부 요소들을 제한하여 빠른 렌더링 위주로 화면을 보여주는 기능, 모바일에 맞는 최적화된 사용자경험(UX)과 인터페이스를 제공하는 등, 각 회사별로 특화된 기능의 웹 브라우저들이 여럿 등장하여 모바일 브라우저 시장을 선점하기 위해 경쟁하고 있습니다.
하지만, 여전히 모바일 기기는 일반적으로 사용하는 데스크탑/노트북 PC보다는 훨씬 느리기 때문에, 빠른 속도와 모바일 해상도에 최적화된 모바일 전용 어플리케이션을 제작하기 위해서는 별도의 모바일용 페이지를 모바일 전용 DTD를 사용하여 제작할 필요가 있습니다.
현재 모바일 전용으로 사용될 수 있는 DTD 는 대표적으로 XHTML-MP(Mobile Profile) 이 있는데요, XHTML-MP는 WAP 2.0 체제에서의 표준 마크업 언어이며 CSS의 모바일용 subset인 WCSS와 함께 사용할 수 있습니다.
<?xml version="1.0" encoding="ks_c_5601-1987"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.1//EN"
"http://www.wapforum.org/DTD/xhtml-mobile11.dtd">
<html>
<head>
<title>기본구조</title>
</head>
<body>
<p>텍스트</p>
</body>
</html>
XHTML-MP 는 다음과 같은 과정으로 발전되어 왔습니다.
HTML 4.0 → XHTML 1.0 → XHTML Basic (모바일 환경에 맞게 XHTML의 기본기능으로 재구성함) → XHTML Mobile Profile (XHTML basic+ 추가 태그)
XHTML-MP 는 다음과 같은 특징을 가지고 있습니다.
XHTML 스펙에서 휴대용 단말기에 최적화된 subset
XML 기반의 문법을 사용하므로 XHTML처럼 문법 오류에 민감함
모바일용 DTD 중에서 가장 표현력이 뛰어남
현재 XHTML-MP 규격은 1.0 부터 개발되어 계속 버전업되어 현재는 1.3 후보(Candidate)버전까지 나와 있는데요, 버전별 특징은 다음과 같습니다.
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.1//EN"
"http://www.openmobilealliance.org/tech/DTD/xhtml-mobile11.dtd">
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN"
"http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd">
1.0 : 모바일 전용으로 특화된 XHTML 1.0 basic 규격을 기초로 하여 모바일에 최적화된 DTD로 제작
1.1 : ECMAScript(자바스크립트)의 mobile profile 을 지원함 (일반적으로 이 버전 사용을 추천하고 있음)
1.2 : 폼과 object의 지원 추가
1.3 : XHTML MP 1.1을 기반으로 DOM level 3 event의 지원 추가 (후보버전)
W3C에서 정한 WAP2.0 의 마크업언어는 XHTML-MP 입니다. WAP2.0에서는 WML1.x에서 나오는 card, deck의 개념과 XHTML-MP(mobile profile) 의 <body> 시스템을 혼용하여 사용할 수 있기 때문에 두 시스템의 장점을 취합하여 표현력이 높은 응용프로그램을 개발하는 것이 가능합니다.
기존의 제한이 많았던 모바일 기기의 브라우저에 비해 최근의 모바일 브라우저들은 웹에서 지원하는 스펙을 거의 모두 제공하고 있어서, 현재는 모바일 전용 웹사이트를 제작하기 위한 특별한 기술이 필요하다던가, 특별히 다르게 제작해야 한다던가 하는 제약사항이 크게 줄어들었습니다.
하지만 아직까지 모바일 기기와 노트북/데스크탑 등의 PC 와는 성능/화면 상의 제약이 큰 편이기 때문에, 모바일용 어플리케이션과 모바일 웹브라우저에서 접속할 수 있는 사이트를 제작하고자 한다면, 현재로서는 모바일용 DTD로 가장 많이 사용되는 XHTML-MP 1.1 을 사용하여 전용 사이트를 제작하는 것이 가장 효율적이라고 판단할 수 있겠습니다.