구글이 아이폰과 아이패드용으로 만든 크롬 브라우저 소스코드를 공개했다. 데스크톱과 안드로이드 모바일 플랫폼 위주로 돌아가는 오픈소스 브라우저 기술 커뮤니티에 iOS 플랫폼까지 품으려는 시도로 보인다.
구글은 31일(현지시각) 크로미엄 공식 블로그를 통해 'iOS용 크롬(Chrome on iOS)'을 오픈소스로 풀었다고 밝혔다.
[☞참조링크: Chromium Blog: Open-sourcing Chrome on iOS!]
구글은 iOS용 크롬 앱의 코드 파일을 자사 오픈소스 코드 저장소의 '크로미엄(Chromium)' 프로젝트 하위 경로에 올렸다. 크로미엄은 구글이 직접 배포하는 크롬 브라우저의 오픈소스 버전이다. 앞으로 iOS용 크롬의 소스코드를 크로미엄 프로젝트의 일부로 취급하겠다는 뜻이다.
그간 iOS용 크롬 앱은 크로미엄 프로젝트 일부가 아니었다. 핵심 구성요소인 렌더링 엔진 때문이었다.
크로미엄은 '블링크(Blink)'라는 렌더링 엔진을 쓴다. 블링크는 4년전 애플의 '웹킷(WebKit)'에서 갈라져나온 별개의 기술이다. 블링크는 PC와 안드로이드용 크로미엄 및 크롬 브라우저에 탑재됐다.
iOS용 크롬은 예외였다. iOS용 브라우저 앱에는 블링크를 담을 수 없었다. 애플 앱스토어 운영 정책상, iOS에 내장된 렌더링 엔진을 써야만 앱스토어 등록심사를 통과할 수 있어서다. 그래서 iOS용 크롬은 블링크가 아니라 웹킷 기반이었다.
블링크가 독립한 이래 4년간 웹킷과의 이질성은 점차 커졌다. 여전히 웹킷을 써야 하는 iOS용 크롬과, 독자 발전하는 블링크를 써야 하는 데스크톱 및 안드로이드 모바일용 크롬의 기반 코드도 다를 수밖에 없었다.
구글은 별개였던 iOS용 크롬과 나머지 플랫폼용 크롬의 오픈소스 프로젝트를 크로미엄이라는 이름아래 합치기로 했다. 개발자들이 이 코드를 활용하면 다른 플랫폼처럼 iOS에도 크로미엄 기반 브라우저 앱이 만들어질 수 있다. 다음은 구글 개발자 로힛 라오(Rohit Rao)의 설명이다.
"그간 iOS용 크롬의 코드와 나머지 크로미엄 프로젝트는 독립적으로 유지됐고, 각 플랫폼 요건을 따르느라 복잡해졌다. 수년간 신중한 리팩토링을 거쳐, 이들 코드 전부를 크로미엄에 다시 합치고 오픈소스 저장소에 옮겼다.
iOS 플랫폼의 제약 때문에 여기서 모든 브라우저는 웹킷 렌더링 엔진 기반으로 개발돼야 한다. 이는 크로미엄이 웹킷과, 크롬의 다른 플랫폼용 렌더링 엔진 블링크, 양쪽을 지원해야 한다는 뜻이었다. 이는 우리가 크로미엄 코드 기반에서 피하려 했던 복잡성을 더했다.
관련기사
- 크롬-파이어폭스, HTTPS 아니면 경고 표시2017.02.01
- 구글-애플, 'HTTPS' 확산 나섰다2017.02.01
- 구글, 크롬서 플래시 몰아냈다2017.02.01
- 네이버 브라우저, 구글·애플 다 품은 사연2017.02.01
크롬의 오픈소스 코드 기여활동 일환으로, 우리는 지난 몇년간 iOS용 크롬의 코드를 크로미엄에 업스트림하는 데 필요한 변화를 거두고자 수많은 시간을 쏟았다. 이제 업스트림 작업이 끝났고, 개발자들이 'iOS용 크로미엄'을 다른 크로미엄 버전 만들듯 컴파일할 수 있다. 개발 속도도 더 빨라져 크로미엄 커뮤니티 전반에서 iOS용 크롬을 위한 전체 테스트를 할 수 있고 체크인된 코드를 언제든지 자동으로 실행할 수 있다.
우리는 오픈소스 커뮤니티와 모든 공헌자들의 노고를 치하하며, 마침내 iOS용 크롬이 함께하게 돼 기쁘게 여긴다."