[20150204 세미나] vcl 개발자를 위한 speed up! rad스튜디오

44
EMBARCADERO TECHNOLOGIES VCL 개발자위한 Speed UP! RAD스튜디오 Live! VCL 애플리케이션을 멋지고, 빠르고, 쉽게 개발하기 위한 다양한 방안

Upload: devgear

Post on 20-Jul-2015

333 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

VCL  개발자를 위한 Speed  UP!  RAD스튜디오 Live!  

VCL  애플리케이션을 더 멋지고,  더 빠르고,  더 쉽게  개발하기 위한 다양한 방안����������� ������������������  

Page 2: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

발표자  •  김현수(Humphery  Kim)  •  데브기어 델파이 에반젤리스트  

•  데브기어 테크사이트 :  h6p://tech.devgear.co.kr/  

•  블로그 :  h6p://blog.hjf.pe.kr/  •  Facebook  :  h6p://F.com/hjfactory  •  [email protected]  

 

Page 3: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

목차  시간   내용  

13:30  ~  14:00   등록 및 인사말  14:00  ~  14:50   최신 윈도우에 맞는 델파이 컴포넌트와 기능  14:50  ~  15:00   휴식과  Q&A  

15:00  ~  16:20   개발시간 절약과 품질향상을 위한 도구  16:20  ~  16:40   휴식과  Q&A  

16:40  ~  17:30   모바일 앱에서의 엔터프라이즈 데이터 활용  17:30  ~  17:40   정리와 Q&A  

Page 4: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

엠바카데로(Embarcadero Technologies)  •  1993년도 설립  •  320만 이상의 고객  – 포춘 2000 기업 중  97%  •  35개 이상의 수상경력  –  꾸준한 혁신  •  세계 29개국에서 500명 이상 근무  •  5개 R&D  센터  

Page 5: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

엠바카데로����������� ������������������  제품����������� ������������������  포트폴리오����������� ������������������  

Design   Develop   Deliver  

Page 6: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

세미나 소개

•  최신 윈도우 기능과 UI으로 개발해 주세요.  

•  예전에 있던 버그가 또 나오네요.  •  빨리 만들어 주세요.  •  이 프로그램을 모바일에서 사용하고 싶어요.  

•  UI가 2% 부족한데?  •  (변경 부분만 테스트)잘 돌아가겠지?  •  저 친구는 어떻게 저렇게 빠르게 코딩을 하지?  

•  이 버그는 어디서 나오는거지?  •  모바일을 새로 개발해야하나?  

고객 요구사항   개발자 직면한 문제  

Page 7: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

세미나 발표 순서  

•  최신 윈도우에 맞는 델파이 컴포넌트와 기능들  – 최신 윈도우 기능과 UI를 사용할 수 있는 VCL 컴포넌트  

•  개발 시간 절약과 품질 향상을 위한 도구  – 유닛테스트(DUnit),  로깅도구(CodeSite)  – 유용한 개발, 디버깅 팁  

•  모바일 앱에서의 엔터프라이즈 데이터 활용  –  VCL 앱을 모바일로 확장할 수 있는 3가지 방안과 핵심기술  

7  

Page 8: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

최신 윈도우에 맞는  델파이 컴포넌트와 기능들  

Page 9: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

VCL  스타일  

•  애플리케이션 모든 것에 적용  –  컨트롤  –  타이틀  –  테두리  –  메뉴와 시스템 메뉴  

•  일관성 있는 외관  •  윈도우 태블릿 스타일  

–  윈도우7,  8.1  스타일 지원  

자세히 보기(동영상)  :  h6p://youtu.be/HGZfYpgSsjM  

Page 10: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

VCL 스타일  

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

•  VCL  스타일 적용  –  Project  >  Opeon  >  Applicaeon  >  Apperance  

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

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

Page 11: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

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

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

•  미리보기 영역 제어  •  미리보기 창에서 버튼 추가 및 사용  •  태스크바에 종류 별 진행상황,    오버레이 아이콘을 표시  

 

Page 12: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

점프리스트 컴포넌트  

•  최근 문서에 빠르게 접근  •  디자인 타임에 정의 하거나  런타임 시 동적으로 제어 가능  

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

Page 13: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

에디트 / 버튼 속성 들  

•  에디트  –  Alignment  –  TextHint  –  NumbersOnly  –  PasswordChar  

•  버튼  –  ElevaeonRequired  –  Style(bsCommandLink,  bsSplitBu6on)  

Page 14: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

TTaskDialog  컴포넌트  

•  작업에 대한 소개  – 캡션, 제목, 내용  – 추가설명  

•  다양한 종류의 선택지 제공  •  프로그레스바 제공  

자세히 보기:  h6p://tech.devgear.co.kr409271  

Page 15: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

TCategory  관련 컴포넌트  

•  TCategoryPanelGroup  •  TCategoryBu6ons  

•  카테고리 별 기능(메뉴) 구성  

Page 16: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

리본(메뉴)  컴포넌트  

•  윈도우즈 리본 메뉴 구성  •  TRibbon  

–  TRibbonPage  –  TRibbonApplicaeonMenuBar  –  TRibbonQuickAccessToolBar  

•  TAceonManager  

리본 컨트롤 자습서 동영상:  h6p://tech.devgear.co.kr/409260  

Page 17: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

TScreenTipsPopup  컴포넌트  

•  TScreenTipsPopup  •  TScreenTipsManager  

•  화면 도움말 지원 컴포넌트  

Page 18: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

델파이로 국제화된 다국어 애플리케이션 만들기  

자세히 보기:  h6p://tech.devgear.co.kr/408214  

•  Project  >  Language  •  ResourceString  

Page 19: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

그 외 최신 컴포넌트(XE5~XE7)  

•  센서 컴포넌트  •  블루투스 LE 컴포넌트  •  REST  &  BaaS 컴포넌트  •  앱 테더링 컴포넌트  •  FireDAC  엑세스 컴포넌트  

Page 20: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

외부 컴포넌트(써드파티)  

XE7을 지원하는 컴포넌트:  h6p://tech.devgear.co.kr/408452  

TMS  SoUware   Dev  Express  

Page 21: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

개발 시간 절약과 품질향상을 위한 도구  

•  DUnit  :  유닛테스트 자동화  •  CodeSite  :  로깅도구  •  디버깅, 개발 Tips!  

Page 22: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

단위 테스트…  

단위 테스팅  (Unit  

Teseng)  회귀테스팅  (Regression  Teseng)  

통합테스팅  (Intergraeon  Teseng)  

인수테스팅  (Acceptance  Teseng)  

RAD  in  Aceon:  Unit  Test  in  Delphi  -­‐  h6p://youtu.be/xUUC15RbiaQ  

Page 23: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

DUnit: 유닛 테스트 자동화  

•  델파이 유닛 테스트 프로젝트  •  File  >  New  >  Other  >  Unit  Test  

•  SetUp  •  TearDown  •  CheckEquals,  …  •  Status  

Page 24: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

Tips.  개발 생산성 팁  

•  IDE  Insight(IDE의 모든 것)  – 단축키 :  Ctrl  +  .  

•  Code  Template  –  View  >  Template  – 단축키 :  Ctrl  +  J  

•  Refactoring  

Page 25: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

CodeSite:  코드검증 로깅 도구  

•  CodeSite.Send  –  Send(Object)  –  SendError  –  SendNote  

•  Viewer  –  Live  Viewer  –  File  Viewer  

Page 26: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

Tips.  디버깅 팁  

•  OutputDebugString  –  Event  Log  –  DbgView.exe  

•  Assert  –  AssertErrorProc  

•  Run  –  A6ach  to  Process  –  Detach  From  Program  

Page 27: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

생산성: 현대식 문법  

•  타입 헬퍼  –  코드 기능 확장  •  제너릭 – 유연한 데이터 타입  •  익명 메소드 – 코드의 재사용  •  RTTI  – 실시간 타입 활용  

•  도서 &  Ebook  활용  

자세히 보기 -­‐  h6p://tech.devgear.co.kr/406874  

Page 28: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

Castalia:  코딩 생산성 툴  

•  코드 템플릿  •  코드 분석 지원  

– 클래스, 메소드 선택  

•  코드 통계  •  코드 리팩토링  

•  엠바카데로 TwoDesk  인수  

설치, 소개내용 보기 -­‐  h6p://tech.devgear.co.kr/408181  

Page 29: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

모바일 앱에서의 엔터프라이즈 데이터 활용  

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

Page 30: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

모바일 확장 방안(1)  –  2티어 + 데이터스냅  

•  데이터스냅  – 모바일에 필요한 기능 만  – 데이터엑세스 > 모바일 제공  

•  부분적 멀티티어 도입  –  VCL:  2티어  – 모바일: 멀티티어  – 향후 멀티티어로 전환  

데이터베이스  

VCL 애플리케이션   모바일 앱  

미들웨어 서버  

BAD  

데이터 엑세스  

데이터

엑세스   데

이터

스냅  

Page 31: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

모바일 확장 방안(2)  – 웹서비스 기반  

•  보유하고 있는 웹서버 활용  – 웹서버 모바일 인터페이스 제공  

•  REST  클라이언트 라이브러리  –  REST  기반 인터페이스 사용  

데이터베이스  

VCL 애플리케이션   모바일 앱  

웹 서버(미들웨어)  

데이터 엑세스  

데이터

엑세스   REST    

클라이언트  

Page 32: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

모바일 확장 방안(3)  – 내부시스템(인트라)  

•  VCL 애플리케이션의 기능 확장  –  신규개발 보다 상호보완 확장  –  데이터 엑세스, 비지니스 로직  –  모바일 뷰어 / 입력화면만 개발  

•  앱테더링 컴포넌트 기능  –  자동탐색 / 원격조정 / 데이터 전달  –  WiFI,  블루투스 인터페이스 지원  

데이터베이스  

VCL 애플리케이션   모바일 앱  

AT  

데이터

엑세스  

Page 33: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

데이터 스냅으로 모바일 확장  

•  데이터스냅  – 델파이 미들웨어 기술  

•  데이터 전달 기술  –  DataSet  Provider  –  Server  Method  –  FDJSONReflect(Server  Method)  

데이터베이스  

VCL 애플리케이션   모바일 앱  

미들웨어 서버  

데이터 엑세스  

데이터

엑세스   데

이터

스냅  

Page 34: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

FDJSONReflect(데이터스냅)  

•  REST  기반 데이터스냅에서 데이터셋 전달에 사용  –  DataSnap  Server  –  DataSnap  REST  Applicaeon  

•  TFDJSONDataSets  •  TFDJSONDeltas  •  TFDJSONDeltasApplyUpdates  

Page 35: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

앱 테더링으로 모바일 확장  

•  앱테더링  –  VCL 앱을 모바일 장치로 쉽게 확장  –  신규개발 보다 상호보완 확장  

•  앱테더링 데이터 전달 기술  –  SendString  –  SendStream  

•  FDMemTable.SaveToStream  •  FDMemTable.  LoadFromStream  

데이터베이스  

VCL 애플리케이션   모바일 앱  

AT  

데이터

엑세스  

Page 36: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

FDMemTable  -­‐  Stream(앱테더링)  

•  Stream으로 변환  –  SaveToStream(Stream,  sfJSON)  –  LoadFromStream(Stream,  sfJSON)  

•  앱테더링 >  SendStream  •  TFDStanStorageBinLink  •  TFDStanStorageJSONLink  •  TFDStanStorageXMLLink  

Page 37: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

웹서비스 연동으로 모바일 확장  

•  보유하고 있는 웹서버 활용  – 웹서버 모바일 인터페이스 제공  

•  REST  클라이언트 라이브러리  –  REST  기반 인터페이스 사용  

데이터베이스  

VCL 애플리케이션   모바일 앱  

웹 서버(미들웨어)  

데이터 엑세스  

데이터

엑세스   REST    

클라이언트  

Page 38: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

REST 클라이언트  

•  표준 웹 프로토콜(REST) 지원  •  기능별 독립 컴포넌트  

–  TRESTClinet  –  TRESTRequest  –  TRESTReponse  

•  JSON  데이터 자동분석  •  REST  Debugger:  REST 분석툴  

Page 39: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

마무리 요약 /  Q&A  

Page 40: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

마무리 요약  •  최신 윈도우의 UI와 기능을 사용할 수있는 델파이 컴포넌트  

–  최신 컴포넌트와 속성 들

•  개발 시간 절약과 품질향상을 위한 도구  –  DUnit: 유닛 테스트 도구,  CodeSite: 로깅 도구  –  개발과 디버깅에 유용한 팁들

•  모바일 앱에서의 엔터프라이즈 데이터 활용  –  모바일로 확장하는 (대표적인)3가지 방안(데이터스냅,  REST  클라이언트, 앱테더링)  –  FDJSONReflect,  FDMemTable  -­‐  Stream

Page 41: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

교육안내  •  h6p://devgear.co.kr/edu  

Page 42: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

도서안내  

•  한 번에 개발하는 안드로이드/iOS 앱 with  델파이 –  2편 고급활용  •  김원경, 김현수, 오상현 저  •  h6p://www.devgear.co.kr/book/  •  전국 서점에서 만나보세요  

•  대상  •  따라하기 과정을 통한 학습  •  모바일 개발을 시작하는 개발자  

Page 43: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  

Quesdons?    

Queseons?  

Page 44: [20150204 세미나] VCL 개발자를 위한 Speed UP! RAD스튜디오

EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES  

감사합니다.  

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