SlideShare a Scribd company logo
1 of 60
Download to read offline
프론트엔드 개발자를 위한
Layer Model
이한
주의
이 슬라이드의 내용은 웹 표준이 아닙니다.
정확히는 특별한 표준이 없습니다.
브라우저 구현에 많이 의존 하며, 서로 차이점이 있을 수 있습니다.
브라우저의 변화에 따라 달라질 수 있습니다.
웹 브라우저
웹 서버에서 쌍방향 통신하는
HTML 문서나 파일과 연동하고 출력하는 응용소프트웨어
브라우저는 기본적으로 DOM을 한장의 비트맵으로 출력
한장의 비트맵을 위해 복잡한 과정을 거칩니다
웹 브라우저는 DOM Tree를 그대로 그리지 않습니다
오늘 다룰 Layer는 이곳 입니다
Layer Model은 표준이 아닙니다
왜냐면 표준 지침이 없기 때문입니다
그래도 비슷비슷 합니다
같은 문제를 겪다보니 비슷하게 발전했습니다
.bottom {
width: 300px;
height: 300px;
background-color: #E24594;
}
.top {
position: fixed;
z-index: 2;
top: 50px;
left: 50px;
width: 200px;
height: 200px;
background-color: #57BFD2;
}
아래를 먼저그리고 위를 그린다
각각 그리고 합친다
레이어
각각의 독립된 비트맵
레이어는 GPU에서
하나의 화면으로합쳐진다
브라우저 마다 조금씩 다릅니다
RenderLayer, GraphicsLayer
PaintLayer, GraphicsLayer
Safari
Webkit
Chromium, Chrome
Blink
Firefox
Gecko
Edge
EdgeHTML
미확인2
미확인1
https://wiki.mozilla.org/Gecko:Layers
https://msdn.microsoft.com/ko-kr/library/jj680148(v=vs.85).aspx
https://trac.webkit.org/wiki/Accelerated rendering and compositing
https://www.chromium.org/developers/design-documents/gpu-
accelerated-compositing-in-chrome
RenderLayer
브라우저의 엔진이
하드웨어 가속 등을 처리하기 위해사용하는
논리적인 레이어
• It's the root object for the page
• It has explicit CSS position properties (relative, absolute or a transform)
• It is transparent
• Has overflow, an alpha mask or reflection
• Has a CSS filter
• Corresponds to <canvas> element that has a 3D (WebGL) context or an accelerated 2D
context
• Corresponds to a <video> element
https://www.chromium.org/developers/design-documents/gpu-accelerated-compositing-in-chrome
다음 특성을 가지면 새로운 RenderLayer가 만들어집니다
1.자바스크립트를 읽고, 해석하고
2.CSS를 읽고 CSSOM을 생성하고
3.읽어온 DOM의 적합한 위치에 배치한후
4.특성에 맞게 그려 이미지를 만들고
5.GPU에 넘긴다
렌더링 절차
업데이트가 발생하면
Reflow(Relayout)
Repaint(Redraw)
Repaint 발생
Reflow, Repaint 모두 발생
Reflow, Repaint는 비싼 비용을 치룬다
비용을 줄일 수 없을까?
GraphicsLayer
하드웨어 가속 처리를 위한 물리적인 레이어
레이어별 RenderObject를
GraphicsLayer 단위로 렌더링한 뒤
최종적으로 GPU를 통해 합성된다.
• Layer has 3D or perspective transform CSS properties
• Layer is used by <video> element using accelerated video decoding
• Layer is used by a <canvas> element with a 3D context or accelerated 2D context
• Layer is used for a composited plugin
• Layer uses a CSS animation for its opacity or uses an animated webkit transform
• Layer uses accelerated CSS filters
• Layer has a descendant that is a compositing layer
• Layer has a sibling with a lower z-index which has a compositing layer (in other words the
layer overlaps a composited layer and should be rendered on top of it)
다음 특성을 가지면 GraphicsLayer로 승격됩니다
https://www.chromium.org/developers/design-documents/gpu-accelerated-compositing-in-chrome
GraphicsLayer
실제 비트맵에 대응
GPU에 텍스처로 업로드 됨
Reflow, Repaint도 레이어 안에서
z-index: 2
z-index: 1
RenderLayer GraphicsLayer Display
암묵적 레이어 생성
레이어2 레이어1 비트맵1
RenderLayer GraphicsLayer Display
암묵적 레이어 생성
transform: translateX(n);
레이어2 레이어2 비트맵1
레이어 승격
RenderLayer GraphicsLayer Display
암묵적 레이어 생성
transform: translateX(n);
레이어2 레이어? 비트맵1
레이어 승격직접 규칙 X
RenderLayer GraphicsLayer Display
암묵적 레이어 생성
transform: translateX(n);
레이어2 레이어2 비트맵1
레이어 승격암묵적으로 생성
하드웨어 가속(Hardware acceleration)
컴퓨팅에서 일부 기능을 CPU에서 구동하는 소프트웨어
방식보다 더 빠르게 수행할 수 있는 하드웨어의 사용
일부 속성은 CPU에서 레이아웃 재계산 없이
GPU에서 처리 가능합니다
합성(compositing)
transform, opacity
레이아웃 계산 없이 GPU에서 처리 되므로 빠르게 렌더링됩니다
특히 애니메이션에 유리합니다
transform: translateZ(0);
transform: translate3d(0, 0, 0);
레이어를 만들어보자 - Hack
will-change: transform;
레이어를 만들어보자 ‒ will-change
*, *::after, *::before {
will-change: transform;
transform: translateZ(0);
}
그럼 이렇게 해보면 어떨까요?
Build FestRun Fest ≠
컴파일 언어
(보통) 하드웨어 가속
인터프리터 언어
(경우에 따라서) 소프트웨어 렌더링
빌드 시간을 잊어버리지 마세요
GPU는 다른 컴퓨터와 같습니다
서로 다른 메모리를 사용하기 때문에
정보를 동기화 해야 합니다
하드웨어 가속은 좋지만, 신중하게 사용해야 합니다
Reflow/Repaint와 레이어 비용을 비교해서 선택
일반적으로 많은 Reflow/paint작업을 가지는 애니메이션은 레이어 활용
너무 큰 레이어, 중복레이어는 최대한 안생기도록
(특히 리스트같이 반복되는 경우 엄청난 성능 하락이 있을 수 있음)
너무 많은 레이어도 X
암묵적 컴포징을 피하자
Blink는 Squashing 이라고 부르는 방식으로 레이어를 병합하기도 함
한 가지 더
.header {
background: rgba(255, 255, 255, .5);
}
header {
width: 100%;
height: 90px;
}
header > nav > ul > li > nav {
position: absolute;
z-index: 100;
...
}
<header>
<ul>
<li>
<nav>
...
</nav>
</li>
</ul>
</header>
레이어
생성!
.header {
background: rgba(255, 255, 255, .5);
filter: blur(30px);
}
.header {
background: rgba(255, 255, 255, .5);
-webkit-backdrop-filter: blur(30px);
}
.header {
background: rgba(255, 255, 255, .5);
-webkit-backdrop-filter: blur(30px);
}
레이어와 스타일
레이어를 만드는 스타일중 일부는 레이어 전체에 적용
구현자나 사용자 모두 유의할 것!
• http://d2.naver.com/helloworld/2061385
• http://cwdoh.com/workshop/2014/06/14/underst
anding-rendering-performance-matters-in-chrome/
• http://wit.nts-corp.com/2017/06/05/4571
• http://wit.nts-corp.com/2017/08/31/4861
• https://docs.google.com/presentation/d/1dDE5u7
6ZBIKmsqkWi2apx3BqV8HOcNf4xxBdyNywZR8
• https://docs.google.com/presentation/d/1WOhbW
LkhMyo4vZUaHq-FO-mt0B2sejXw-lMwohD5iUo
다음 글을 참고해서 작성하였습니다

More Related Content

What's hot

웹을 지탱하는 기술
웹을 지탱하는 기술웹을 지탱하는 기술
웹을 지탱하는 기술JungHyuk Kwon
 
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템WooSung Jeon
 
[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선NAVER D2
 
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019devCAT Studio, NEXON
 
What is Game Server ?
What is Game Server ?What is Game Server ?
What is Game Server ?흥배 최
 
송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010devCAT Studio, NEXON
 
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018devCAT Studio, NEXON
 
임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013devCAT Studio, NEXON
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심흥배 최
 
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기Jaeseung Ha
 
Multiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremMultiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremSeungmo Koo
 
게임 서버 성능 분석하기
게임 서버 성능 분석하기게임 서버 성능 분석하기
게임 서버 성능 분석하기iFunFactory Inc.
 
Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기KwangSeob Jeong
 
Next-generation MMORPG service architecture
Next-generation MMORPG service architectureNext-generation MMORPG service architecture
Next-generation MMORPG service architectureJongwon Kim
 
Ndc14 분산 서버 구축의 ABC
Ndc14 분산 서버 구축의 ABCNdc14 분산 서버 구축의 ABC
Ndc14 분산 서버 구축의 ABCHo Gyu Lee
 
실시간 게임 서버 최적화 전략
실시간 게임 서버 최적화 전략실시간 게임 서버 최적화 전략
실시간 게임 서버 최적화 전략YEONG-CHEON YOU
 
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017devCAT Studio, NEXON
 
게임프로젝트에 적용하는 GPGPU
게임프로젝트에 적용하는 GPGPU게임프로젝트에 적용하는 GPGPU
게임프로젝트에 적용하는 GPGPUYEONG-CHEON YOU
 
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3Heungsub Lee
 

What's hot (20)

웹을 지탱하는 기술
웹을 지탱하는 기술웹을 지탱하는 기술
웹을 지탱하는 기술
 
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
 
[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선
 
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
 
What is Game Server ?
What is Game Server ?What is Game Server ?
What is Game Server ?
 
송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010
 
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
 
임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심
 
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
 
Multiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremMultiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theorem
 
게임 서버 성능 분석하기
게임 서버 성능 분석하기게임 서버 성능 분석하기
게임 서버 성능 분석하기
 
Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기
 
Next-generation MMORPG service architecture
Next-generation MMORPG service architectureNext-generation MMORPG service architecture
Next-generation MMORPG service architecture
 
Ndc14 분산 서버 구축의 ABC
Ndc14 분산 서버 구축의 ABCNdc14 분산 서버 구축의 ABC
Ndc14 분산 서버 구축의 ABC
 
React vac pattern
React vac patternReact vac pattern
React vac pattern
 
실시간 게임 서버 최적화 전략
실시간 게임 서버 최적화 전략실시간 게임 서버 최적화 전략
실시간 게임 서버 최적화 전략
 
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
 
게임프로젝트에 적용하는 GPGPU
게임프로젝트에 적용하는 GPGPU게임프로젝트에 적용하는 GPGPU
게임프로젝트에 적용하는 GPGPU
 
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
 

Similar to 프론트엔드 개발자를 위한 Layer Model

프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기Chang W. Doh
 
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기Chang W. Doh
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012devCAT Studio, NEXON
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Minsu Park
 
고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화Byung Ho Lee
 
Introduction to DirectX 12 Programming , Ver 1.5
Introduction to DirectX 12 Programming , Ver 1.5Introduction to DirectX 12 Programming , Ver 1.5
Introduction to DirectX 12 Programming , Ver 1.5YEONG-CHEON YOU
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipelinechangehee lee
 
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망Sang Seok Lim
 
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전Sukwoo Lee
 
[2018] 프런트엔드 성능 최적화
[2018] 프런트엔드 성능 최적화[2018] 프런트엔드 성능 최적화
[2018] 프런트엔드 성능 최적화NHN FORWARD
 
윈도우 매니저 스터디: 1. 윈도우 매니저 출력
윈도우 매니저 스터디: 1. 윈도우 매니저 출력윈도우 매니저 스터디: 1. 윈도우 매니저 출력
윈도우 매니저 스터디: 1. 윈도우 매니저 출력nemoux
 
Optimizing the graphics_pipeline_
Optimizing the graphics_pipeline_Optimizing the graphics_pipeline_
Optimizing the graphics_pipeline_ozlael ozlael
 
KGC 2007 소프트웨어 렌더러 개발
KGC 2007  소프트웨어 렌더러 개발KGC 2007  소프트웨어 렌더러 개발
KGC 2007 소프트웨어 렌더러 개발SeongWan Kim
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)Dongho Kim
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템강 민우
 
[0602 박민근] direct2 d
[0602 박민근] direct2 d[0602 박민근] direct2 d
[0602 박민근] direct2 dMinGeun Park
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyondJae Sung Park
 

Similar to 프론트엔드 개발자를 위한 Layer Model (20)

프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
 
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)
 
Shader Driven
Shader DrivenShader Driven
Shader Driven
 
Html5 ie9
Html5 ie9Html5 ie9
Html5 ie9
 
고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화
 
Introduction to DirectX 12 Programming , Ver 1.5
Introduction to DirectX 12 Programming , Ver 1.5Introduction to DirectX 12 Programming , Ver 1.5
Introduction to DirectX 12 Programming , Ver 1.5
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipeline
 
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망
HTML5 관점에서 본 2014 모바일 웹 앱 개발 동향과 사례 및 발전 방향 전망
 
Pp3 devweb
Pp3 devwebPp3 devweb
Pp3 devweb
 
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전
진화하는 컴퓨터 하드웨어와 게임 개발 기술의 발전
 
[2018] 프런트엔드 성능 최적화
[2018] 프런트엔드 성능 최적화[2018] 프런트엔드 성능 최적화
[2018] 프런트엔드 성능 최적화
 
윈도우 매니저 스터디: 1. 윈도우 매니저 출력
윈도우 매니저 스터디: 1. 윈도우 매니저 출력윈도우 매니저 스터디: 1. 윈도우 매니저 출력
윈도우 매니저 스터디: 1. 윈도우 매니저 출력
 
Optimizing the graphics_pipeline_
Optimizing the graphics_pipeline_Optimizing the graphics_pipeline_
Optimizing the graphics_pipeline_
 
KGC 2007 소프트웨어 렌더러 개발
KGC 2007  소프트웨어 렌더러 개발KGC 2007  소프트웨어 렌더러 개발
KGC 2007 소프트웨어 렌더러 개발
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
 
[0602 박민근] direct2 d
[0602 박민근] direct2 d[0602 박민근] direct2 d
[0602 박민근] direct2 d
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyond
 

Recently uploaded

A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 

Recently uploaded (6)

A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 

프론트엔드 개발자를 위한 Layer Model