DevTools in 2016: Accelerate your workflow 요약

2016.06.06 01:13

DevTools에 새롭게 추가된 기능에 대한 세션입니다.


- 새로운 기능은 chrome canary 버전에서 chrome://flags 에서 Enable Developer Tools experiments를 활성화해야 사용할 수 있음

- Authoring

    - Device mode

        - Mobile first를 먼저 하길 권장. 이에 맞춰 개선했음

        - responsive design을 쉽게 확인하도록 다양한 사이즈를 쉽게 선택해서 볼 수 있음

        - 디바이스 회전 아이콘을 클릭하면 키보드 노출 화면도 확인 가능

        - settings - show the device frame 을 선택하면 기기의 프레임을 보여줌. 

        - 스크린샷 촬영 가능

        - 기기를 추가할 수 있고

        - device pixel ratio 지정 가능

        - network throttling 설정 가능. 네트워크 패널에 있는 것과 동일

        - 줌 레벨을 낮추면 4K 모니터에서도 어떻게 보이는지 확인 가능

        - 랩탑의 디바이스 타입 설정 가능 (터치 유무)

        - show media queries를 선택하면 media query에 지정된 너비를 선택해서 볼 수 있음

    - color

        - css variable 사용 가능

        - 클래스를 설정해서 클래스 선택에 따라 스타일이 달라지는 모습을 확인할 수 있음

    - animation

        - 새로운 bezier curve editor

        - animation inspector

    - devtools의 기능을 쉽게 찾고 싶을 때

        - sublime text edtor에서 처럼 command + shift + p 를 누르고 키워드를 입력해서 기능을 쉽게 찾을 수 있음

- 새로운 기능

    - source diff - element에서 변경하면 소스코드에서 변경된 부분을 표시해줌

    - quick source - source와 동일. element에서 style tab에 해당하는 부분을 동시에 보여줌

    - css source map을 on 하면 scss 원본 파일과 연결해줌. 이 상태에서 수정해도 반영됨.

        - 변수에 지정된 값을 변경 가능

        - 저장하면 원본 파일도 같이 변경됨. 파일을 변경해도 스타일 반영됨.

- application

    - resources 패널이 변경됨

    - manifest를 시각적으로 표현

    - service worker 를 다양하게 테스트 가능

    - sw에서 생성하는 로그의 색을 변경하는 데모 보여줌

    - clear storage

- lighthouse

    - progressive web app을 만들기 위한 체크리스트 역할을 하는 프로젝트

- DevTools에 node.js를 디버깅할 수 있는 기능 추가 


이 세션의 후반부인 Application 패널부터는 Great libraries and tools for great Progressive Web Apps 의 후반부와 내용이 같습니다. Node.js 프로그램을 DevTools에서 디버깅하는 데모도 동일합니다. 둘 중 하나의 영상만 봐도 충분합니다. 다만 Application 패널에 대한 설명은 service worker pane에 대한 데모가 추가되어 있는 이 동영상이 더 낫습니다. 나머지는 거의 비슷하니 두 개 중 하나만 보셔도 충분할 것입니다.



잘못된 부분이 있을 수 있으니, 꼭 원본 동영상을 참고하시기 바랍니다.









nundefined ETC Animation, application, Canary, Chrome, device mode, devtools, google io, google io 2016, LIGHTHOUSE, node.js, service worker, 서비스 워커, 크롬

Great libraries and tools for great Progressive Web Apps 요약

2016.05.31 23:32

오늘 본 비디오는 Great libraries and tools for great Progressive Web Apps 입니다. 솔직히 제목에 혹~! 했습니다만 막상 비디오를 다 보고 나니 동영상에 나온 것들을 적용하려면 고민을 많이 해야 할 것 같더군요. 동영상의 내용은 대략 다음과 같습니다.



Progressive Web Apps 은 웹에서의 최신 유행어다.

    - PWA는 최신 기술을 많이 사용하고

    - PWA를 만들면 사용자에게 유용하고, 사용성이 높고, 즐거운 경험을 줄 수 있다.

 

PWA를 만드려면 만드는 방법의 변화가 필요하다.

    - 예전 웹

        - 예전에는 고수준의 기능으로 웹페이지를 만들었다.

        - 이미지를 보여주고 싶으면 이미지 태그를 사용하고, 테이블을 보여주고 싶으면 테이블 태그를 사용했다.

    - 확장할 수 있는 웹

        - 웹 표준의 새로운 아이디어는 extensible web이다.

        - 특정한 기능을 하는 간단한 API 대신 새로운 기능은 저수준이고 강력하며 더 다양한 것을 가능하게 한다.

            - 이미지를 보여주는 태그 대신 임의의 그래프를 그릴 수 있는 태그를 제공한다.

            - 테이블 태그 보다는 원하는 것을 그리를 수 있는 CSS 속성을 제공한다.

        - 페이지를 앱으로 바꿀 수 있다.

    - 그런데 실제 만들어야 할 것과 플랫폼 사이에 간극이 생기게 되고

    - 이 간격은 라이브러리로 채운다.

    - 커뮤니티는 개발자가 원하는 특정한 기능을 수행할 수 있는 간단하고 사용하기 좋은 라이브러리를 제공할 책임이 있다.


Service Worker libraries

    - PWA에서 가장 중요한 기술은 Service Worker다.

        - 오프라인, 푸시 메시지, 백그라운드 데이터 싱크 같은 기능을 제공

    - sw-toolbox (https://github.com/GoogleChrome/sw-toolbox)

        - 연결 상태와 관련된 패턴을 추출하여 쉽게 사용할 수 있도록 만듬

    - sw-precache (https://github.com/GoogleChrome/sw-precache)

        - 캐시 관리를 쉽게 하도록 도와줌

        - cli로도 사용 가능

    - sw-appcache-behavior (https://github.com/GoogleChrome/sw-helpers/tree/master/projects/sw-appcache-behavior)

        - 기존에 만들어진 appCache 사이트를 Service Worker로 바꾸도록 도와줌

    - sw-helpers (https://github.com/GoogleChrome/sw-helpers)

        - sw-appcache-behavior는 sw-helpers의 일부임

    - 현재 작업 중인 것에는 offline analytics 가 있음

        - 오프라인일 때 ga 요청을 저장하고 있다가 온라인이 되면 서버로 전송


Chrome DevTools

    - 최신 버전 (Canaray 52)에서 사용 가능

    - resources 패널이 application 패널로 변경

    - manifest panel

        - manifest 의 정보를 확인 가능

        - add to homescreen 가 있어서 homescreen에 추가되지는 않지만 onbeforeinstallprompt 이벤트를 트리거함

    - service worker panel

        - offline, update on reload, bypass for network(service worker 미동작) 등의 상태를 테스트할 수 있다.

    - clear storage panel

        - 현재 사이트의 값만 제거할 수 있다.

    - cache storage viewer

        - 추가된지는 좀 됐지만 사람들은 잘 모른다.

        - 캐시된 항목의 목록


Lighthouse (https://github.com/GoogleChrome/lighthouse)

    - 크롬 익스텐션이나 npm 모듈로 제공

    - remote debugging API 사용

    - 몇 번 페이지 로드한 후 PWA의 관점에서 리포트를 제공해줌

    - cli: $ lighthouse your.address

        - 콘솔에 찍거나, json, html로 리포트 제공

    - node module로도 사용 가능

        - ci 과정에서 활용 가능

    - 알파 버전 상태, 규칙은 아직 확정되지 않은 상태, 카나리 52+에서만 동작, 

    - 아직 초기 단계료 여러분의 도움이 필요함



잘못된 부분이 있을 수 있으니, 꼭 원본 동영상을 참고하시기 바랍니다.





nundefined ETC Canary, Chrome, devtools, extensible web, google io, google io 2016, LIGHTHOUSE, progressive web app, pwa, service worker, sw-appcache-behavior, sw-helpers, sw-precache, sw-toolbox, 서비스 워커, 크롬