SlideShare a Scribd company logo
1 of 25
Download to read offline
Progressive
유성민
Web
Apps
http://makestory.net
Web
인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는 전 세계적인 정보 공간을 말한다.
Web
멀티플랫폼 즉시반영
손쉬운 공유(URL)손쉬운 접근
검색엔진
다양한API
유동적 레이아웃
자유로움
온라인 필수
네트워크 환경 영향/성능보안
[출처] http://adaptivepath.org/ideas/ajax-new-approach-web-applications/
2005년 James Garrett 블로그 글, Ajax 등장/촉발
2007.01.09 아이폰 등장
App플랫폼 제한
즉각 반영 어려움
속도/성능
오프라인 대응
하드웨어 접근
푸시(참여유도)
검색엔진
보안
홈스크린(설치)
[출처] https://alistapart.com/article/responsive-web-design
2010년 Ethan Marcotte 블로그 글, 저서를 통해 ‘반응형 웹 디자인’ 용어사용
[참고] http://hacks.mozilla.or.kr/2012/07/relationship-between-whatwg-html-living-standard-and-w3c-html5-spec/
2014년 10월 HTML5 표준안 확정
WHATWG
W3CAPI
[출처] https://infrequently.org/2015/06/progressive-apps-escaping-tabs-without-losing-our-soul/
2015년 “Progressive Web Apps: Escaping Tabs Without Losing Our Soul“ 이라는 블로깅으로 촉발
2015년,
구글 크롬의 엔지니어 Alex Russell 이 고안한 개념(모습)
앱 수준으로 점차 발전해나가는 웹을 지향
궁극적으로는 앱 수준의 사용자 경험을 웹에서 제공하는 것이 목적
‘프로그레시브 웹 앱스(Progressive Web Apps. PWA)’
PWA의 등장
Web App
사용자 경험
특성(모습)
PWA
• Responsive to fit any form factor

모바일, 데스크탑, 테블릿 등 반응형 제공

• Connectivity independent Progressively-enhanced with Service Workers to let them work offline

오프라인, 느린 네트워크에서도 작동

• App-like-interactions Adopt a Shell + Content application model to create appy navigations & interactions

앱 처럼 반응할 수 있을 것(모델)

• Fresh Transparently always up-to-date thanks to the Service Worker update process

최신 상태(컨텐츠 등) 유지할 수 있을 것

• Safe Served via TLS (a Service Worker requirement) to prevent snooping

안전을 보장

• Discoverable Are identifiable as “applications” thanks to W3C Manifests and Service Worker registration scope
allowing search engines to find them

검색엔진을 통해 검색 가능

• Re-engageable Can access the re-engagement UIs of the OS; e.g. Push Notifications

설치 가능하고, 비활성화 상태에서도 푸시알림 통해 재참여 가능할 것

• Linkable meaning they’re zero-friction, zero-install, and easy to share. 

URL을 통해 공유되고, 복잡한 설치가 불필요할 것
[출처] https://infrequently.org/2015/06/progressive-apps-escaping-tabs-without-losing-our-soul/
[참고] https://codelabs.developers.google.com/codelabs/your-first-pwapp/
기술(API)
PWA
• Responsive: CSS3, flex 등 현재 사용되는 대부분의 많은 responsive 기술들

• Connectivity: Service Worker, HTML5 offline , pouchDB, IndexedDB

• App-like-interactions: Web App Manifest, web cache, App Shell Model

• Fresh: Service Worker

• Safe: https

• Discoverable: Web App Manifest, Service Worker

• Push Notification: Push API on Web (Notifications API)

• Installable: Manifest Web App install banner

• Linkable: URL
[출처] https://m.post.naver.com/viewer/postView.nhn?volumeNo=14929344&memberNo=36733075
기술(API)
PWA
웹 단점보완
Web App Manifest
PWA
[참고] https://developers.google.com/web/fundamentals/app-install-banners/?hl=ko
<link rel="manifest" href="/test/manifest.webmanifest">
Service Workers
PWA
[App Shell 아키텍처] https://developers.google.com/web/fundamentals/architecture/app-shell?hl=ko
application (web page) service worker
cache
network
Push API
PWA
Notification API
PWA
[출처] https://www.goodbarber.com/blog/web-push-notifications-demystified-a866/
https://makeapi.net/test/pwa.html
Demo
PWA
[사례 별첨참고]
[참고] 소스코드에 주석으로 자세히 설명
브라우저 지원
PWA
[출처] https://blogs.windows.com/msedgedev/2018/02/06/welcoming-progressive-web-apps-edge-windows-10/
브라우저 지원
PWA
[출처] https://www.monterail.com/blog/pwa-for-apple-ios
브라우저 지원
PWA
[출처] https://vaadin.com/pwa/learn/browser-support
[출처] https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa?hl=ko
HTML5 API
시사점
시사점
감사합니다.
http://makestory.net

More Related Content

Similar to PWA (Progressive Web Apps)

서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)수보 김
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"Changhwan Yi
 
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기Youngjae Kim
 
Open standard open cloud engine (3)
Open standard open cloud engine (3)Open standard open cloud engine (3)
Open standard open cloud engine (3)uEngine Solutions
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망Wonsuk Lee
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망Wonsuk Lee
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos uEngine Solutions
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Channy Yun
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해Terry Cho
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브Open Source Consulting
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable FunctionsJongin Lee
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1Ji-Woong Choi
 
하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)Changhwan Yi
 
DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기SeungYong Baek
 
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안욱래 김
 
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용고포릿 default
 
Web Framework (웹 프레임워크)
Web Framework (웹 프레임워크)Web Framework (웹 프레임워크)
Web Framework (웹 프레임워크)Junsu Kim
 
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트 Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트 VMware Tanzu Korea
 

Similar to PWA (Progressive Web Apps) (20)

서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
Webtech
WebtechWebtech
Webtech
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"
 
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
 
Open standard open cloud engine (3)
Open standard open cloud engine (3)Open standard open cloud engine (3)
Open standard open cloud engine (3)
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
 
현실적 PWA
현실적 PWA현실적 PWA
현실적 PWA
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
 
하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)하이브리드 앱(Hybrid App)
하이브리드 앱(Hybrid App)
 
DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기
 
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
 
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
 
Web Framework (웹 프레임워크)
Web Framework (웹 프레임워크)Web Framework (웹 프레임워크)
Web Framework (웹 프레임워크)
 
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트 Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
 

PWA (Progressive Web Apps)