델파이의현재와모바일 Rad - 부산가톨릭대학교 특강

Preview:

DESCRIPTION

2014년 3월 12일 부산가톨릭대학교에서 진행된 델파이 특강 100여명의 소프트웨어학과 2~4 학년 학생들이 함께 해주었습니다.

Citation preview

EMBARCADERO TECHNOLOGIESEMBARCADERO TECHNOLOGIES

델파이의 현재와 모바일 RAD

( 멀티플랫폼 네이티브 앱 개발 )in 부산가톨릭대학교

김현수엠바카데로 델파이 에반젤리스트

hskim@embarcadero.kr http://blog.hjf.pe.kr

EMBARCADERO TECHNOLOGIES

( 직업소개 ) 에반젤리스트 ?

• 사전적의미 : 복음 전도사 ??

• Technical Evangelist

• Evangelism : 좋은 소식을 전하는 것

• 컨퍼런스나 세미나에서 강연과 교육

• 개발자들의 우군

EMBARCADERO TECHNOLOGIES

1993 년 설립320 만 고객

29 개국 글로벌 커버리지5 개의 앞선 R&D 센터

Embarcadero Technologies( 엠바카데로 테크놀러지스 - 미국 샌프란시스코 )

세계 최대의 독립 툴 벤더 - 개발툴 , DB 툴

EMBARCADERO TECHNOLOGIES

글로벌 2000 여 업체 중 97% 이상이 엠바카데로의 고객

국내고객사 - http://devgear.co.kr/about/customers.html

Steve Haney
Changed Appiications to Apps, so we sound new and groovy

EMBARCADERO TECHNOLOGIES

델파이 앞날에 대한 궁금증델파이에 대한 엠바카데로의 입장은 ?

2008 년 인수 후 개발팀을 2 배로 확장 , 델파이는 엠바카데로의 주력사업

델파이 사용자 현황은 ?

닷넷 등의 다른 환경으로 전환했던 사용자의 귀환 ( 매출이 대변 )

확고한 업무영역 : 실시간 통신 , 풍부한 UI, 높은 성능이 필요한 업무프로그램

일부 경쟁 환경서도 델파이 방식 ( 컴포넌트 기반 ) 시도 . 하지만 , 유지하지 못함 ( 델파이는 20 년간 일관된 개발방식을 유지 )

사용자 확대를 위한 활동은 ?

( 글로벌 ) 델파이 사용자 교육환경 조성 ( 러시아 , 영국 , 인도 에서 정규 교육과정 편성 )

Steve Haney
Changed Appiications to Apps, so we sound new and groovy

EMBARCADERO TECHNOLOGIES

두둥 !! 뭣이라 ?

델파이 XE5 안드로이지원델파이 XE4 iOS 지원

EMBARCADERO TECHNOLOGIES

ios vs android

ios & android

모바일 플랫폼 선택

EMBARCADERO TECHNOLOGIES

3 백만 RAD Studio(Delphi/C++) 개발자들이 코딩 …

• 해마다 97 억 라인이 작성됨

• 100,000 개의 윈도우 앱

• 덕분에 매해 두자릿수 매출 성장

• 하지만 다른 툴 대비 80% 만 코딩가능

RAD Studio = Delphi + C++ Builder

Steve Haney
Changed Appiications to Apps, so we sound new and groovy

EMBARCADERO TECHNOLOGIES

RAD Studio – RAD?

종래의 소프트웨어 개발 방법 보다 더 짧은 기간에 완성시키는 것

시스템의 완성 이미지를 보여 주면서요구 분석 , 설계 등을 추진하는 방법

EMBARCADERO TECHNOLOGIES

RAD Studio Mobile 맛보기 !프로토타입 모바일 앱 개발

EMBARCADERO TECHNOLOGIES

DEMO

Clone Flappy bird

• 델파이 카피 본

Camera App

• Realtime Filtering

Lego Simulator

• 3D 컴포넌트 활용

EMBARCADERO TECHNOLOGIES

IDE > Target Platform안드로이드 앱 배포• 모든 AVD 와 디바이스• 앱 스토어

– 구글플레이 , 아마존 등의 안드로이드 앱 스토어에 배포

iOS 앱을 시뮬레이터에 배포• iPhone , iPhone 5, iPad (Retina/non-Retina)

iOS 앱을 디바이스에 배포• Debug ( 디바이스에 배포하고 디버깅 )• 애드 혹 (Ad-hoc) ( 회사 내부에 배포 )• 앱스토어 ( 앱스토어에 배포 )

Win32(Add platform)• 가장 빠르고 쉽게 앱을 테스트

EMBARCADERO TECHNOLOGIES

어떻게 멀티플랫폼을 한번에 개발하지 ?

EMBARCADERO TECHNOLOGIES

ApplicationDevelopment

Framework

Platform

Desktop Mobile

FireMonkey Architecture

EMBARCADERO TECHNOLOGIES

Open IRC/C++

Delphi

Intel

ARM

Compiler Architecture

EMBARCADERO TECHNOLOGIES

$ $$ $

C# or C++

.NET or MFC

C++ or Obj-C

OSX SDK

Objective-C

iOS SDK

Java

Android SDK

Why, Multiplatform?

EMBARCADERO TECHNOLOGIES

Why? Native app?Titanium.Geolocation.distanceFilter = .25;Ti.Geolocation.purpose = "Callbacks Are Your Friend”;// make the API callTi.Geolocation.getCurrentPosition(function(e) { // do this stuff when you have a position, OR an error if (e.error) { Ti.API.error('geo - current position' + e.error); return; } // got the location information Ti.App.info('got a location ',JSON.stringify(e));}); JavaScript

100100110010011001001100100110010011001001100100110010

ARM Binary

Bytecode IL

JavaScript Runtime

Interpreter

Virtual Machine (VM)

Runtime

True Native

Scripted VM

EMBARCADERO TECHNOLOGIES

Why, RAD Studio?

$

FutureC++ or Delphi

FM Framework

Multiplatform Native Application

One teamone codebase

EMBARCADERO TECHNOLOGIES

네이티브 스타일과 네이티브 컨트롤 제공

• 메시지 공지• 커스텀 픽커• 날짜 픽커• 전화 다이얼• 키보드• 텍스트 편집

– 잘라내기 / 복사하기/ 붙이기 / 줌

DEMO #1

EMBARCADERO TECHNOLOGIES

제스처

• Swipe• Tap• Pinch & Zoom• Tap & Hold• Double-Tap

EMBARCADERO TECHNOLOGIES

미디어 라이브러리 액션• 사진 찍기• 사진앨범 접근• 컨텐츠 공유 ( 예 : 사진을 SMS, 메일 ,

페이스북 , 트위터 등으로 전달 ) • 탭 전환 시 슬라이드 애니메이션 효과

EMBARCADERO TECHNOLOGIES

카메라

카메라 센서 액세스 제공 :• 플래쉬 활성화• 센서 위치 파악 .• 앞 / 뒤 카메라 액세스• 사진 촬영

DEMO #2

EMBARCADERO TECHNOLOGIES

센서 컴포넌트• 위치 센서 (GPS)• 모션 센서 (Accelerometer)• 방향 센서 (Gyroscope)

EMBARCADERO TECHNOLOGIES

위치 센서

• iOS 디바이스 위치 파악 : 위도와 경도 사용• 위도와 경도를 읽을 수 있는 위치 주소로

변환• Android/iOS/Windows/Mac 에 모두 적용• 위치를 표시하는 웹브라우저 컴포넌트에서

사용 가능

위치 정보가 필요한 애플리케이션에서 널리 사용

DEMO #3

EMBARCADERO TECHNOLOGIES

공지 센터• iOS, 안드로이드 , 맥 OS X 의 다양한 공지 유형 지원

DEMO #4

EMBARCADERO TECHNOLOGIES

3D Components• Using OpenGL• 3D Components

• Cameras• Lighting• Meterial• 3D Layout, 3D Layer(Mix 3D)• 3D Objects

• Cube• Cylinder• Cone• Disk• 등

• 3D ModelDEMO #5

EMBARCADERO TECHNOLOGIES

기타 모바일 컴포넌트들

• TWebBrowser 웹 브라우저 임베딩• TCamera - 앞 / 뒤 카메라 플레시 등• TListBox - 스크롤이 없거나 최소화된 리스트에 적합 , 헤

더 / 풋터 / 그룹 / 검색 스타일 적용• TListView 대량 , 스크롤이 필요한 , 데이터 바인딩 리스트• TSwitch 선택 On/Off• TProgressBar 진행 상태 표시• TSpeedButton 아이콘 적용 옵션 등등 !

EMBARCADERO TECHNOLOGIES

앱의 완성도를 높여주는 요소 (Animation, Effects)

EMBARCADERO TECHNOLOGIES

3rd Party Components

EMBARCADERO TECHNOLOGIES

의료부문 델파이 성공 사례

삼성서울병원 EMR(

전자의무기록 ) 시스템(2012 년 )

델파이 기반 프로젝트진행

삼성 SDS 최초 소프트웨어 수출 ( 미국 크리스터스 헬스 )

현재 모바일 도입검토 중

EMBARCADERO TECHNOLOGIES

모바일 개발 사례 #1

일본 , 히다치 메디컬 컴퓨터

모니터 기반 iPad 기반 혁신

PC 어플의 기능과 디자인을 iPad

에 대부분 채용 ( 스타일 활용 )

기능 재활용으로 이미지 뷰어 개발기간을 예정보다 1/3 단축

장치의 차이를 FMX 프레임웤이 대부분 흡수

EMBARCADERO TECHNOLOGIES

모바일 개발 사례 #2

IP 카메라를 이용한 보안앱

안드로이드 , iOS, PC

동시개발 및 상호 연동

98% 이상 RAD Studio 이용

말보다 영상을 한번 보시죠

!!

영상 : http://www.youtube.com/watch?v=4lQGA8-sO9w

EMBARCADERO TECHNOLOGIES

모바일 개발 사례 #3

‘ 스키장’ 단일 검색 시 구글 마켓 1

본인의 취미인 스키여서 그냥 만듬

국내 델파이 개발 및 서비스하는 첫번째 안드로이드 앱

Delphi XE5 로 3 개월만에 제작( 기획 , 설계 , 디자인 , 개발 단독 )

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!

EMBARCADERO TECHNOLOGIES

마지막 메시지

어떻게 개발할지 보다 무엇을 개발할지 고민

하나만 개발하면 iOS, Android 앱을 만드는 기적을 경험

델파이가 제공하고 싶은 것멀티플랫폼

네이트브 개발이라는 기술

여러분들이 쉽고 , 빠르게 앱을

개발 할 수 있는 가치

EMBARCADERO TECHNOLOGIES

추가 정보• 트라이얼 다운로드 ( 데브기어 > 평가판 다운로드 )

– http://www.devgear.co.kr/products/rad-studio/downloads/

• 참고자료– http://docwiki.embarcadero.com/(http://goo.gl/Q83Nns)– http://tech.devgear.co.kr/

• ( 서울 ) 교육안내 (http://www.devgear.co.kr/edu/)– 델파이 기본 , 고급 , DB 멀티티어 과정– 모바일 기본 , 고급 과정

• ( 부산 ) SYCODE 교육 - http://www.sycode.co.kr/• C++ 빌더 세미나 - 3/18( 대전 ), 3/19( 서울 )

– http://onoffmix.com/event/24432

EMBARCADERO TECHNOLOGIESEMBARCADERO TECHNOLOGIES

Q&A

EMBARCADERO TECHNOLOGIESEMBARCADERO TECHNOLOGIES

감사합니다

hskim@embarcadero.krhttp://blog.hjf.pe.kr/

http://fb.com/hjfactory