컴퓨터 정보학과 이미지

강의채널

  • HOME
  •  > 강의채널
  •  > 강의채널

강의채널

[스마트폰프로그래밍]구글, 안드로이드→아이폰 앱 변환도구 배포조회수 1192
방상완 (durinet)2012.09.17 18:54

[출처] http://www.bloter.net/wp-content/bloter_html/2012/09/127542.html

 

사람의 머리가 두 개가 아닌 이상 두 가지 일을 한꺼번에 하기 어렵다. 구글 안드로이드와 애플 iOS가 응용프로그램(앱) 시장에서 쌍두마차로 떠오른 이후엔 더욱 그렇다. 앱 개발자는 안드로이드, 혹은 iOS 중 어느 하나를 선택해 개발에 매진해야 한다.

구글이 앱 개발자들의 이 같은 고충을 얼마간 덜어줄 수 있는 개발 도구를 공개했다. 안드로이드용 앱을 iOS용 앱으로 바꿔줄 수 있는 개발 도구다. 안드로이드 앱 개발자 혼자 전세계 모바일기기 운영체제(OS) 시장 80%를 점유하고 있는 두 가지 플랫폼을 모두 지원할 수 있다는 얘기다. 이름도 알아보기 쉽다. 구글이 공개한 개발 도구 이름은 ’J2ObjC‘다. 안드로이드 자바 코드로 개발된 앱을 iOS를 위한 오브젝트-C 앱으로 바꿔준다는 뜻이다.

구글 오픈소스 블로그를 통해 J2ObjC를 소개한 톰 볼 구글 엔지니어는 “J2ObjC는 단순한 자바 에뮬레이터가 아니다”라며 “자바 클래스를 iOS 기반 프래임워크에서 바로 이용할 수 있는 오브젝트-C 클래스로 바꿔준다”고 설명했다.

이용하는 방법도 간편하다. 파일을 따로 생성할 필요도 없고, 자바 소스코드를 편집하지 않아도 된다. J2ObjC는 사용자조작환경(UI) 부분을 제외한 앱의 데이터 접근 코드나 앱 논리구조 등을 오브젝트-C로 자동으로 바꿔준다. J2ObjC를 활용하면, 안드로이드 앱 개발을 위한 자바 소스코드가 iOS 앱 개발 과정의 일부가 되는 셈이다. J2ObjC가 지원하지 않는 iOS 앱의 UI 코드는 기존 iOS용 앱 개발 도구인 오브젝트-C나 오브젝트-C++를 이용하면 된다.

J2ObjC가 지원하는 기능도 폭넓다. J2ObjC는 자바6 개발 언어를 포함해 자바의 핵심 기능인 예외처리 코드나 제네릭 타입, 리플렉션, 스레드, 익명 내부 클래스 등을 지원한다. 여기에 자바 형식 메모리 관리 기능까지 오브젝트-C로 구현해준다고 하니 개발자가 여러모로 쓸 수 있을 것으로 기대된다.

J2ObjC를 이용해 자바 소스코드를 iOS용 오브젝트-C로 변환하고자 하는 개발자는 애플 OS X 10.7(라이온) 이상이 설치된 맥 컴퓨터와 맥용 개발 도구 모음 X코드(Xcode) 버전 4 이상, 자바 개발도구(JDK) 버전 1.6, 자바 소스코드 관리 프로그램 ‘아파치 메이븐’이 설치돼 있어야 한다.

톰 볼 엔지니어는 “구글의 여러 프로젝트도 J2ObjC를 통해 진행되고 있지만, 아직 시작하는 단계”라며 “많은 자바 개발자가 자바 개발 도구를 이용하는 방식이 조금씩 다른데, J2ObjC는 아직 모든 상황에 대응하지는 못한다”라고 밝혔다. 현재 J2ObjC는 시험판 수준이다. 처음으로 공개된 버전 숫자는 0.5다.

톰 볼 엔지니어는 이어서 “현재 알파, 혹은 베타 버전의 품질을 구현할 수 있다”라고 덧붙이기도 했다.

J2ObjC가 아직 시험판 수준의 앱 변환 기능을 지원한다고는 해도 안드로이드 앱 개발자가 환영할 것으로 보인다. J2ObjC는 현재 구글에서 오픈소스 프로젝트로 진행 중이다. 앞으로 많은 개발자가 다양한 자바 개발 환경에 맞춰 J2ObjC를 발전시킬 것으로 기대된다.

구글이 J2ObjC와 같은 개발 도구를 지원하는 데 특별한 이유가 있을까. 표면적으로는 플랫폼의 벽을 허물겠다는 의도로 풀이된다. 구글이 주도적으로 진행하고 있는 안드로이드 플랫폼 앱을 경쟁업체인 애플 iOS까지 지원할 수 있도록 해주겠다는 의미다.

김정태 플라스크 모바일 대표는 “큰 앱 개발업체는 아이폰과 안드로이드 앱을 서로 교환할 수 있는 내부 엔진을 같고 있는 경우도 있다”라며 “구글이 안드로이드 앱을 iOS 앱으로 변환해주는 도구를 지원하면 개인 개발자에게 큰 도움이 될 것”이라고 설명했다.

자바 개발자뿐만 아니라 구글이 얻는 이익도 생각해 볼 수 있다. J2ObjC를 지원하면, 안드로이드 앱 개발자가 iOS로 이탈하는 것을 막을 수 있을 것으로 보인다. 자바 개발자는 물론 구글도 환영할만한 도구다.

하지만 J2ObjC가 바꿔주는 앱 품질에 관해서는 심사숙고해야 한다는 의견도 나왔다.

김정태 대표는 “앱 개발 비용을 줄일 수 있는 좋은 방법이겠지만, 앱 품질을 떨어뜨린다면 J2ObjC를 이용하는 것은 뒷일로 미뤄야 한다”라고 잘라 말했다. 앱 개발을 비즈니스로 삼고 있는 업체로서는 앱 품질을 떨어트릴 수 있는 개발 방법론에 쉽게 손을 뻗칠 수는 없는 노릇이기 때문이다.

J2ObjC를 이용해 보고 싶은 자바 개발자는 구글 J2ObjC 프로젝트 홈페이지에서 무료로 내려받으면 된다.

 

61756 광주광역시 남구 송암로 73 TEL 062)360-5965 

Copyright 2011(c) by SONGWON UNIVERSITY. All right reserved.