본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

2017년 6월 27일 (화)

ⓒ CIO Korea, Paul Krill | InfoWorld



일반적으로 네이티브 모바일 앱은 사용자 경험 측면에서 웹 앱 이상의 최신 기술을 사용해 왔다. 그러나 이런 이러한 흐름에 변화가 나타나고 있다. 프로그래시브 웹(progressive web) 앱이 등장했기 때문이다. 현재 구글과 모질라가 주도하는 기술로 주요 웹 속성과 개발 툴을 캐시하는 기술이다.

구글 크롬 팀의 애디 오스마니는 "트위터와 리프트 등 많은 거대 기업이 다시 웹으로 돌아오기 시작했다. 앱 오류를 최소화할 수 있기 때문이다"고 말했다.

트위터의 프로그래시브 웹 앱이 대표적이다. 트위터 라이트(Twitter Lit)라고 불리는 이 앱은 메모리를 1MB도 점유하지 않는다. iOS용 앱이 100MB 이상, 안드로이드 앱이 23MB를 점유하는 것과 비교하면 크게 사용량을 줄였다. 이와 같은 클라이언트 측 자바 스트립트 앱은 데이터를 더 적게 사용하고 푸시 알림을 지원하며 오프라인 상태에서도 사용할 수 있는 장점이 있다.

이런 기능을 지원하는 핵심은 서비스 워커(service workers)이다. 자바스크립트 기반의 클라이언트 측 프록시로, 브라우저 내에서 백그라운드 스트립트로 실행되며 네트워크 상태와 관계없이 지속적으로 앱을 호출할 수 있도록 한다. 또한 이런 앱은 네트워크 의존성을 줄이기 위해 핵심 리소스를 미리 캐시한다. 단 이 기술은 아직 개발 중인 단계다. 그래서 애플의 사파리 브라우저는 아직 서비스 워커를 지원하지 않는다.

하지만 웹 개발자가 프로그래시브 웹 앱을 만들 수 있는 툴은 오픈소스로 공개돼 있다. 오픈소스인 라이트하우스(Lighthouse) 툴을 이용하면 성능을 테스트할 수 있다. 리액트 자바스크립트 UI 라이브리리의 가벼운 대안인 프리액트(Preact)도 있다(리액트는 프로그래시브 웹 앱용으로도 사용할 수 있다). 실제 사례를 확인하고자 한다면 해커 뉴스 프로그래시브 웹 앱을 참고하면 된다.



※ 본 내용은 한국IDG(주)(http://www.itworld.co.kr)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒITWORLD. 무단전재 및 재배포 금지


[원문출처 : http://www.ciokorea.com/news/34651]

맨 위로
맨 위로