rad studio xe7 deepdive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

25
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES VCL 애플리케이션을 더욱 멋지게 Developer Direct Online! 최신 기술 사용을 위한 코드 업그레이드 자동화와 VCL 애플리케이션을 모바일로 손쉽게 확장하기 김현수 [email protected] 오후 130분에 시작합니다.

Upload: devgear

Post on 03-Jul-2015

366 views

Category:

Software


4 download

DESCRIPTION

최신 기술 사용을 위한 코드 업그레이드 자동화와 손쉽게 모바일 확장하는 방안을 살펴봅니다. 1. 코드 업그레이드 자동화하기 : 마이그레이션(델파이7 코드를 XE7으로) 2. 컴포넌트 2개로 VCL 애플리케이션을 모바일로 확장하기

TRANSCRIPT

Page 1: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

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

최신 기술 사용을 위한 코드 업그레이드 자동화와

VCL 애플리케이션을 모바일로 손쉽게 확장하기

김현수 [email protected]

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

Page 2: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

목차

• Part1. 코드 업그레이드 자동화하기: 마이그레이션

• reFind.exe 툴을 이용한 마이그레이션 자동화하기

• Part2. 2개의 컴포넌트로 VCL 앱을 모바일로

확장하기 • 앱테더링 기술을 이용해 VCL 앱을 모바일로 확장하기

• 심장박동 센서를 블루투스 LE 컴포넌트로 델파이와 연결하기

• 마무리 요약

Page 3: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

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

• reFind.exe 툴을 이용해 마이그레이션 자동화하기

Page 4: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

마이그레이션(코드 업그레이드)

• 마이그레이션이 필요한 이유 – 최신 운영체제에 대한 지원

– 유니코드와 64bit 환경 대응

– 최신기술 사용과 성능개선

– 시스템 확장 등등…

• 마이그레이션에 대한 두려움 – 어떻게 시작하지? http://tech.devgear.co.kr/405045

– 프로젝트(소스)가 너무 많아서 엄두가 나지 않아요. (시간이 없어요.) 오늘 자동화 방안을 참고

Page 5: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

마이그레이션 자동화 데모

AS-IS TO-BE

델파이 버전 델파이 7 델파이 XE7

데이터 연결방식

BDE FireDAC

스타일 기본 스타일 현대식 스타일

마이그레이션 장점

유니코드, 64Bit, 현대식 문법과 최신기술 사용가능

• 델파이 7 데모에 있는 MastApp 프로젝트 대상

• 10개 화면(소스 13개)을 마이그레이션

http://docwiki.embarcadero.com/RADStudio/XE7/en/Migrating_to_FireDAC

Page 6: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

마이그레이션 자동화 데모 – 과정

1. 자동화 패턴을 파일에 등록하기(컴포넌트, 속성 등)

2. reFind.exe 실행해 한번에 코드 변환하기

3. (옵션) 필요한 컴포넌트가 있으면 추가

4. 자동화 변환되지 못한 속성 수정하기

5. 컴포넌트 변경에 따른 변경된 코드 수정하기

6. (옵션) VCL 스타일을 활용해 최신 스타일 적용하기

7

Page 7: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

변환패턴을 텍스트파일로 기록

#unuse <unit>

– PAS 파일에서 유닛을 제거

#remove <property>

– PAS, DFM 에서 속성 제거

#migrate [<class> :] <old> -> <new> [, <unit>]

– Old를 New로 변경

– (옵션) <class> 대상 클래스, <unit> 추가

8

reFind.exe – 마이그레이션 자동화 도구

Page 8: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

FireDAC

• 고성능, 손쉬운 사용, 엔터프라이즈 데이터베이스 연결

• 통합 데이터 엑세스, 하지만 데이터베이스 특화기능 사용가능

FireDAC과 함께라면 데이터베이스 어플리케이션 개발이 다시 재밌어 집니다. http://docwiki.embarcadero.com/RADStudio/XE7/en/Migrating_to_FireDAC

Page 9: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

INTERBASE Embed, Deploy, Relax

The highly scalable, powerful, embeddable, encrypt-able database that works on multiple platforms, including iOS & Android

Page 10: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

IBLite is Free

• 인터베이스의 런타임 로얄티 무료버전

• 윈도우, OS X, iOS, Android 사용가능

• 모든 플랫폼과 에디션에 호환되는 바이너리

• InterBase ToGo로 직접 업그레이드 가능

– 전체 암호화 지원

– 데이터베이스 크기에 제한 없음

Page 11: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES

2개의 컴포넌트로 VCL 앱을 모바일로 확장하기

• 앱테더링 기술을 이용해 VCL 앱을 모바일로 확장하기

• 사물인터넷: 심장박동 센서를 블루투스 LE 컴포넌트로 델파이와 연결하기

Page 12: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

앱 테더링(App Tethering)?

• XE6에서 도입

• 기존의 윈도우 앱을 모바일 장치로 가장 쉽게 확장하는 방법

– 신규개발 보다 상호보완과 확장

• 양측에 컴포넌트 추가로 커뮤니케이션

– 동반자앱 자동탐색(별도 서버 불필요)

– String, Stream 기반 데이터 교환

– 동반자앱에 공개된 액션 원격호출

Page 13: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

앱 테더링 - 자동탐색

• VCL 애플리케이션의 동반자 모바일 앱

• 자동탐색

– 동일 서브넷, 특정 IP, 블루투스

– P2P 모델, 같은 앱/ 동반앱 대상

– 별도의 서버, IP 설정, 서버관리 불필요

• 비밀번호 인증, 데이터 전송 허용

• 동일그룹간 자동연결(AutoConnect)

Page 14: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

앱 테더링 – 데이터 전송

• 데이터 전송

– 문자열, 스트림 데이터 전송

– TFileStream, TMemoryStream…

• 원격 액션 호출

– 공개된 액션(코드블럭)을 상대의 동반자앱에서 원격으로 호출해 실행할 수 있는 기능

Page 15: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

App Tethering Demo

더 알아보기 : http://tech.devgear.co.kr/406984

Page 16: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

RAD Studio의 블루투스 지원

• 블루투스와 블루투스 LE API 제공

– 개발자가 직접 네이티브 API 사용 가능

• 블루투스 LE 컴포넌트(XE7)

• 앱 테더링에서 블루투스 확장

– WiFi와 동일한 방식으로 사용

– 더욱 다양한 환경에서 활용

– 더많은 크로스 플랫폼

Page 17: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

블루투스 기술

“Classic” Bluetooth Bluetooth LE “Low Energy”

소비 전력 높음 낮음

데이터 전송률 높음 (2 Mbps) 낮음 (< 100kbps)

최대 접속 수 최대 7 많은 수…

프로필 표준 (SPP, DUN, PAN) 일반 속성 프로필(GATT)

일반적인 시나리오 자동차, 핸드폰, 핸드프리 기기, 모바일 폰

헬스케어 기기, 스마트왓치, 웨어러블 기기

Page 18: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

플랫폼 별 블루투스 지원

“Classic” Bluetooth Bluetooth LE “Low Energy”

Android ✔ ✔ (Android 4.3 이상)

iOS ✖ ✔ (iPhone 4s+, iPad2+)

Windows ✔ Windows 8(Only)

Mac ✔ ✔

Page 19: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

블루투스 시나리오

• 블루투스 및 블루투스 LE로 헬스케어 센서 또는 웨어러블 기기와 연결해 독창적이고 도메인 특화된 솔루션 제공 가능

• 기존의 VCL 윈도우 어플리케이션에 몇 가지 컴포넌트를 추가해 모바일 동반자 앱과 블루투스 기기로 기능 확장

Page 20: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

블루투스 LE 데모

더 알아보기 : http://tech.devgear.co.kr/405916

Page 21: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

마무리 요약

• 워크샵의 목적 – 윈도우 최신기능을 내 애플리케이션에 적용하기

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

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

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

– 2개의 컴포넌트로 VCL 앱을 모바일로 확장하기

– 블루투스/블루투스 LE

29

Page 22: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

교육안내

31

• 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: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

도서안내

33

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

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

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

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

• 대상

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

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

Page 24: RAD Studio XE7 DeepDive: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

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: 코드 업그레이드 자동화와 손쉬운 모바일 확장 방안

EMBARCADERO TECHNOLOGIES

Questions?

Questions?