애플이 세계개발자대회(WWDC)에서 아이폰, 아이패드, 맥 애플리케이션(이하 '앱') 생태계와 관련된 소식을 대거 쏟아냈다. 앱 개발자들이 그간 익히고 활용해 온 애플의 기술과 지원 환경을 크게 바꾸고 또 확대해 갈 거란 내용이다.
주요 화두는 새 모바일 및 PC 운영체제(OS), 새 프로그래밍 언어, 새 게임 개발 플랫폼, 개발자용 클라우드, 달라지는 앱 유통 환경, 스마트홈까지 넘보는 iOS 앱의 영토확장으로 요약된다. 키워드 중심으로 개발자를 위한 WWDC 발표 내용의 관전포인트를 정리해 봤다.
■오브젝티브C는 잊어라?…iOS-OS X 앱 개발언어 스위프트로 전환
애플은 오브젝티브C(Objective-C) 대신 '스위프트(Swift)'를 iOS와 OS X용 새 앱 개발 언어로 소개했다.
스위프트는 클로저, 제네릭스, 타입인터페이스, 네임스페이스, 다중리턴타입 기능을 지원한다. 향상된 개발 생산성과 편의성을 보장하면서 코코아, 코코아터치 프레임워크와 LLVM컴파일러, X코드 통합개발환경(IDE)을 그대로 쓸 수 있다는 설명이다.
애플은 라이브 디버깅 기능 '인터랙티브 플레이그라운드'를 지원하며, 이미 개발자들이 스위프트를 써 볼 수 있도록 X코드6 시험판과 아이북스 전자책 형태의 개발서적을 배포 중이다. 당장 오브젝티브C를 쓰지 말라는 얘기는 없었지만, 최신 iOS와 OS X 기기에서의 앱 개발에는 스위프트가 권장될 가능성이 매우 크다.
■iOS8, 아이폰-아이패드용 내부API 접근 대폭 허용
애플이 개발자들에게 새로운 API 4천개를 포함한 iOS8 시험판과 SDK 배포를 시작했다. 제한됐던 내부API를 허용하는 몇몇 프레임워크가 눈길을 끈다. 외부 개발자가 iOS8 내장 사진 제어기능을 쉽게 쓰도록 해주는 '포토킷', 내장 카메라의 화이트밸런스와 노출 보정, 초점 제어 기능을 쓰게 해주는 카메라API, 서버개발 없이 아이클라우드를 통해 서버연동 앱을 만들게 해주는 '클라우드킷'을 제공한다.
또 외부 개발자에게 접근이 허용되지 않았던 알림센터 위젯API와 아이폰 지문인식 '터치ID' API도 지원된다. 이밖에 여러 건강관리 앱의 정보를 모아 보여주는 '헬스' 앱과 이를 위한 상호 통신 기술도 소개됐다. 아이폰4S, 5, 5C, 5S, 5세대 아이팟터치, 아이패드2, 레티나, 에어, 미니, 미니레티나 기기가 iOS8를 쓸 수 있다.
■애플 '홈키트', iOS8 발판 삼아 스마트홈 영토확장
iOS8과 함께 등장한 프레임워크 '홈킷(HomeKit)'은 좀 특별하다. 홈킷은 모바일 기기가 아니라 집안에 놓여 있는 사물과 가전을 다루는 앱을 개발하는 용도다. 개발자는 홈킷으로 아이폰의 인공지능 개인비서 '시리'에게 음성 제어 명령을 내리는 앱을 만들 수 있다.
시리를 시켜서 집 현관문을 잠그거나 조명 밝기 또는 조리기구 온도를 조절하는 식이다. 이를 위해 애플은 '홈킷액세서리프로토콜'이라는 스마트홈 통신기술, 허니웰과 아이홈과 필립스 등 홈킷 지원 제품을 생산할 제조 파트너, 이밖에 다른 홈킷 지원 제품 파트너를 영입하기 위한 인증 프로그램, 3가지를 제시했다. 이런 애플의 계획은 '삼성홈프로토콜(SHP)'이라는 독자 통신기술을 앞세운 삼성전자 '삼성스마트홈' 시나리오와 충돌이 불가피해 보인다.
■자체 3D게임 플랫폼 '메탈' 등판…애플판 다이렉트X?
게임 개발자들은 iOS8와 더불어 공개된 '메탈(Metal)'에 관심이 클 수 있다. 메탈은 애플 iOS8 기반 게임 앱 플랫폼이다. iOS 게임의 3D그래픽 성능과 품질을 개선하기 위해 나왔다. 마이크로소프트(MS)가 윈도 플랫폼 전용으로 만드는 '다이렉트X'와 비슷한 역할이다. 메탈 플랫폼이 제공하는 API는 이전까지 애플이 iOS 기반 게임용 3D그래픽 표현을 위해 지원했던 '오픈GL(OpenGL)'을 대체할 전망이다.
오픈GL은 산업계 표준 3D그래픽 API로, 애플 이외에 오픈소스 진영을 포함한 여러 사업자와 커뮤니티가 PC, 모바일, 웹에서 3D그래픽 표현을 위해 활용했다. 향후 멀티플랫폼 게임 개발자들이 광범위한 오픈GL 생태계와 애플의 독점적인 3D그래픽 기술에 함께 투자하는 부담을 감수할지는 의문이다.
■OS X 10.10 요세미티, 맥 앱-웹개발자에게도 기회
관련기사
- 애플 스위프트·메탈…개발자들 어찌 보나2014.06.03
- 애플 "iOS 앱 개발 백엔드 클라우드 무료"2014.06.03
- 애플, 3D게임 개발 플랫폼 '메탈' 공개2014.06.03
- 애플 새 개발언어 '스위프트' 이용 10개 팁2014.06.03
애플은 '맥개발자프로그램'에서 요세미티 개발자용 시험판을 배포 중이다. 새 언어 스위프트를 통한 앱 개발을 지원한다. 또 맥용 게임에서 현실적인 동작, 물리 역학, 조명 효과를 연출하기 위한 '스프라이트킷', 3D 캐주얼 게임 제작용 '씬킷', '뷰컨트롤러API'를 포함하는 '앱킷'을 제공한다. 뷰컨트롤러API는 개발도구 X코드6 신기능 '요세미티용 스토리보드'에서 지원하는데, 복잡한 정보를 표시하는 앱 화면 이동에 유용하다. 맥 앱스토어에 올린 기존 앱에 알림센터 위젯, 앱내 콘텐츠 공유 및 조작 기능을 더해주는 확장(Extensions)을 추가해 배포 가능하다.
사파리 브라우저에는 고성능 고효율 HTML5 동영상과 3D 그래픽을 지원하는 '웹GL(WebGL)' 기술과 iOS와 OS X에서 일관된 레이아웃을 보여주는 웹킷 엔진이 탑재됐다. 기본 배색은 반투명 회색, 집중이 필요한 개발자를 위해 '다크모드'를 지원한다.