본문 바로가기

Programming/쓸모있는 정보들

Google IO Extended 2019 Seoul Track A 요약

Track1. 장한보람 Whats new in web

  • Web at Google I/O

  • Chrome을 포함해서 Web의 전체적인 업데이트

  • 키워드 : 신속성, 확장성, 보안 >> 사용자 경험을 위해

    • 신속성

      • V8 개선

      • Image Lazy Loading: 고화질 이미지 렌더링 속도 개선을 위해 Image Lazy Loading으로 처리, 데이터 절약

        다른 라이브러리 사용 없이, image/iframe에 loading Attribute 체크해서 알아서 이후 동작을 핸들링한다.

        chrome canaria에서 테스트 가능

      • Portal : 새로운 페이지 전환 효과, Iframe과 다르게 최상위 레이어로 볼 수 있다.

        chrome canaria에서 테스트 가능

      • Lighthouse : budget.json에 script, image 등 타입을 정하고 Budget을 기준으로 성능을 평가

        performancebudget.io 참고

    • 확장성

      • Web Perception Toolkit
      • Sharing API
      • Duplex on the web
    • 보안

      • 프라이버시 제어를 더 쉽게
      • Same Site Cookie : 다른 도메인의 악성코드가 다른 도메인의 쿠키를 읽지 못하도록 "smaeSite:strict"
      • Fingerprinting Protection 계획
  • 웹의 한계를 대응하기 위한 구글의 시도

    • Information, Link

    • App Gap (Web vs. Native App) : 웹의 한계 (eg.모바일에서 파일시스템, 전화번호에 접근할 수 없다.)

      Native에서 잘되는 기능을 사용자 보안에 해를 끼치면서 가져올 필요는 없다.

      eg. Badge API, PWA(Chrome 76부터는 Desktop APP에서도 가능하다.),

Track2. 김석용 Flutter를 소개합니다.

  • Cross Platform : 하나의 코드로 다양한 OS에서 동작시킬 수 있다. 그러나 유저가 이미 갖고 있는 네이티브 경험을 해치고, Truble Shooting, Performance에 대한 우려가 있다.
  • Flutter 17년 8월에 오픈, Fuchsia의 어플리케이션을 만들기 위해 나왔다.
  • Dart
  • Skia : Widget이 없다면 하위 호환성은? 안드로이드 젤리빈, ios8부터 가능하다.
  • Flutter Components
    • Material, Cupertino 모두 지원, 그외 Widget App도 지원
  • 복잡한 뷰를 그릴 수록 따로 모듈화를 자주 해야한다. 왜 이렇게까지 사용해야 하나?

Track3. 조은 구글 검색과 자바스크립트 사이트

  • 요즘은 GoogleBot이 자바스크립트를 랜더링하지 않으면 컨텐츠를 이해할 수 없다.

    Chrome v41을 사용해서 자바스크립트를 랜더링해서 내용을 이해한다. 그러나 버전 차이때문에 Puppeteer를 사용해서 랜더링을 확인하는 방식으로 변경되었다.

  • SPA로 개발한 것이 검색되지 않는다는 것은 오해! 상위 노출 될 수 있는 방법을 찾는 것이 중요하다.

  • 검색 엔진 최적화(SEO)하는 방법

    • Robots.txt : 막을 정보가 있다면 기입한다. (Disallow)
      • 검색이 안되어야한다면 Disallow로 도메인을 노출하지 말고, 도메인을 아예 분리하든지 인증을 추구한다.