2013년 10월 22일 화요일

[튜토리얼/한글화] 불필요한 페인팅 회피하기 : Animated GIF 에디션 외 3종

HTML5Rocks의 레이아웃이 변경됨과 함께 튜토리얼도 하나 올라왔습니다. 이에 대한 번역과 그 외의 한글로 번역된 3종이 추가로 업데이트되었습니다.

1. "불필요한 페인트 회피하기: Animated GIF 에디션" By Paul Lewis

(이 글은 불필요한 페인트 회피하기(원문)을 먼저 읽으시는 것을 권장합니다.)
최적의 렌더링 성능을 위해 페인팅의 작업 시간을 16ms 이하(60fps)로 유지하는데 필요한 병목 지점의 탐색과 수정에 크롬 개발자 도구를 사용할 수 있습니다.

특히 animated GIF는 그 특성 상 렌더링이 프레임 단위로 지속되며 브라우저들이 이 GIF의 가시성을 확인하는 것보다 그냥 렌더링하는 것이 일반적으로 더 빠르기 때문에 지속적인 렌더링이 일어날 수 있습니다. 크롬 개발자 도구의 'Show paint rectangles' 기능을 이용하여 이러한 불필요한 페인팅의 발생 여부를 확인할 수 있습니다. 이를 통해 불필요한 페인팅을 줄여 부드러운 프레임율을 이루는 방법을 살펴봅니다.

참고 글



    2. "불필요한 페인트 회피하기" By Paul Lewis

    ('불필요한 페인트 회피하기 : Animated GIF 에디션(원문)'의 이전 글입니다.)

    모던 브라우저에서 웹 페이지 내의 엘리먼트들은 1개 이상의 레이어로 그룹지어 렌더링되며 엘리먼트의 시각적 변화는 포함된 레이어와 상위의 레이어로 연쇄 렌더링되어 성능 상의 영향이 발생할 수 있습니다.

    크롬 개발자 도구에서 Show paint rectangles를 이용하여 이러한 페인팅의 발생 여부를 확인할 수 있습니다. 불필요한 페인팅을 줄여 부드러운 프레임율을 이루는 방법을 살펴봅니다. (이 글에서는 스크롤 시 hover로 인한 렌더링 오버헤드로 인한 스크롤의 성능 저하를 개선하는 것을 예로 들고 있습니다.)

    참고 글






      3. "Yeoman과 Polymer를 이용한 웹앱 개발" By Addy Osmani


      Yeoman은 스캐폴딩을 제공하는 Yo, 패키지 의존성을 관리하는 Bower, 빌드 도구인 Grunt를 포함하는 Workflow 도구입니다. Polymer는 Web Component를 지원하지 않는 브라우저에서도 이를 사용할 수 있는 Polyfill 라이브러리입니다.

      이 글은 라이브러리(Polymer)와 도구(Yeoman)를 이용하여 Web Component 기반의 App을 개발하는 방법을 알아봅니다.

      참고 글




        4. "웹 개발자를 위한 이미지 압축" By Colt McAnlis


        사이트 로딩 성능에 큰 영향을 주는 원인 중 대부분 이미지입니다. 이 글은 로딩 성능을 개선하기 위한 다음과 같은 내용들을 설명합니다.

        1. 이미지를 최대한 직접 최적화하고, 나머지는 자동화된 최적화 사용
        2. WebP를 고려
        3. 로딩 시 시각적으로 느리지 않게 보이도록 Progressive로 저장
        4. 보다 나은 압축률과 투명 처리를 위한 다른 방법들

        참고 글




        기타

        • 아직 merged 이후 사이트 업데이트는 대기 상태입니다.
        • 한글 버전이 사이트에 업로드되면 업데이트하도록 하겠습니다.
        • 25일부터 live 상태입니다. :)

        2013년 10월 21일 월요일

        [튜토리얼/한글화] 크롬 개발자 도구를 이용한 캔버스 검사(Canvas Inspection using Chrome DevTools) By Paul Lewis

        크롬 개발자 도구를 이용한 캔버스 검사(Canvas Inspection using Chrome DevTools By Paul Lewis)의 한글 버전이 업데이트되었습니다. 캔버스 기반의 2D 혹은 WebGL 그래픽스 라이브러리를 만들거나 캔버스 렌더링 모듈을 검토할 때 특히나 유용한 기능입니다. 언젠가 정식 기능으로 들어가겠지만 실험 기능으로 두기에는 조금 아깝다는 생각도 듭니다. :)




        TL;DR


        크롬 개발자도구 실험(Chrome DevTool's Experiments)에는 캔버스 동작의 디버깅을 위해 캔버스에 렌더링되는 프레임들을 캡쳐해서 각 프레임의 상태와 입력 명령들을 살펴볼 수 있는 Canvas Inspector가 포함되어 있습니다. 이를 통해 캔버스를 검사하거나 디버깅하는 방법을 살펴봅니다.

        크롬 개발자 도구의 Canvas Inspection


        관련 글

        2013년 10월 18일 금요일

        [업데이트] 크롬 안드로이드 베타에서 Web Audio 입력 지원

        크롬 안드로이드 (버전 31.0.1650 이상) 베타 버전에서 Web Audio 입력이 지원됩니다. Chris Wilson의 말에 따르면 넥서스 4, 갤럭시 S4와 넥서스 7에서만 직접 테스트를 해본 상태고 다른 디바이스에서는 아직 지원 상의 이슈가 있는지는 확인되지 않았다고 합니다.

        이제 곧 모바일 브라우저 상에서도 웹 오디오 입력이 일반화되면 음성 검색 외에도 음성 메모 등 다양한 용도의 어플리케이션이 모바일 웹으로 구현이 가능해지겠네요. 

        참조 링크

        2013년 10월 17일 목요일

        HTML5Rocks.com/ko 로 한글 사이트에 접속하세요.

        16일부터 HTML5Rocks의 한국어 버전이 지원되었습니다. 아래 주소와 같이 ko를 사용하셔서 접속하시면 됩니다.


        이번에 커밋한 HTML5Rocks 한글화 작업이 많은 확인 작업을 진행하지 못해 부자연스러운 표현, 오탈자가 있을 수 있습니다. 이를 발견하시거나 더 나은 표현이 있으면 제안해주세요. 제안이나 참여 안내 방법은 포스팅 아래에 있습니다. :)


        HTML5Rocks 한국어 버전(http://www.html5rocks.com/ko)

        #한글화 작업 참여 안내

        많은 분들이 HTML5Rocks.com에 방문하고 있고 자료 및 게시글을 읽는데 어려운 분들이 많은 것도 사실입니다. 저도 그렇습니다. :(

        최근 HTML5Rocks.com의 사이트와 문서를 한글화하기 위한 작업을 진행 중입니다. 물론 읽어서 이해 하는 것과 그것을 다시 한국어로 표현하는 것은 꽤 다른 일일 겁니다. 그리고 읽고 끝나는 것보다 그것을 번역하고 정리해서 공유하는 일은 꽤나 품이 드는 일일 수도 있을 겁니다. 하지만 뒤에 방문하는 사람들이 그것으로 시간을 줄일 수 있다면 그 또한 좋은 일일 겁니다.

        다음 작업 중 어떠한 부분이라도 참여하시고 싶으신 분은 누구나 환영합니다.

        • html5rocks.com의 한국어 지원
        • 게시된 문서에 대한 한글화 및 검수
        • 오류 사항 수정

        갓 시작한 그룹에서 도움주시고 싶으시다면 함께 해주셨으면 좋겠습니다.

        • HTML5Rocks 한글화 작업 그룹
        • HTML5Rocks/ko 작업 현황 공유용 Trello Board
          • https://trello.com/b/KF7tY7Yi
            • 참고로 트렐로 보드는 코멘트 등의 활동은 자유롭게 하실 수 있지만 멤버는 초대에 의해서만 가능하도록 되어있습니다. Hold된 튜토리얼에 대한 실제 번역 작업을 하지 않는 경우를 방지하기 위함이니 참고하시기 바랍니다.

        기타 관련 링크는 다음과 같습니다.

        HTML5Rocks/KO

        안녕하세요! :)

        이 블로그는 HTML5Rocks에 올라오는 새로운 글, 한글화 진행에 대한 소식들과 HTML5에 관련된 좋은 정보를 공유하기 위한 블로그입니다. 이 블로그는 정보의 전달 목적으로 운영되며, HTML5Rocks.com이나 구글과는 무관합니다. :)