25
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES VCL 애플리케이션을 더욱 멋지게 Developer Direct Online! VCL 애플리케이션을 멋지고, 빠르고, 쉽게 개발하기 위한 다양한 방안 김현수 [email protected] 오후 130분에 시작합니다.

RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

  • Upload
    devgear

  • View
    248

  • Download
    2

Embed Size (px)

DESCRIPTION

VCL 애플리케이션을 더 멋지고, 더 빠르고, 더 쉽게 개발하기 위한 다양한 방안을 살펴봅니다. 1. 윈도우 최신 기능을 내 애플리케이션에 적용하기 2. 코드는 간결하게, 유지보수는 더 쉽게 3. 하드웨어 성능 최대한 활용하기

Citation preview

Page 1: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

VCL 애플리케이션을 더욱 멋지게 Developer Direct Online!

VCL 애플리케이션을 더 멋지고, 더 빠르고, 더 쉽게

개발하기 위한 다양한 방안

김현수 [email protected]

오후 1시 30분에 시작합니다.

Page 2: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

목차

• 워크샵 소개

• Part1. 윈도우 최신기능을 내 애플리케이션에 적용하기 • 최신 어플리케이션 만들기(VCL 스타일, VCL 컴포넌트 이용)

• Part2. 코드는 간결하게, 유지보스는 더 쉽게 • 현대식 문법 - 타입헬퍼, 제네릭, 익명 메소드

• Part3. 하드웨어 성능 최대한 활용하기 • 병렬 컴퓨팅 라이브러리

• 마무리 요약

Page 3: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

워크샵 소개

• 2회 진행

• 워크샵의 목적

– VCL 애플리케이션 외관/성능/기능 향상

– 현대식 문법으로 더 수월해지는 유지보수 관리

– 최신 윈도우 OS뿐 아니라 추후 업그레이드에 대한 기술방어

– 모바일, IoT(사물인터넷)로 영역확장 등…

3

Page 4: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

윈도우 최신기능을 내 애플리케이션에 적용하기

• VCL 스타일, 커스텀 스타일 • TaskBar, JumpList 컴포넌트 • VCL 센서 컴포넌트

Page 5: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

VCL 스타일

• 애플리케이션 모든 것에 적용 – 컨트롤

– 타이틀

– 테두리

– 메뉴와 시스템 메뉴

• 일관성 있는 외관

• 윈도우 태블릿 스타일 – 윈도우7, 8.1 스타일 지원

Page 6: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

커스텀 VCL 스타일 제작

VCL 스타일 경로: C:\Users\Public\Documents\Embarcadero\Studio\15.0\Styles

Page 7: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

VCL 스타일

• VCL 스타일파일 경로 – C:\Users\Public\Documents\Embarcadero\Studio\15.0\Styles

• VCL 스타일 적용 – Project > Option > Application > Apperance

• 커스텀 스타일 제작 툴 – Tools > Bitmap Style Designer

• 프리미엄 VCL 스타일 다운로드 – http://cc.embarcadero.com/item/29929

7

Page 8: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

태스크바 미리보기 컴포넌트

• 윈도우 태스크바에 애플리케이션 미리보기 표시

• 미리보기 영역 제어

• 미리보기 창에서 버튼 추가 및 사용

• 태스크바에 종류 별 진행상황, Overlay 아이콘을 표시

Page 9: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

점프리스트 컴포넌트

• 최근 문서에 빠르게 접근

• 디자인 타임에 정의 하거나 런타임 시 동적으로 제어 가능

• 태스크바 미리보기 컴포넌트 보완

Page 10: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

VCL 센서 컴포넌트

• 윈도우 태블릿에서 위치, 이동 및 추가기능 접근

• VCL 애플리케이션에서 장치의 센서에 접근

• 위치, 가속도, 방향 센서

Page 11: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

코드는 간결하게, 유지보수는 더 쉽게: 현대식 문법

• 델파이에 추가된 문법 • 타입 헬퍼(Type Helper) • 제너릭(Generics) • 익명메소드(Anonymous Method) • RTTI(Run Time Type Library)

Page 12: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

델파이의 새로운 문법(XE7)

• 동적 배열 초기화 개선

– 상수와 동적 배열을 이용해 초기화

• 스트링과 같은 쉬운 동적 배열 연산

– “+” 연산으로 연결

– Insert, Delete 함수 DI := [1, 2, 3]; // 싱수 초기화 DI := DI + DI; // 동적배열로 초기화 DI := DI + [4, 5]; // 상수 + 동적배열로 초기화 Insert([5, 6], DI, 4); Delete(DI, 6, 1); DI := DI + [9];

Page 13: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

타입 헬퍼(Type Helper)

• 이미 정의된 항목에 기능을 추가할 수 있는 문법

– 데이터 타입, 열거형, 동적배열, 구조체, 클래스

• XE7에 내장된 데이터타입 대부분이 기능확장 됨 (System.SysUtils)

type

TMyClassHelper = class helper for TMyClass

procedure HelloWorld;

function MyFunc: Integer;

end;

Page 14: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

제너릭(Generic)

• 클래스와 메소드에서 사용하는 데이터의 타입을 사용 시 지정하는 문법

• 제너릭 타입과 제너릭 메소드

• 더 단순해지는 코드

• 더 유용해진 컬렉션 클래스

• 열린/닫힌 생성자 형식 제너릭

type

TFoo<T> = class

FData: T;

end;

Page 15: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

익명 메소드(Anonymous Method)

• 이름이 없는 프로시저(Procedure)와 함수(Function)

• 변수와 파라메터로 할당해 전달 가능

• 익명메소드가 정의 시점의 변수 참조가능

type

TProc = reference to procedure;

procedure Call(proc: TProc);

Page 16: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

현대식 문법 더 알아보기

• 데브기어 기술자료 : http://tech.devgear.co.kr/406874

• 엠바카데로 온라인 도움말 – 한글 도움말 : http://devgear.co.kr/docwiki/

– http://docwiki.embarcadero.com/RADStudio/XE7/en/Class_and_Record_Helpers_(Delphi)

– http://docwiki.embarcadero.com/RADStudio/XE7/en/Overview_of_Generics

– http://docwiki.embarcadero.com/RADStudio/XE7/en/Anonymous_Methods_in_Delphi

• 델파이 도서: http://tech.devgear.co.kr/devgearbook

Page 17: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

하드웨어 성능, 최대한 활용하기

• Parallel.For

• TTask, Task.IFutrue

Page 18: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

새로운 페러럴(병렬) 컴퓨팅 라이브러리

• 멀티코어 컴퓨터와 장비를 최대한 활용

• 기존 코드에 쉽게 통합

• 손쉽게 비동기 연산작업에 사용

• 페러럴 for 루프, Task, Future

• 데스크탑과 모바일, Object Pascal과 C++ 지원

Page 19: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

새로운 유닛 - System.Threading

• 페러럴 ‘for’ 루프

– TParallel.For 메소드

• 작업 스케줄링

– TTask 메소드: Run, WaitForAny, WaitForAll, Future

• IFuture

– 미래의 값을 만들고 필요할때 사용

Page 20: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

마무리 요약

• 윈도우 최신기능을 내 애플리케이션에 적용하기

• 코드는 간결하게, 유지보수는 더 쉽게

• 하드웨어 성능, 최대한 활용하기

• 워크샵의 목적 – VCL 애플리케이션 외관/성능/기능 향상

– 현대식 문법으로 더 수월해지는 유지보수 관리

– 최신 윈도우 OS뿐 아니라 추후 업그레이드에 대한 기술방어

– 모바일, IoT(사물인터넷)로 영역확장 등…

21

Page 21: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

다음 세션 내용

2014.11.27 (목) 오후 1:30

• 최신 기술 사용을 위한 코드 업그레이드 자동화와 참 쉬운 모바일 확장

– 코드 업그레이드 자동화하기: 마이그레이션

– 2개의 컴포넌트로 VCL 애플리케이션을 모바일로 확장하기

22

Page 22: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

교육안내

23

• http://devgear.co.kr/edu

• 델파이 기본과정: 3일, 60 만원

• 델파이 고급과정: 3일, 45 만원

• 델파이 DB프로그래밍과 멀티-티어 과정: 4일, 60만원

• RAD Studio 모바일 기본 + 고급과정: 4일, 40 만원

• RAD Studio 모바일 기본과정: 2일, 10 만원

• RAD Studio 모바일 고급과정: 2일, 30 만원

• Skill Up! Speed Up! 데이터 모델링 과정: 4시간, 무료

Page 23: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

도서안내

25

• 한 번에 개발하는 안드로이드/iOS 앱 with 델파이

• 김원경, 김현수, 오상현 저

• http://www.devgear.co.kr/book/

• 전국 서점에서 만나보세요

• 대상

• 따라하기 과정을 통한 학습

• 모바일 개발을 시작하는 개발자

Page 24: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

감사합니다.

http://tech.devgear.co.kr http://www.devgear.co.kr http://www.facebook.com/devgear

Page 25: RAD Studio XE7 DeepDive: VCL 애플리케이션을 더 멋지게!

EMBARCADERO TECHNOLOGIES

Questions?

Questions?