서브메뉴
검색
본문
Powered by NAVER OpenAPI
-
-
에센셜 실버라이트 3(위키북스 오픈소스 웹 시리즈 16)
저자 : 아슈라프 미하일
출판사 : 위키북스
출판년 : 2009
정가 : 22000, ISBN : 9788992939416
책소개
2005년부터 WPF나 실버라이트의 그래픽 시스템을 담당하는 아키텍트로 근무해온 저자가 말하는 실버라이트 안내서. 그는 초창기 모델부터 지금까지 모든 것을 직접 설계해왔기 때문에 그 어느 누구보다도 실버라이트의 동작 원리나 구현 방식에 대해서 가장 잘 알고 있다고 볼 수 있다. 이 책은 개발자의 입장에서 실버라이트의 구성과 동작 원리 또는 주의할 점이나 성능에 대한 문제점들을 풀어낸 것으로, 오랫동안 쌓아 온 저자의 경험과 노하우를 녹여내는 데 초점을 맞추고 있다.
실버라이트3의 모든 핵심 기능을 다루고 있을 뿐만 아니라 그 기능들을 사용하는 방법에 대해서도 설명하고 있다. 또, '하부구조' 절에서는 각각의 기능들이 왜 그렇게 구현되어야만 했으며 각 작업들이 어떻게 서로 상호작용하는지를 상세하게 설명해주고 있다. 구체적인 성능 팁은 실버라이트 응용프로그램의 속도를 개선하는 데 실질적인 도움을 준다.
실버라이트의 설계원칙과 실버라이트 응용프로그램의 구성, 그리고 XAML과 .NET 코드의 통합방법, 실버라이트 벡터 그래픽, 비트맵 이미지, 애니메이션의 사용방법, 플랫폼에 독립적으로 예측 가능하고 읽기 쉬운 텍스트를 출력하는 방법과 애니메이션으로 변환이 되는 텍스트 엘리먼트를 출력하는 방법 등을 다루고 있으며, 실버라이트를 설계한 아키텍트의 입장에서 컨트롤을 사용할 때의 주의점이나 동작 원리에 대해서 설명해주고 있다. 따라서 실버라이트를 개발할 때의 시각과 다른 새로운 시야를 넓힐 수 있도록 한다.
목차
1장 실버라이트 개요
실버라이트 설계 원칙들
- 웹 개발
- 보안
- 미디어와 향상된 인터넷 응용프로그램들
- 쉬운 개발
- 플랫폼 독립
실버라이트의 기능
- 응용프로그램 모델
- 그래픽스
- 텍스트
- 입력
- 애니메이션
- 레이아웃
- 미디어
- 컨트롤
- 데이터 바인딩
- 네트워킹
하부 구조
요점 정리
02장 응용프로그램
응용프로그램 모델의 설계 원칙
- 웹 개발과 브라우저 외부에서 실행
- 플랫폼 라이브러리
- 디자이너와 개발자의 협업
- 플랫폼에 독립
- 보안
Visual Studio를 사용하여 응용프로그램 만들기
응용프로그램 구성요소들
- 브라우저 밖으로 응용프로그램 내보내기(실버라이트 3의 새로운 기능)
- XAML
- XAP 패키지
하부구조
- 아키텍처 개요
- 실버라이트 플러그인
- 다운로더
- XAML 파서
- .NET 공통 언어 런타임
- 엘리먼트 트리
- 이벤트 시스템
- 애니메이션
- 레이아웃
- 렌더링
요점정리
03장 그래픽스
그래픽 시스템의 설계 원칙
- 벡터 그래픽과 비트맵 이미지
- 보유모드
- 플랫폼 독립의 일관성
- 도구
- 이미지 품질과 속도
그래픽 엘리먼트
- 도형
- 이미지
- 브러쉬
- Image 브러시
- 외곽선 칠하기
- Canvas
하부구조
- 그리기 루프(Draw Loop)
- 래스터화
- 변경된 부분 다시 그리기
- 가려진 영역 찾기(Occlusion Culling)
- 다중 코어 렌더링
- 콘텐트가 화면에 출력되는 방법
요점정리
04장 텍스트
텍스트 설계 원칙들
- 서로 다른 기종의 플랫폼에서 동일한 특징 유지
- 크기에 독립적인 레이아웃
- 가독성을 위한 렌더링
Text 엘리먼트들
- TextBlock
하부구조
- 폰트 열거
- 대체 폰트
- 폰트 다운로드
- 캐시
- 래스터화
요점정리
05장 입력 이벤트들
입력 설계 원칙
- 웹 브라우저 이벤트 받기
- 사용자 컨트롤
- 플랫폼에 독립적인 일관성
- 다중 언어
입력 이벤트
- 마우스 입력 이벤트
- 키보드 이벤트와 포커스
하부구조
- 마우스 이벤트
- 키보드 이벤트
- 비동기적으로 실행되는 이벤트
요점정리
06장 애니메이션
애니메이션 설계 원칙
- 시간 기반 애니메이션과 프레임 기반 애니메이션
- 시간에 따른 속성 변경
- 사용자 애니메이션
- 성능
애니메이션 엘리먼트
- 애니메이션 시작하기
- 보간과 키 프레임 애니메이션
- 타임라인
- 비선형 보간(Easing) 기능(실버라이트3의 새로운 기능)
- 사용자 애니메이션 기능(실버라이트3의 새로운 기능)
하부구조
- 애니메이션 틱
- 속성 변경 속도
- 화면 출력
요점정리
07장 레이아웃
레이아웃 설계 원칙
- 크기와 위치에 대한 자동화
- 자동화된 응용프로그램 크기
- 크기에 독립적인 레이아웃
레이아웃 엘리먼트
- Canvas
- Border
- StackPanel
- Grid
- 레이아웃 좌표 반올림
- 커스텀 레이아웃 작성
- 레이아웃 이벤트
하부 구조
- 레이아웃 알고리즘
요점 정리
08장 미디어
미디어 설계 원칙
- 미디어 통합
- 콘텐트 전송
- 전체 화면 재생을 위한 전송
- Expression Media Encoder으로 플레이어 만들기
미디어 엘리먼트
- 비디오 재생
- 재생 컨트롤 만들기
- 비디오 효과와 변형
- 전체 화면
- 응용프로그램에 출력될 비디오 마커에 연결하기
하부구조
- 소스
- 플레이어
요점 정리
09장 컨트롤
컨트롤 설계 원칙
- 내장 컨트롤
- 사용자 정의 컨트롤
- 사용자 정의
컨트롤 엘리먼트
- ContentControl과 ItemsControl
- 상태 관리자
- 스타일 주기
- 사용자 정의 컨트롤 생성하기
하부 구조
- 컨트롤 인스턴스
- 상태 매니저 알고리즘
요점 정리
10장 데이터 바인딩
데이터 바인딩 설계 원칙
- 데이터 소스
- 자동화된 연결과 동기화
- 선언적인 XAML 모델
데이터 바인딩 객체들
- 데이터 바인딩
- DataContext 상속
- 데이터 동기화와 바인딩 모드
- 데이터 바인딩 컬렉션
- 값 변환자
- 데이터 유효성 검사
- 엘리먼트와 엘리먼트 바인딩(실버라이트3의 새로운 기능)
하부 구조
- Binding 객체
- ItemsControl
요점 정리
11장 효과
효과 설계 원칙
- 실시간 속도
- 내장된 공통 효과들
효과 엘리먼트
- 효과 적용하기
- 효과 생성하기
하부구조
- 출력 면 생성
- BlurEffect와 DropShadowEffect
요점정리
12장 GPU 가속
GPU 가속을 설계할 때의 원칙들
일반적인 시나리오에서 성능 개선
- 이미지 품질 유지하기
- 합리적인 안전성 유지
GPU 가속 기능
- GPU 가속의 필요 조건
- GPU 가속 활성화하기
- CacheMode 속성 사용하기
- 성능문? 진단
하부구조
- 그래픽 장치 생성
- 텍스처 생성
- GPU 가속의 렌더링 단계
- 다중 모니터 사용
요점정리