안드로이드펍 가기

인텔과 삼성이 타이젠을 만들기 시작한지  시간이 지났지만 관련 정보는 많지 않은 편이다관심은 있었지만 제대로 살펴보지 못했는데 이번 타이젠 컨퍼런스 2013 참여해서 얻은 정보들로 분석 전망을 해보고자 한다. 현재 단계에서는 개발자들의 궁금증이 많을듯 한데 2008 다른 누구보다 빨리 안드로이드 앱개발을 시작하고 새로운 모바일 플랫폼의 성장을 지켜보고 분석하고 전망했던 기억을 되살려 타이젠도 살펴보고자 한다.  


먼저 기술적인 분석이 필요한데 타이젠 아키텍쳐부터 살펴보자. 




타이젠 아키텍쳐:


타이젠은 리눅스 커널 기반의 OS플랫폼이다. 리눅스 커널과 디바이스 드라이버 그리고 그 위에 코어 라이브러리가 올라간다. 이 부분은 Tizen의 전신인 인텔과 노키아의 Meego나 구글의 안드로이드와 크게 다르지 않다. 하지만 그 위의 앱의 개발에 직접 연관된 애플리케이션 프레임워크는 기존 Meego나 안드로이드와는 크게 달라진다. 인텔의 Moblin, 노키아의 Maemo에서부터 채택되어 Meego의 핵심 UI프레임워크로 사용되던 크로스 플랫폼 UI 툴킷으로 익숙한 GTK와 QT는 타이젠에서 사라졌다. 대신 다소 생소한 EFL이라는 UI툴킷이 채택되었고 타이젠의 웹 프레임워크와 네이티브 프레임워크의 근간이 되었다. EFL은 타 툴킷 대비 적은 메모리를 사용하고 가볍고 저전력에 높은 성능을 제공해서 모바일 환경에 더 적합하다고 알려졌다. EFL은 오픈소스 프로젝트로 삼성이 수년전부터 스폰서해왔기에 삼성의 주력인 모바일 디바이스에 최적화 되어있을 것으로 보인다. 인텔이 MID라는 디바이스를 정의하며 만든 모블린에서 미고까지는 넷북을 생각하고 만든 뼈대를 중심으로 다른 디바이스로 확대하는 모습을 보여주었다면, 삼성이 참여하며 타이젠은 모바일을 위해 만들어진 뼈대를 중심으로 넷북, 자동차등의 다른 디바이스로 확대하는 모습을 보여주고 있다. 시대의 흐름에 맞게 모바일을 중심으로 환골탈태했다는 표현이 딱 맞는듯하다. 



HTML5:


뼈대도 중요하지만 앱개발자가 직접 부딪히는 것은 그 위의 애플리케이션 프레임워크다. 타이젠은 HTML5의 웹 프레임워크를 핵심 UI 프레임워크로 채택하며 웹앱 기반의 OS를 표방하였다. 이것은 거스를수 없는 시대의 대세를 따라갔다고도 할 수 있다. 비록 GTK와 QT가 개발자들에게 잘 알려진 오래된 크로스 플랫폼 UI툴킷이긴 하지만 HTML5와는 무게감이 완전히 틀리다. 누군가 iOS와 안드로이드를 잇는 제3의 플랫폼이 뭐가 될까요? 라고 묻는다면 뭐라고 답을 할까? 윈도8, 타이젠, 파이어폭스…? 나는 망설임 없이 '웹'이 될것이라고 대답할 수 있을것 같다. 많은 개발자들이 모바일에서의 HTML5앱의 가능성을 보고 뛰어들었지만 iOS와 안드로이드는 모바일 웹앱에 대해 소극적인 모습을 보여주었다. MS도 윈도8에서 HTML5 개발자들의 관심을 끌어보려했지만 그것은 MS만의 JavaScript 프레임워크였을뿐 웹표준에 대한 진정성은 결여되어있었기에 외면당한게 아닌가 싶다. 이런 상황에 반발이라도 하듯 올해는 Tizen, Firefox OS, Ubuntu등이 웹OS를 표방하며 등장하였고 LG도 과거 팜의 WebOS를 인수하였다.


HTML5 어떻게 보면 오래전부터 있던 기술인데 왜 지금 더 주목받을까? 과거 iOS와 안드로이드가 빠르게 발전하던 시절에 나는 표준을 기반으로하는 플랫폼은 급속도로 변화하는 시장에 대응할 수 없다고 이야기하며 웹앱에 관심을 가지지 않았다. 지금은 iOS와 안드로이드의 단말 OS플랫폼의 발전 속도는 수그러들고 있고 HTML5라는 표준 기술이 모바일 환경에서 일어난 여러 변화들을 수용하며 기존의 강자들과의 격차를 줄여갈 수 있게 되었다. 또한 구글의 안드로이드가 시장에 완전히 자리잡았는데 안드로이드 초기에 보여주었던 무한한 가능성에 가려졌던 구멍과 한계들도 드러나고 있어 시장에 새로운 플랫폼이 들어갈 틈을 보이고 있다.. 





이런 상황에서 아직 디바이스가 출시되지도 않은 타이젠이 웹표준 호환성 점수 1등을 기록하며 제대로 웹을 지원하겠다는 의지를 보여주었으니 개발자들은 주목하게 된다. 


네이티브 프레임워크:


분명 웹이 제3의 플랫폼이고 타이젠을 주목하는 이유인데 왜 또 타이젠만의 앱개발을 위한 새로운 네이티브 프레임워크를 탑재해서 나왔을까? 이유는 간단하다. 아직 HTML5만으로 모든 종류의 앱을 만들 수 없기 때문이다. 웹앱의 성능 문제는 여전히  가장 큰 이슈이고, 모바일 웹앱 개발에 대해 여러 시도를 하고 있을뿐 대세가 되는 방법론이 자리잡은 것도 아니다. 이에 런처등 아직 웹앱으로 개발하기는 힘든 성능이 중요시되는 앱들의 경우 네이티브로 개발될 것이다. 특히 게임의 경우 성능이 중요하기도 하고 각 OS의 네이티브 프레임워크 위에서 개발되기 보다는 크로스 플랫폼 게임 엔진위에 개발되는 경우가 많고 이런 게임 엔진들은 주로 C/C++로 만들어진다. 기존 iOS와 안드로이드에서 사용되는 게임 엔진들의 지원을 확보하기 위해서는 C/C++기반의 네이티브 개발 방법 제공이 필수인 것이다. 또한 타이젠이 모바일폰뿐만 아니라 IVI등 다양한 영역을 지원하고 하나로 모으려할텐데 기존에 C/C++로 만들어져있는 레거시 모듈들을 쉽게 포팅해서 사용할수 있는 방법을 제공하는 것도 중요하다.


타이젠의 앱들은 처음에는 유니티, 하복, 센차, QT 등을 사용한 크로스 플랫폼 프레임워크 앱들을 위주로 웹앱, 네이티브 앱들이 혼재하겠지만, 시간이 지나면서 차츰 웹앱 개발 방법론이 자리잡고, 기술의 발달로 성능 문제가 줄어들면서 점점 웹앱의 비중은 커지고 네이티브 앱의 비중은 줄어들것으로 예상된다.


지속성:


기술적인 분석은 파고 들어가면 끝도 없으니 슬슬 이 정도로 정리하고 타이젠의 생태계 관점에서 살펴보자. 삼성의 바다OS가 등장하고 사라지는데 2~3년이었다는 것을 들면서 타이젠도 금방 사라질 것으로 생각하는 경우가 많은데 난 그렇게 생각하지 않는다. 바다와 타이젠은 완전히 다른 방식으로 운영된다. 안드로이드의 견제를 위해 삼성이 꾸준히 투자를 해야하기도 하지만 만약 삼성이 지원을 하지 않는다고 하더라도 쉽게 사라지지는 않을 것으로 보인다. 아래 세가지 정도 그 이유를 들어볼수 있을것 같다.


- 바다가 삼성이 자체적으로 개발하고 완전히 폐쇄적이고 독자적으로 운영되었다면 타이젠은 인텔과 삼성이 주도하며 리눅스 파운데이션의 관리 아래 오픈소스로 매우 개방적인 형태로 운영된다. 


- 타이젠은 인텔이 ATOM프로세서 발표와 함께 2008년 모블린에서 시작해서 지금까지 엄청난 투자를 하며 에코시스템을 만들어온 것에 새로운 이름을 붙인 것이지 지금 막 출현한 새로운 OS가 아니다. PC에서 모바일로 급격히 컴퓨팅의 중심이 변화하고 있는 상황에서 인텔은 타이젠에 대한 투자를 줄일 수 없다.


- HTML5는 표준 기술로 거대한 웹 생태계를 앞으로 지탱해 나갈 것이다. 이미 웹을 변화시키고 있으며 앞으로 더욱 크게 확대되어 자리잡을 것이다. 설마 HTML5가 수년안에 없어질 것이라 예상하는 사람이 있을까?


(여기서 말한 지속성은 타이젠 자체의 지속성을 말하기 보다 그 기반 기술들의 지속성을 이야기합니다)


경쟁 : 


타이젠과 다른 웹기반 모바일 OS와의 관계는 어떨까? 파이어폭스OS와는 좋은 선의의 경쟁 관계가 될 수 있을것으로 보인다. 안드로이드 앱의 UI가 발전하는데 있어 트위터, 페이스북등의 주요 앱들이 매우 중요한 역할을 한 기억이 있다. 구글 혼자서 안드로이드를 만들어나간게 아니라 그 안에 있는 모든 참여자들이 같이 발전시켜 나간 것이다. 다양한 웹OS들은 완전히 분리된 독자적인 생태계를 위해 싸우고 있다기 보다는 더 넓은 관점에서 하나의 웹앱 생태계안에 있는 것이다. 서로 다른 웹OS들의 경쟁을 통한 다양한 시도는 모바일 웹의 생태계를 더욱 풍성하게 해줄 것이고 전체 모바일에서 웹앱이 빠르게 자리잡는데 큰 도움이 될 것이다. 타이젠과 파이어폭스라는 새로운 웹OS의 출현과 자극이 언젠가 지지부진했던 iOS와 안드로이드에서의 웹앱지원도 더욱 가속화시킬 수 있을 것으로 기대한다. 


전망 : 


이번 컨퍼런스에서 웹을 표방하는 OS중 에서는 타이젠의 성공 가능성이 가장 크다고 결론내렸다. 먼저 그 동안 가장 큰 의문을 가지고 있던 플랫폼의 개방성에 대한 의문을 상당 부분 해소해주었다. 타이젠은 이번 2.1 발표이후 매우 개방적인 형태로 운영될 것으로 보인다(물론 이것에 장단점은 있을 수 있다). 웹 표준 호환성 점수로 확인할수 있는 매우 빠르고 적극적인 웹 표준 준수의 의지는 웹 중심의 OS로 높은 점수를 주게 만들었다. 현 단계에서 유니티, 하복, 게임샐러드, 센차등의 지원을 확보하여 앱생태계를 구성하는 모습도 충분한 자금력이 있는 인텔과 삼성이 있기에 가능한 것으로 보인다. 생태계 관점에서 보면 시작은 충분히 잘하고 있다는 느낌이다. 근데 한편으로 애플리케이션 스토어와 같은 서비스 운영이나, 다양한 디바이스 프로파일로 확대되는데 있어 파편화의 관리, 웹앱과 네이티브앱의 UX 통일성등의 문제를 잘 해결할수 있을까에 대해서는 여전히 의문이다. 이런 것들은 앞으로 타이젠이 해결해야할 큰 숙제라고 해야겠다.


<데스크탑 타이젠, 3.0 적용 예정>


자 그럼 타이젠이 자리잡는데 얼마나 걸릴까? 안드로이드의 경우는 처음 출시 당시 기술적으로 형편없이 부족했음에도 불구하고 첫단말을 출시한 2008년말이후 2년만에 스마트폰 시장에서 확고히 자리잡았고 현재는 시장을 완전히 점령하고 있다. 하지만 이것은 예외적인 경우로 당시 iOS와의 대결 구도를 형성하며 사실상 다른 대안이 없는 상황에서 통신 업계에서 이례적으로 전폭적인 지지로 가능했던 것이다. 타이젠은 안드로이드와 윈도폰이라는 대안이 있는 상황에서 자극적인 대결 구도를 형성하거나 통신 업계의 전폭적인 지지를 받기는 어려울 것으로 보인다. 이에 타이젠은 스마트폰만이 아니라 다양한 디바이스에서 웹 플랫폼의 가능성을 시도하면서 차츰 자리 잡을 것으로 보인다. 그렇다면 자리잡는데 지금으로부터 빨라도 3~5년 정도는 봐야할것 같다. 

  

새로운 플랫폼에 언제 뛰어드는게 가장 좋을까? 사업을 하는 입장에서는 플랫폼이 급격히 성장하기 1년전에 들어가는것이 가장 효율적이라고 생각한다. 그럼 타이젠이 자리잡는데 3~5년이면 지금 타이젠의 웹앱 개발을 하기에 너무 이른 것일까? 다행히 타이젠의 웹앱을 개발하는데 필요한 HTML5는 당장 타이젠뿐만 아니라 PC웹이나 모바일의 하이브리드앱에서도 써먹을수 있는 기술이다. 과거에 내가 안드로이드 앱 개발을 시작할때는 3년 정도는 소비자 시장에서 돈을 못벌 것을 각오해야했다. 그에 비해 HTML5는 당장 PC웹과 연관해서도 써먹을수 있는 곳도 많기 때문에 투자에 대한 리스크도 적다고 판단된다. 모바일만 보면 당장 투자에 대한 회수를 바라기는 어려울수도 있지만 넓게 HTML5기술이 적용될수 있는 시장을 보고 장기적으로 가게되면 일찍 투자한 것에 대한 보상은 충분히 받을 수 있을 것이다. 


사업적인 관점이 아니라 개인 개발자라면 혹은 취미 개발을 생각하고 있다면 위에서 쓴글 읽으며 복잡하게 논리적으로 따져볼것 없이 그냥 폰이 나왔을때 최대한 빨리 공수를 해서 만져 보기 바란다. '이거 재밌는데 한번 해볼까?'라는 생각이 들면 시작하라. 지금 내가 딱 그런 상태다. 마지막으로 삼성이 꾸준히 5년 이상 투자해 주기를 바란다.


PS. 실로 오랜만의 본격적인 블로깅이네요. 타이젠을 검토하는 개발자들에게 이 글이 도움이 되었으면 합니다. 가끔 3년전 블로그글을 보고 많이 배웠다고 연락이 오기도 하는데요. 이 글은 2013년 5월 현재 상황에서 제가 이해하고 느끼는 한도내에서 작성되었습니다. 업계가 하루가 다르게 빠르게 변화하고 있기 때문에 꾸준히 변하는 환경을 살피셔야 합니다. 


PS. 타이젠도 재밌는 토픽들이 매우 많은데 이거 요즘은 먹고 살기 바빠서 블로깅할 여유가 없네요. 요즘은 당장 발등에 떨어진 불을 끄느라 정신이 없습니다. 타이젠에 대해 궁금해하시는 분들은 있는데 정보가 별로 없어 항상 갈증이 있었던 만큼 간략하게라도 공유해야겠다고 생각해서 정리해보았습니다.


PS. 요즘 보면 네이티브앱 개발할거냐 웹앱 개발할거냐 이런것은 너무 사소한 고민인거 같아요. 더 넓게 보고 인터넷 업계와 IT업계가 어떻게 변하는지 보면 너무 할일도 많고 재밌는것도 많은것 같아요. 머가 하고 싶은지 먼저 생각해보면 멀해야하는지도 따라서 답이 나올것 같습니다. 


신고
안드로이드펍 가기
Add to Google Reader

댓글을 달아 주세요