[현장] 애플 WWDC가 푼 개발자용 ‘선물보따리’

가 +
가 -

‘시간이 얼마 안 남았는데….’

마음이 급해졌다. 으레 애플은 월드와이드 개발자 컨퍼런스(WWDC)에서 하드웨어를 하나씩 꺼내놓곤 했는데, 팀 쿡 CEO는 ‘OS X’과 ‘iOS8’을 발표하고 나서 개발도구 이야기를 꺼내들었다. 나는 곧 하드웨어에 대한 욕심을 접었다. WWDC14의 배너에 붙어 있던 ‘write the code, change the world’라는 문구가 떠올랐기 때문이다.

그렇다. 이번 WWDC14의 주인공은 단연코 ‘개발자’였다. 애플은 그 동안 iOS라는 플랫폼을 키울 수 있었던 가장 큰 이유로 개발자를 꼽았다. 현재 앱스토어는 120만개 앱이 등록돼 있고 매주 3억명이 드나드는 큼직한 시장이다. 그 위에 앱을 올리는 개발자만도 900만명이 등록돼 있다. 사실 WWDC도 개발자 컨퍼런스인데 그 동안 다른 시각으로 봐 왔던 게 아닌가 싶은 생각이 새삼 들었다.

DEV_6

애플은 2시간에 걸친 키노트 중 1시간 가량을 개발 환경에 할애했다. 덕분에 개발 환경에 익숙하지 않은 기자들은 개발자들의 환호성을 제대로 이해하지 못하는 상황도 있었지만, 행사의 분위기는 확실히 하드웨어가 나왔던 지난해와 다른 느낌이었다.

애플은 iOS8과 함께 이레적으로 API를 활짝 열었다. 4천여개의 API를 새로 꺼내놓았는데, 특히 확장성에 대한 것들이 눈에 띈다. 그 동안 애플의 운영체제 환경에는 앱이 접근하지 못하는 경우가 많았는데, 이제 사정이 달라졌다. 알림센터, 파일 공유, 키보드, 터치아이디가 iOS8을 시작으로 개방됐다. 알림센터에 들어갈 위젯도 추가할 수 있게 됐다. 알림센터는 iOS5부터 생겼는데 일정과 날씨, 주식 정보 외에는 다른 내용을 올릴 수 없었다. 애플은 키노트에서 이 알림센터에 이베이 위젯을 소개했는데, 위젯에서 곧바로 관심 상품의 가격을 확인하고 경매에 입찰할 수 있었다.

DEV_12

앱끼리 파일을 공유하는 것도 눈에 띈다. 이를테면 ‘사진’ 앱에서 사진을 고르고 ‘공유’ 버튼을 누른 뒤에 ‘비스코캠’을 누르면 사진을 그대로 비스코캠으로 넘겨 편집할 수 있다. 샌드박스 정책이 완전히 풀렸다고 보기는 어렵지만, 운영체제가 앱과 앱 사이를 연결해 주는 API가 더해졌다고 보면 된다. 이는 ‘개러지밴드’가 다른 녹음 앱과 연결해주는 오디오버스의 관계와 비슷하게 볼 수 있다. 이렇게 콘텐츠를 활용하는 것은 사파리에도 더해졌는데, 일본어로 된 페이지에서 공유 버튼을 눌러 ‘빙 번역’을 실행하면 백그라운드에서 웹페이지 내용을 번역해 보던 화면에 그대로 원하는 언어로 적용해주기도 했다.

DEV_11

키보드 API도 열렸다. 아이폰에는 지금까지 키보드를 바꿀 수 없었는데, iOS8부터는 여러 가지 방식의 키보드 앱을 올릴 수 있도록 바뀌었다. 키노트에서는 스와이프 키보드가 소개됐는데, 국내에서는 한글 키보드가 더해질 것으로 보인다.

터치아이디 인증도 일반 앱들에게 공개한다. 물론 지문 정보에는 그 어떤 앱도 접근할 수 없지만, 인증 그 자체에 대해서는 앱에 적용할 수 있다. 레진엔터테인먼트의 권정혁 CTO는 “앱을 잠글 수 있게 해달라는 이용자의 요구가 있는데, 터치아이디를 활용하면 더 편리하게 앱을 잠그고 성인 콘텐츠의 경우 본인 인증도 안전하게 처리할 수 있을 것 같다”라고 설명했다.

앱스토어도 재편된다. 앱스토어는 iOS8과 함께 몇 가지 큰 변화가 생겼다. iOS8에는 ‘가족 공유’라는 기능이 더해졌다. 캘린더, 미리알림 등의 정보를 공유할 수 있는 것에 더해 가족끼리 구입한 앱과 아이튠즈 콘텐츠를 서로 공유할 수 있게 됐다. 이용자로서는 반가운 소식이다. 개발자로서는 앱 판매가 줄어들 수도 있는 정책이다. 하지만 꼭 그런 것만은 아니다. 가족의 신용카드 결제 정보를 공유할 수 있게 됐기 때문이다. 신용카드가 없는 아이들은 앱스토어에서 사고 싶은 앱에 대해 부모에게 구매를 조를 수 있게 됐다. 앱 구매 자체가 허락이 떨어져야 하기 때문에 전체적인 앱 소비가 늘어나는 효과를 기대할 수 있다.

DEV_7

앱스토어에는 트렌드 검색, 종류별 탐색 등 앱이 노출될 수 있는 기회를 더 늘렸고, ‘editor’s choice’를 받았던 앱은 앱 설명에 별도 표기를 한다. 앱 꾸러미를 묶어 번들링 판매를 할 수도 있다.

개발자들이 가장 반겼던 것은 ‘테스트 플라이트’다. 앱 개발 과정에서 일반인들을 대상으로 베타테스트를 할 수 있는 서비스다. 애플은 올 초에 테스트 플라이트를 인수한 바 있는데, 이를 아예 앱스토어에 더해 개발자들은 손쉽게 배포하고, 이용자들은 쉽게 테스트에 참여할 수 있게 됐다. 김윤봉 SK플래닛 콘텐츠커머스팀 매니저는 “앱을 개발하면서 테스트하기에 더 편리하게 됐다”고 반겼다.

‘메탈’이라는 플랫폼도 공개됐다. 그간 모바일게임의 3D 엔진은 대체로 오픈GL ES를 활용해 왔다. 이를 대신하는 게임 플랫폼이 메탈이다. 권정혁 CTO는 “오픈GL은 범용으로 쓰이긴 하지만 너무 표준화된 경향이 있어서 속도가 느려질 수밖에 없다”라며 “메탈은 이를 아주 얇게 최적화해서 속도를 끌어올린 것으로 보인다”라고 설명했다. iOS판 ‘다이렉트X’라고 보면 된다. 이를 이용하면 그래픽 처리를 더 가볍고 빠르게 할 수 있게 된다.

DEV_03

실제 키노트에서 선보인 에픽의 아이패드용 게임 데모는 PC 수준의 그래픽과 물리엔진 성능을 보여주었지만, 프레임은 전혀 떨어지지 않았다. 애플은 오픈GL에 비해 렌더링이 10배 이상 빨라질 수 있고 멀디쓰레드나 그래픽 처리 능력도 크게 개선됐다고 소개했다. 이게 게임 환경에 끼칠 영향이 꽤 크다. 김정 NHN 넥스트 교수의 평가를 들어보자.

“게임 엔진 자체가 양분화될 수 있습니다. 이용자들의 눈은 높아지는데 게임을 메탈처럼 빠른 플랫폼으로 만들면 다른 느린 플랫폼으로는 게임을 만들 수가 없어요. 똑같이 오픈GL을 쓸 때는 큰 영향이 없었지만 이제 메탈로 만든 게임은 안드로이드를 비롯해 다른 환경으로 내기 어려워집니다.”

그래픽을 더 좋게 만들 수 있는 환경이 있고, 그쪽으로 게임을 만들고 나면 속도가 느린 플랫폼으로 포팅하기 쉽지 않기 때문에 iOS와 안드로이드의 게임에 격차가 생기거나 단독 게임이 늘어날 가능성이 생긴 셈이다.

가장 놀라웠던 것은 애플의 새로운 개발 언어 ‘스위프트’다. 애플은 그동안 ‘오브젝티브C’ 기반으로 앱을 만들도록 했다. 이를 대체 또는 보완할 수 있는 언어가 스위프트다. LLVM 위에 코코아와 코코아터치 등을 올렸고, 오브젝티브C와 같은 런타임을 공유한다.

dev_01-1

크렉 페더리기 애플 부사장은 “10줄의 코드를 2줄로 만들 수 있다”고 스위프트의 간편함을 요약했다. X코드의 데모에서는 코드를 입력하는 것과 동시에 오른쪽에 실시간으로 미리보기 화면이 떴다. 스위프트와 함께 X코드는 6으로 업데이트했다.

스위프트는 전형적인 스크립트 언어다. 오브젝트 정렬 속도는 파이썬을 기준으로 3.9배 정도 빠르고, RC4 인크립션을 처리하는 속도는 220배나 빠르다. SK플래닛 김윤봉 매니저는 “전체적으로 문법이 간결해서 짧게 정리되고 코드가 한 눈에 쉽게 들어오는 것 같다”고 스위프트의 소감을 전했다. 김정 NHN넥스트 교수는 “요즘 스크립트 언어의 특징을 그대로 갖고 있다”고 평가했다.

언어를 새로 배우는 것은 부담스러울 수 있다. 일부 개발자들은 또 공부를 새로 해야 하는 것에 대해 부담을 느낀다는 반응을 보이기도 했지만, 대체로 더 쉽게 앱을 개발할 수 있을 것 같다는 기대의 목소리도 컸다.

dev_pic1

▲김윤봉 SK플래닛 매니저(왼쪽)과 권정혁 레진엔터테인먼트 권정혁 CTO(오른쪽)은 스위프트의 간결성에 대해 기대했다.

권정혁 CTO 설명도 비슷했다. “C#과 비슷한 인상을 받았습니다. 오브젝티브C와 런타임은 같고 쓰기는 더 쉬워졌다는 차이가 있어요. 닷넷의 경우 여러 플랫폼에서 쓰기 어렵다는 단점이 있었는데, 스위프트는 일단 애플의 모든 기기에 적용되고 iOS와 맥 앱스토어에 곧바로 올릴 수 있기 때문에 호환성에 대한 문제도 없어 보입니다.”

행사가 끝난 직후 개발자들은 애플이 직접 언어를 내놓았다는 것에 대해 놀라는 분위기였다. 전반적인 앱 실행 속도를 끌어올리는 것과 함께 개발 환경의 변화도 기대했다. 권정혁 CTO는 속도 개선에 대해서도 기대할 만하다고 설명했다. “자바의 경우 그 동안 느리다는 인식이 있었는데 자바 가상머신의 속도가 빨라져서 특정 코드에 대해서는 JVM이 더 빠른 경우도 있었어요. 기기와 플랫폼을 가장 잘 아는 이들이 언어적인 특성으로 최적화하면 가상 머신 위에서도 속도는 더 빠를 수 있습니다.” 머지 않아 아이패드에서 코딩할 수 있는 상황이 될 수 있을 것 같다는 이야기도 나왔다.

dev_pic2

▲김정 NHN넥스트 교수(오른쪽)는 스위프트가 요즘 스크립트 언어의 흐름을 잘 따르고 있다고 설명했다.

팀 쿡 애플 CEO는 키노트를 마치며 “플랫폼과 디바이스, 서비스를 함께 가져가는 것이 우리의 목표”라며 “각각은 병렬적으로 가져가기 어렵지만 애플은 이를 추구하고 있다”라고 설명했다. 기기 혹은 소프트웨어를 많이 팔고 보급하는 것도 중요하지만 그 밑바탕에 개발자들이 있고, 그 개발자들을 위한 환경이 꾸준히 개선되는 모습은 어떻게 보면 새로운 하드웨어를 내놓는 것보다 더 충격적이고 더 큰 변화를 가져올 수 있는 기반이 될 것이다. 앞으로 나올 앱들이 오늘 키노트의 결과를 반영하는 증거다.