우리 독자 중 많은 분들이 오픈 웹과 그 잠재력에 관심을 가지고 있고 그 중엔 Firefox에 구현된 최신 기술들을 확인하고 싶어 한다는 것을 알고 있습니다. 그래서 이 곳 Mozilla Hacks에서 Firefox의 주요 개발사항들을 소개하려 합니다다.
소개
이 포스팅의 목적은 Firefox와 게코(Gecko)의 최신(1~2주 사이의) 개발사항 중 일부를 안내하는 것입니다. 여기서 소개하는 변경 사항들은 언제든지 제외될 수 있다는 점 그리고 우리의 최신 기술 게시물 중 일부임을 기억해 주기 바랍니다. 여기서 소개하는 사항들은 Firefox 나이틀리(Nightly) 버전에서 시험해 볼 수 있습니다.
만약 여러분이 주요 개발 사항들에 지속적인 관심이 있다면 트위터에서 @FirefoxNightly를 팔로우 하면 됩니다.
그래픽
최근 Firefox에서는 그래픽 스택에서 이미지와 레티나 디스플레이를 위한 향상된 스케일링 알고리즘 같은 큰 성능 향상이 있었습니다. 이제 게코 엔진은 high-quality 스케일링 알고리즘을 사용하여 이미지를 다운스케일한다. 아래 스크린샷에서 향상된 점을 확인할 수 있습니다.(클릭하여 확대) :
모바일에서는 속도/멀티코어 성능에 대한 우려가 있어 비활성되었습니다. OSX의 경우도 high-quality 다운스케일링이 내장되어 있기 때문에 비활성되어 있습니다.
게코에서는 웹 페이지, 플러그인 그리고 Firefox UI를 위해 높은 DPI의 디스플레이도 지원합니다.
표준
CSS3의 flexbox 모델도 환경설정의 layout.css.flexbox.enable
설정을 이용하면 게코에서 사용할 수 있습니다. Firefox의 about:config 로 가서 앞의 설정을 추가하고 true 값을 설정하면 됩니다.
W3C 인용:
flex layout 모델에서, flex 컨테이너의 자식요소는 어느 방향으로든 펼쳐질 수 있습니다. 크기도 유동적(flex)이고 부모 요소에 오버플로우 하는 것을 피하기 위해 늘어나거나 줄어들면서 빈 공간을 채웁니다. 자식 요소의 수평 정렬과 수직 정렬도 쉽게 조절할 수 있습니다. 2차원 레이아웃을 빌드하기 위해 이러한 박스들(수직 정렬 안에 수평 정렬, 또는 수평 정렬 안에 수직 정렬)를 안에 담아서 사용 할 수도 있습니다.
웹 워커(Web Workers)
HTML5 스펙의 transferable object 지원
Andrea Marchesini 인용:
웹 워커 (Web Worker)로 데이터를 보내거나 받으려면, postMessage() 메서드를 사용해야 합니다. 내부적으로는 structured clone 알고리즘을 사용해서 데이터가 복제되고 그 복제본이 전송됩니다. 이러한 공유 방식을 더 빠르게 만들기 위해, HTML5 스펙에 transferable object라는 새로운 컨셉을 추가했습니다. 이 컨셉은 데이터를 복사(copy)없이 한 컨텍스트에서 다른 컨텍스트로 전달하는 것입니다. 노트: 한 번 새로운 컨텍스트로 전송된 데이터는 더이상 사용할 수 없습니다. 지금은 ArrayBuffer만 전달할 수 있지만 앞으로 다른 데이터 타입도 지원할 것입니다.
작성자: Kyuyeol
댓글이 없습니다.