안녕하세요. 유엔젤 뉴스레터 편집장 손대립니다. 오랜만에 나누는 유엔젤 전문가 기고, 오늘의 주인공은 지청권 팀장입니다.


지난 6월 3일. 한국시간 새벽 2시. 다음날 출근이 걱정되는 여느 평범한 화요일 밤, 그렇지만 잠 못든 개발자분 많이 계셨을 것 같습니다. 국가대표 축구 경기라도 있었냐구요? 


바로 오늘의 주제 'WWDC(World Wide Developers Conference) 2014' 키노트가 발표되는 날이었거든요. WWDC는 애플이 준비하는 연례 개발자 행사입니다.


WWDC 2014, 주요 발표 내용 위주로 정리해봤습니다.  




(출처: macrumors.com)



기고자: 유엔젤 플랫폼개발2팀 지청권 팀장











들어서며

올해 애플 WWDC에는 새로운 하드웨어는 없었지만 소프트웨어에서 여러 변화가 있었습니다. 눈길을 끌었던 주제를 크게 세가지로 나눠봤습니다.

1) 맥 OS의 새로운 버전 OS X Yosemite
2) 아이폰과 아이패드에서 사용되는 여러가지 UI 개선과 새로운 APP들을 포함한 iOS 8
3) 그리고 개발언어 Swift와 여러가지 신규/개선 API를 포함한 개발환경

오늘은 이 중 iOS 8개발환경에 대한 내용중 일부 주요한 사항들을 정리해 보고자 합니다.
 
 


Family Sharing

최대 6명까지 가족으로 등록한 계정은 iTunes, iBooks, App Store에서 구매한 콘텐츠를 공유할 수 있게 되었습니다기존에는 계정 자체를 공유함으로써 여러 단말에서 콘텐츠를 공유할 수 있었으나그에 따른 불편함을 감수해야 했습니다.


가족 내에서 결제자를 별도로 지정하는 방식으로 자녀는 직접 구매할 수 없고 부모에게 구매 요청을 전달하도록 설정할 수 있습니다또한 사진일정 등을 공유하여 온라인 상의 가족 활동을 지원하며가족 단말기의 위치 정보 기능을 제공하여 자녀의 위치 또는 분실 단말기의 위치를 확인할 수 있습니다.
 
 


Health APP과 Health Kit

헬스 앱은 가상지갑 서비스인 애플 패스북과 개념이 비슷하며활동과 건강에 관한 정보를 헬스 앱이 통합적으로 기록하고 관리합니다이 건강정보는 헬스킷으로 제공되는 API를 통해 다른 디지털 헬스 앱 또는 피트니스 앱들이 기록하고 조회할 수 있습니다애플과 오랫동안 협력해왔던 나이키는 헬스 앱을 지원하는 첫 번째 외부 피트니스 앱 서비스 업체로 이름을 올렸습니다.


애플은 의료 기관인 Mayo 클리닉과도 제휴를 맺었습니다이에 따라 헬스 앱에서 측정된 수치가 정상 범위를 넘어갈 경우 병원에서 알림 서비스를 받는 것이 가능해졌습니다애플은 헬스 킷에서 확보한 데이터를 병원 정보 시스템에서 이용할 수 있도록 다른 대형 의료 기관들과도 협력할 것이라고 강조했습니다.
 
 


Home kit

사용자는 Home kit을 이용해 개발된 앱으로 집의 전등도어락웹캠 등을 설정하고 조작할 수 있습니다여러 장치를 그루핑해서 조작하는 것이 가능하며 Siri를 통해 조작할 수도 있을 것입니다다만, H/W 장치들은 애플이 정한 MFi Program에 참여하고 이를 준수하여야 합니다.
 
 


Cloud kit

Cloud kit은 앱과 아이클라우드와의 연동을 제공합니다기본적으로는 무료로 이용할 수 있으며, 1천만 사용자, 1PB의 리소스 저장, 10TB DB 저장, 5TB/day 리소스 전송, 50GB/day DB 전송으로 제한된다고 합니다간단한 검색기능까지 제공함으로써 특별한 기능이 필요하지 않은 서비스들은 서버 준비에 대한 걱정없이 앱을 출시할 수 있게 되었습니다.
 
 


그래픽 엔진 및 개발 환경

애플은 실질적인 그래픽 표준이었던 OpenGL을 대체할 수 있는 Metal 플랫폼을 공개하였습니다. Metal은 애플의 제품들에 현재 채택되어있는 A7칩에 최적화하는 동시에 오버헤드를 줄이고 멀티쓰레딩 효율을 향상시켜 OpenGL 대비 10배의 그래픽 성능을 낼 수 있다고 합니다이미 UNITY, CRYTEK, EA, EPIC GAMES 등이 기술을 제공받아 각 회사들의 게임엔진을 준비하고 있으며이번 WWDC PC나 콘솔게임기에 근접하는 상당한 수준의 시연을 제공하였습니다백문이 불여일견, 아래 WWDC 동영상을 보시면 좋겠습니다



캐쥬얼 게임 제작 편의 제공을 위해서는 Sprite kit의 기능을 강화하고 Scene kit을 새롭게 제공합니다. Sprite kit은 소스를 가볍게 만들고 운동역학충돌감지광원효과 등을 적용하였습니다. Scene kit은 물리엔진파티클을 적용할 수 있으며 3D 물체의 동작 script 작성을 가능하게 합니다.
 
 


Swift

애플은 새로운 개발언어로 Swift를 소개하였습니다문법을 간소화하였고 빠르며 최신 기능을 지원하면서 디버깅과 불안정한 코드를 걷어낼 수 있도록 지원한다고 합니다다만기존의 개발환경을 버린 것이 아니라 cocoa Objective-C의 호환성을 두고 설계되었습니다. Swift에서 Objective-C API를 사용 할수 있고 반대로 Objective-C에서 Swift API를 사용할 수 있습니다.


Swift 언어 및 개발환경은 기존 Objective-C와 비교하여 다음과 같은 차이점들이 있습니다.
  • main()이 사라졌습니다.
  • 세미콜론이 사라졌습니다다만 ;을 사용한다고 에러를 내보내진 않습니다.
  • Objective-C에서의 파일 확장자는 .h(header) .m(implementation)였는데 .swift 하나로 변경되었습니다.
  • 변수로서는 var(variable) let(constant)이 존재합니다.

var myVarDouble = 70
let myConstDouble = 70


  • 변수는 무조건 초기화 해야하며 원할 경우 명시적으로 타입을 지정할 수 있습니다.

let explicitDouble : Double = 70


  • 변수나 상수는 중간에 유형을 변경할 수 없기 때문에 형 변환을 하기 위해서는 명확한 타입을 주어야 합니다.

let label = The height is

let height = 80

let heightLabel = label + String(height)


  • 유니코드를 지원하여 변수명을 한글로도 쓸 수 있습니다.
  • 플레이 그라운드를 제공합니다새로운 알고리즘을 작성하면 테스트 및 검증을 해주며간단한 테스트 코드를 작성하여 바로 결과를 볼 수 있습니다.
  • 함수에서 여러개의 변수를 리턴할 수 있습니다.
 
 


그 외

TestFlight 서비스를 인수한 애플은 자체적으로 TestFlight를 제공하여 베타 테스트용 앱 배포 기능을 제공합니다.

지문 API를 공개하여 앱들에 더 강화된 인증 기능을 적용할 수 있도록 하였습니다다만 보안을 위해 개별 앱은 개별 지문 데이터를 생성하게 되며서로 다른 앱 간의 지문 데이터 공유는 불가능합니다.
아이폰에서 작성하던 문서나 이메일을 MAC PC hand-off하여 작업을 그대로 이어서 할 수 있게 하고 SMS나 전화를 MAC PC에서 가능하게 하는 등 자사 디바이스들간의 연결성을 강화하였습니다.
 
 
 


마치며

애플은 안드로이드에 대비하여 자사의 단말과 OS, 스토어의 장점을 자랑했습니다. 아이팟터치 1아이패드 2아이폰 5억개가 사용 중이며 최신 버전인 iOS7의 비율은 89%인 반면, 안드로이드는 단말 H/W OS가 파편화되어 있으며 최신버전 킷캣은 9%에 불과하고 구글플레이에 등록된 앱 중 멀웨어[각주:1]가 많다고 주장[각주:2]) 

위에 나열한 신규 서비스와 기능들신규 개발언어와 개발 편의 제공으로 기존 사용자와 개발자들의 만족도와 충성도를 높이고 새로운 사용자와 개발자들을 유입시키려는 의도를 보여주고 있습니다또한 위 나열한 예에서 보듯이 독자적인 준비만 하는 것이 아니라 여러 파트너들을 만들고 새로운 시장을 만들려는 노력도 하는 것으로 보입니다.

물론 구글도 이미 유사한 기능들을 제공하기도 하고상황에 따라 기존 기능을 강화하거나 새로이 도입하는 식으로 따라갈 수 있는 것들이 많이 있을 것입니다예로서 구글도 새로운 건강정보 플랫폼을 준비한다는 소식이 있습니다(구글건강정보 플랫폼 `구글핏이달 공개)

하지만기존에도 안드로이드폰과 상당한 수준 차이를 보였던 그래픽이라는 측면에서는진일보한 Metal 플랫폼은 구글이 표준화된 H/W 아키텍처를 강제하도록 정책을 대폭 변경하지 않는 한 따라갈 수 없는 넘사벽이 될 것으로 개인적으로는 예상해 봅니다

우리 유엔젤이 경쟁사들에 비해 가지고 있는 또는 가져야 할 넘사벽은 무엇일까요? :)




  1. 멀웨어: 악성코드 또는 악성소프트웨어와 같은 뜻으로 쓰이며, 바이러스, 웜, 트로이목마, 스파이웨어, 애드웨어 등 사용자에게 악영향을 줄 수 있는 모든 소프트웨어의 총칭. [본문으로]
  2. 애플은 앱스토어 등록과정에서 자체 기준을 통해 코드 검증, 기능 검증 등 거의 전반적인 부분을 점검하는 것으로 보이나, 구글은 자유도가 높으며 등록과정의 검수가 거의 없는 것으로 보입니다. [본문으로]
저작자 표시
신고
Posted by 유엔젤 테크니컬라이터 손대리
comments powered by Disqus

댓글을 달아 주세요

티스토리 툴바