Developer direct live in 부산
-
Upload
humphery-kim -
Category
Software
-
view
522 -
download
6
description
Transcript of Developer direct live in 부산
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
Developer Direct LIVE! In 부산
강력해진 VCL 과
멀티-디바이스로 확장
EMBARCADERO TECHNOLOGIES
About your presenter
• 김현수(Humphery, Kim)
• 데브기어 델파이 에반젤리스트
• 데브기어 테크(질문, 조회) : http://tech.devgear.co.kr/
• 블로그 : http://blog.hjf.pe.kr/
• Facebook : http://fb.com/hjfactory
EMBARCADERO TECHNOLOGIES
• 15:00-15:10 The Big Picture
• 15:10-16:00 VCL 코드베이스와 개발자에 파워를 더하자!
• 16:00-16:30 데이터베이스, 통합, 확장성 있는 서비스와 RAD Studio
연결
• 16:30-16:50 Coffee Break
• 16:50-17:30 모바일 그리고 FM 애플리케이션 플랫폼
• 17:30-18:00 VCL 애플리케이션을 모바일로 확장
• 18:00- 질문
Agenda
EMBARCADERO TECHNOLOGIES
Embarcadero Technologies
• 1993년도 설립
• 320만 이상의 고객 – 포춘 2000 기업 중 97%
• 35개 이상의 수상경력 – 꾸준한 혁신
• 세계 29개국에서 500명 이상 근무
• 국내 주요 고객사
EMBARCADERO TECHNOLOGIES
What is RAD Studio? RAD Studio는 하나의 코드로 윈도우, 맥, iOS, 안드로이드용 순수 네이티브 애플리케이션을 개발할 수 있는 완벽한 소프트웨어 개발 솔루션이며 여러분들의 빠른 시장진입을 지원합니다.
EMBARCADERO TECHNOLOGIES
RAD Studio XE6 개요!
• Quality, Stability, Performance! (품질, 안정성, 성능!)
• 새로운 VCL 스타일과 컴퍼넌트 추가
• C++Builder 안드로이드 개발
• 앱테더링 - VCL 앱을 모바일로 확장(협업)
• 모바일 앱내결제와 광고 서비스
• 새로운 BaaS(Backend-as-a-Service) 컴포넌트
• … 그리고 그 이상
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
The Big Picture
여러분의 VCL 애플리케이션이 멀티-디바이스 사업을 추진하는데 핵심입니다.
EMBARCADERO TECHNOLOGIES
설문목표
방법
주요 연구 목표 : 윈도우 개발자들이 모바일 개발로 이동하려는 개발자들의 경험과 전문적인 지식의 수준을 수치화한다.
최근 윈도우 개발자 대상의 모바일 개발에 대한 의향조사
세계의 윈도우 개발자들을 온라인으로 설문 초대. 그들은 모바일 앱 개발을 위해 애플리케이션 개발 경험과 시도에 대해 질문
대상자 윈도우 데스크탑 애플리케이션 개발 책임자 1337명을 대상으로 설문을 진행
EMBARCADERO TECHNOLOGIES
윈도우 개발자들은 iOS와 Android 모바일앱을 선호하지만, 여전히 윈도우는 중요
12
당신은 여전히 기존의 윈도우 애플리케이션 개발 및 지원인 필요한가?
1%
4%
95%
No, we will cease development and
support of Windows …
We will provide support only, no new features
Yes, we will continue all development and support for the …
여러분의 사용자들에게 제공하기 위해 어떤 모바일 플랫폼이 가장 중요한가?
4%
14%
17%
33%
67%
83%
Other
BlackBerry
Windows RT
Windows Phone
Apple iOS
Android
EMBARCADERO TECHNOLOGIES
당신은 네이티브(컴파일된) 앱이 스크립트/인터프리터 용 앱보다 더 좋은 사용자 경험과 성능을 제공한다 생각하는가
(i.e. HTML5, Java, JavaScript, Python, etc.)?
응답자 85%는 네이티브 앱 선호
Yes 85%
No 15%
EMBARCADERO TECHNOLOGIES
당신은 공통 소스크드를 이용해 데스크탑 애플리케이션과 네이티브 모바일 앱을 한번에 개발할 수 있는 도구가 도움이 된다 생각하는가?
응답자 95%는 모바일과 데스크탑 개발에 공통코드 사용을 원함
Yes 95%
No 5%
EMBARCADERO TECHNOLOGIES
Why RAD Studio XE6?
• 여러분이 모바일로 가는 길
– Multi-device
– True native
– Single source
• 여전히 윈도우는 여러분의 핵심
– VCL 확장, 최고의 Windows library
– Desktop/mobile 통합
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
VCL 코드베이스와 개발자에 파워를 더하자!
• Win 7/8 taskbar buttons • Improved VCL Styling • Supercharge VCL apps with Visual LiveBindings
EMBARCADERO TECHNOLOGIES
VCL Styles
• 새로운 VCL 스타일로 여러분의 윈도우 애플리케이션의 외관을 바꾸세요.
• 윈도우 태블릿 스타일을 포함하고 윈도우7, 8.1 스타일을 지원합니다.
• 시스템 메뉴와 타이틀 등의 테두리를 포함 여러분의 애플리케이션의 모든 것에 적용됩니다.
VCL Style utils(style hook) - https://code.google.com/p/vcl-styles-utils/
EMBARCADERO TECHNOLOGIES
TaskBar Preview Component
• 윈도우 태스크바에 애플리케이션 미리보기 표시
• 미리보기 영역 제어
• 미리보기 창에서 버튼 추가 및 사용
• 태스크바에 종류 별 진행상황, Overlay 아이콘을 표시
EMBARCADERO TECHNOLOGIES
VCL Sensor Components
• 윈도우 태블릿에서 위치, 이동 및 추가기능 접근
• VCL 애플리케이션에서 장치의 센서에 접근
• Accelerometer, GPS 그리고 gyroscope 센서(가속도, GPS, 평형 센서)
EMBARCADERO TECHNOLOGIES
XE6의 새로운 추가기능
• 새로워진 모습의 IDE
• JSON 라이브러리 리팩토링(Refactoring)
• TWebBrowser - 최신 IE기반으로 개선
• WebBroker와 DataSnap에서 Apache HTTP Server 모듈 지원
• 윈도우에서 GPU 사용, DirectX 11 지원, OpenGL 확장
• 약 2,500여개의 항목 향상 및 개선
QC Client 사용법 - http://tech.devgear.co.kr/373275
EMBARCADERO TECHNOLOGIES
Win64?
Unicode?
User Interfaces?
Modern Language Features?
Visual LiveBindings?
FireDAC?
Cloud Services?
점검항목
EMBARCADERO TECHNOLOGIES
Win64 – 더 빠르고 강력한 개발
• http://slashdot.org/topic/cloud/speed-test-2-comparing-c-compilers-on-windows/
• http://stlab.adobe.com/performance/
Demos - C++Builder XE5 Clang Compiler(Optimization) • Function Objects Test • Simple Types Constant Folding Test • Simple Types Loop Invariant Test • Stepanov Abstraction Test • Stepanov Vector Test • Unroll Test
EMBARCADERO TECHNOLOGIES
Modern Language Features – 더 간결하고 쉬운 개발
• Generics – http://docwiki.embarcadero.com/RADStudio/XE6/en/Generics_Index
• Anonymous method – http://docwiki.embarcadero.com/RADStudio/XE6/en/Anonymous_Me
thods_in_Delphi
• Type Helper(Class and Record) – http://docwiki.embarcadero.com/RADStudio/XE6/en/Class_and_Reco
rd_Helpers_(Delphi)
• DocWiki – http://www.devgear.co.kr/docwiki
EMBARCADERO TECHNOLOGIES
Visual LiveBindings – 더 쉽고, 빠른 개발
• RAD Studio XE2 도입 – VCL and FireMonkey – C++Builder and Delphi
• 항목 간 연결만으로 데이터 연결
– 코드 없이 Drag&Drop으로 연결가능 – 단방향 및 양방향 가능 – 필요한 형태로 추가하여 사용가능
• 디자인타임과 런타임에서 모두 사용 가능
– 신속한 프로토타입 개발 후 실제데이터 연결… 끝~~~
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
데이터베이스, 통합, 확장성있는 서비스와 RAD Studio의 연결
• What’s new in FireDAC
• Building DataSnaps services
• InterBase
EMBARCADERO TECHNOLOGIES
What is FireDAC?
• Data Access Engine – TDataSet 베이스로 설계되어 사용이 쉽고, BDE와 호환성이 높음
• High-performance, Easy-to-use – Live Data Window 모드에서 대형 데이터셋 양방향으로 빠르게 탐색 – Array Data Manipulation Language (DML) 명령 실행 – 네트워크 트래픽을 최소화할 수 있는 일괄 처리를 위한 Command Batches 제공
• 통합 API – SQL 별 고유 언어 추상화, 일원화된 SQL 스크립트, 통합 에러 레포트와
트랜잭션
• 네이티브 데이터베이스 드라이버 지원 • BDE 마이그레이션
– “reFind” 유틸리티를 통해 손쉽게 가능
http://www.devgear.co.kr/products/rad-studio/firedac/
EMBARCADERO TECHNOLOGIES
Native FireDAC Drivers • MySQL • Microsoft SQL
Server • Oracle Database • InterBase • PostgreSQL • DataSnap • SQLite
• Sybase SQL Anywhere • Microsoft Access • IBM DB2 Server • Informix • Firebird • Advantage Database • ODBC gateway • dbExpress gateway
EMBARCADERO TECHNOLOGIES
향상된 FireDAC 기능
• (추가) FireDAC 기반 Data Explorer 통합 – Data Explorer에서 Drag & Drop으로 컴포넌트와 네이밍 처리
• (추가) 스트리밍, JSON 직렬화 포맷 리팩토링 • TFDMemTable 디자인 타임 기능 향상 (Load from File, Save to
File, Assign Data) • TFDPhysXxxxDriverLink 컴포넌트 추가 필요한 경우만 • 캐쉬 업데이트 대폭개선, 더 좋은 Join을 제공 • (추가) 인포믹스 네이티브 드라이버 지원 • (추가) InterBase 암호화된 백업/복원 지원 • Local SQL의 ad-hoc datasets 핸들 개선
EMBARCADERO TECHNOLOGIES
FireDAC Performance DEMO
• FireDAC Data Access
– dbExpress
– FireDAC
– FireDAC Array DML
• Memory Table
– FDMemTable
– ClientDataSet
EMBARCADERO TECHNOLOGIES
DataSnap - 확장성 있는 서비스 구성
• FireMonkey용 DataSnap Wizard 추가 • 유연한 서버 아키텍쳐와 호스팅
– NEW! Apache 2.4 Web Server hosting on Windows
• REST Clients and RESTful interfaces – NEW! FireDAC JSON Reflection
• 역할기반 인증 및 권한 부여 • 보안전송과 통신필터 • 콜백(서버 > 클라이언트 호출) 함수 • 다양한 클라이언트 유형 제공
* 만약, 웹서비스를 보유하고 있다면, REST CLIENT로 바로 접속이 가능합니다. http://tech.devgear.co.kr/345476
EMBARCADERO TECHNOLOGIES
INTERBASE Embed, Deploy, Relax
The highly scalable, powerful, embeddable, encrypt-able database that works on multiple platforms, including iOS & Android
EMBARCADERO TECHNOLOGIES
InterBase® - Suited to Mobile, Desktop, Server • Overview
– Highly scalable, powerful, embeddable database.
– Small memory and on-disk footprint,
– Simple installation / deployment
– Near zero administration
– Encryption built into all paid versions*
– Low TCO
• Notable Features
– Full-featured DBMS
• SQL92 compliant
• SQL Domains
• ODBC
– ACID compliant / Multi-version architecture
– Automatic crash recovery
– SMP - Multiple core support
– Self-tuning engine
– Fully featured in all editions • Some features limited in run-time royalty free IBLite
– Database monitoring and statistics built in
• Security
– Embedded user & role based authentication
– Full database, table or column encryption
• DES (weak)
• AES (strong 256bit) encryption
– Decryption by user / user role
– Allows developers to focus on creating fast, resilient applications.
• Disaster Recovery
– Journaling
– Data dumps
– Partial Backups
• Also….
– Window Direct I/O support & Amazon EC2 certified
– Tight integration into Embarcadero Development tools, but also works with Visual Studio, Xcode, Eclipse, Ruby, PHP etc
– ODBC
EMBARCADERO TECHNOLOGIES
Video & White Paper on demand!
InterBase XE3 한글문서 데이터 시트 - http://tech.devgear.co.kr/345092 쿽스타트 가이드 - http://tech.devgear.co.kr/345190 운영자 가이드 - http://tech.devgear.co.kr/348174
http://embt.co/ibxplatformdb Learn:
Basics of data protection (from a developers view) Legal responsibilities around data Risk around secure data, Case studies What happens when it goes wrong and the costs!
http://embt.co/MobEntWP In addition learn:
Top mistakes made when “Mobilizing enterprise data”. How to avoid them
제품소개 : http://devgear.co.kr/products/interbase/
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
모바일 그리고 FM 애플리케이션 플랫폼
• Android support in C++Builder
• What’s new in FireMonkey
• App Monetization components
EMBARCADERO TECHNOLOGIES
찬성 네이티브 UX 네이티브 성능 보안
반대 다중의 코드베이스 중복된 여러 팀 개발/운영 비용 상승
찬성 단일 팀 개발 비용 절감 신속한 시장 대응
반대 스크립트 성능 이슈 네이티브가 아닌 UX 보안 취약
앱 개발 툴 선택지
벤더사 개발툴 웹 기술 기반 툴 Multi-Device True Native
Embarcadero
Apple Google
Microsoft
Single Device
Multi Device
Scripted Native
HTML5 and JavaScript
EMBARCADERO TECHNOLOGIES
빠른 시장 진입
• 신속한 프로토타입 개발
• 재사용할 수 있고 확장성 있는 비주얼 컴포넌트, 쉬운 유지보수가 가능한 개발
• 빠르고 쉽게 엔터프라이즈 데이터베이스와 서비스에 연결
EMBARCADERO TECHNOLOGIES
One Codebase, One Team, One Schedule
• 하나의 개발 셋으로 멀티 플랫폼 앱 개발
– one codebase
– one team
– one schedule
• 예산과 프로젝트 복잡성 감소
EMBARCADERO TECHNOLOGIES
모바일 개발 사례
http://tech.devgear.co.kr/345279
EMBARCADERO TECHNOLOGIES
IoT - 다양한 디바이스 연동 • Google Glass
• IP Camera and IO Controller
• Ballistic Chronograph
• Leap Motion 3D input
• Z-Wave Home Automation
• Barcode scanning
• Emotiv EPOC brain computer
interface
• Philips Hue Wireless LEDs
• Ouya
• Kinect
• And more! http://tech.devgear.co.kr/347981
EMBARCADERO TECHNOLOGIES
NEW! C++빌더에서 안드로이드 개발 지원
• 새로운 안드로이드 플랫폼 타겟 용 C++ 컴파일러 – 안드로이드 개발이 가능한 유일한 네이티브 C++ 개발툴과 IDE – First native C++ development tool and IDE for Android
• C++ 코드베이스로 iOS, Android 동시개발 • Clang/LLVM 기반 • C++11 Standard • ARC(Automatic Reference Counting) 지원 • GNUSTL • Windows 64-bit 패키지 지원
C++빌더 이전 세미나 자료 : http://tech.devgear.co.kr/348038
EMBARCADERO TECHNOLOGIES
C++11
• Rvalue references and move constructors • constexpr - Generalized constant expressions • Core language usability enhancements • Initializer lists • Uniform initialization • Type inference • Range-based for-loop • Lambda functions and expressions • Alternative function syntax • Object construction improvement • Explicit overrides and final • Null pointer constant • Strongly typed enumerations • Right angle bracket • Explicit conversion operators • Alias templates • Unrestricted unions
Variadic templates
New string literals
User-defined literals
Multithreading memory model
Thread-local storage
Explicitly defaulted and deleted special member functions
Type long long int
Static assertions
Allow sizeof to work on members of classes without an explicit object
Control and query object alignment
Allow garbage collected implementations
Threading facilities
Tuple types
Hash tables
Regular expressions
General-purpose smart pointers
Extensible random number facility
Wrapper reference
Polymorphic wrappers for function objects
Type traits for metaprogramming
EMBARCADERO TECHNOLOGIES
80’ 90’ 2000+ 2010+
16 Bit Dos Window
Language Compilers Performance System Programming
Desktop C/S Web Multi-Tier
Unicode 64 Bit New C/C++ Standard
Cross Platform Mobile Wearable Devices
32 Bit Window
64 Bit Window Linux
32/64 Bit Multi-Devices
Turbo C/C++ Borland C/C++ MS VC++ Watcom C/C++ Symantec C/C++ Lattice C/C++ …
Borland C/C++ MS VC++ GCC
C++Builder MS VC++ GCC ?
EMBARCADERO TECHNOLOGIES
The FM Application Framework Architecture
Language
3D API
Platform
Desktop Mobile
Framework
EMBARCADERO TECHNOLOGIES
추가되고 개선된 FireMonkey 기능
• TintColor와 IconTintColor 속성 추가(Button과 Toolbar)
• TGrid 개선, TListView 성능향상
• 대부분의 FireMonkey 열거형 타입이 재선언
• 새로운 TWebBrowser 정적 컨텐츠 메소드 추가 (LoadFromStrings, EvaluateJavaScript)
• 새로운 TAlphaColorF Record/Struct
EMBARCADERO TECHNOLOGIES
In-App 결재와 광고 컴포넌트
• 여러분의 앱에 In-APP결재와 광고로 수익을 창출할 수 있다.
• 컨텐츠, 추가기능, 서비스와 가입등을 판매 가능
• 광고영역 노출 컴포넌트 제공
EMBARCADERO TECHNOLOGIES
Develop Apps for Google Glass
• 구글 글래스 최적 스타일 제공
• 비주얼 디자인 템플릿
• 스마트폰, 태블릿과 웨어러블 까지 다양한 기기 개발가능
EMBARCADERO TECHNOLOGIES
Demo & Sample
• DataSnap, RESTClient, Socket, 설정화면 등
• Tframe을 이용 독립 화면 구성
• Interface의 Supports 메소드를 활용 화면별 기능 관리
• 여러분이 필요한 기능을 추가하고 여러분의 앱을 만드세요.
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
VCL 애플리케이션을 모바일로 확장
• App Tethering
• BaaS Components
EMBARCADERO TECHNOLOGIES
App Tethering
• 기존의 윈도우 애플리케이션을 모바일 장치로 쉽게 확장
• 윈도우 어플리케이션과 모바일 앱의 상호 기능 보완과 확장
• 모바일 동반 앱은 기존의 윈도우 VCL 사용자들의 요구에 대한 결과
• 양측의 심플한 커뮤니케이션 컴포넌트 구성
EMBARCADERO TECHNOLOGIES
Why AppTethering?
• 동반자 모바일 앱 구축 – VCL 애플리케이션 활용과 확장
– VCL 애플리케이션의 동반자 FM 모바일 앱 구성
• 자동 검색 – 윈도우 애플리케이션과 모바일 앱이 각각의 설정을 맞추지 않고 자동 연결하고 통신 가능(구성, IP 설정, 서버관리도 필요하지 않음)
– Peer-to-peer 모델로 동작
EMBARCADERO TECHNOLOGIES
App Tethering
• VCL과 FM 앱은 간단한 컴포넌트로 WiFi를 통해 데이터를 전달 할 수 있습니다.
• 오픈된 컴포넌트 기반, 플러그인 아키텍처를 사용
• TCP/IP 연결, 향후(블루투스 등) 확장 예정
EMBARCADERO TECHNOLOGIES
Cloud Service (BaaS) 통합
• Backend-as-a-Service? – 모바일 앱의 서비스 개발 시 필요한
Backend 기능을 표준화(추상화)하여 API로 제공
– 데이터, 이미지, 파일 관리, 사용자 관리
– 업데이트 다운로드와 파일 또는 스트림
– 푸시 알림 전송
• 가트너(시장조사 기관) 예측 – 2016년 40%이상의 모바일 앱은 클라우드
서비스를 이용해 제공될 것
EMBARCADERO TECHNOLOGIES
BaaS = Backend as a Service
• 대부분의 모바일 앱은 데이터, 이미지, 파일등의 서버 저장소가 필요합니다. – 여러분이 직접 만들거나(DataSnap 이용) 확장가능한 클라우드 솔루션 구입(클라우드 또는 BaaS 서비스)
• BaaS = 모바일 사용자 관리를 위한 클라우드 솔루션 – Also usage analytics, push notifications (cross platform,
and more
EMBARCADERO TECHNOLOGIES
Backend-as-a-Service 클라이언트 컴포넌트
• REST Client 기반 아키텍쳐
– XE5에서 도입
• Kinvey와 Parse를 위한 BaaS 클라이언트
– 네이티브 프로바이더를 이용해 서비스 직접 사용
– 각 서비스를 통합 관리할 수 있는 프레임워크 구성
– 향후 서비스 추가(변경)이 가능한 구조
EMBARCADERO TECHNOLOGIES
다양한 기기에서의 애플리케이션 플랫폼
Client Devices
mBAAS Providers
Enterprise Data
DataSnap
EMBARCADERO TECHNOLOGIES
Summury
• 모두를 위한 XE6
– VCL 개발자 – 새로운 컴포넌트, 스타일, 앱태더링으로 애플리케이션을 모던하게 탈바꿈
– Multi-device 개발자 – 광고 및 In-App결재, BaaS(Cloud), 구글 글래스 등으로 다움단계로 진입
– C++ 개발자 – 안드로이드 앱과 64bit 윈도우 패키지 지원 그리고 앞의 모든 것이 포함
– 품질(Quality), 성능(Performance) 그리고 안정성(Stability)
EMBARCADERO TECHNOLOGIES
“RAD” 연구소에서는 무슨일을 하고 있나?
• RAD Studio, Delphi and C++Builder 로드맵 - 2014년 3월
• 다음에서 확인: http://edn.embarcadero.com/article/43677
EMBARCADERO TECHNOLOGIES
추가 정보
• 참고자료
– http://www.devgear.co.kr/docwiki
– http://tech.devgear.co.kr/
• [세미나] 말머리로 질문하시면 빠른 답변 약속
• 교육안내
– 서울 – http://www.devgear.co.kr/edu/
– 부산 – http://www.sycode.co.kr/
EMBARCADERO TECHNOLOGIES EMBARCADERO TECHNOLOGIES
Thank you
[email protected] http://tech.devgear.co.kr http://blog.hjf.pe.kr