42
1 소개합니다. RAD 스튜디오 10.2 도쿄

RAD Studio 10.2 도쿄

  • Upload
    devgear

  • View
    445

  • Download
    6

Embed Size (px)

Citation preview

Page 1: RAD Studio 10.2 도쿄

1

소개합니다. RAD 스튜디오 10.2 도쿄

Page 2: RAD Studio 10.2 도쿄

발표순서

• RAD 스튜디오는?

• IDE 생산성

• 윈도우 10 애플리케이션 제작

• 델파이로 리눅스 개발

• FireDAC으로 데이터베이스 앱 만들기

• 새로운 라이브러리 기능

• 모바일과 사물인터넷을 위한 확장성 높은 REST API 제작

• 마무리, Q&A

• 김현수(험프리) RAD 스튜디오 에반젤리스트

[email protected]

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

• 블로그 : blog.hjf.pe.kr/

Page 3: RAD Studio 10.2 도쿄

RAD 스튜디오는?

Page 4: RAD Studio 10.2 도쿄

RAD 스튜디오는?

•가장 빠르게 크로스-플랫폼 네이티브 앱을 개발하는 방법

•유연한 클라우드 서비스와 다양한 IoT 연결 제공

PLATFORM

INDEPENDENT CLOUD READY

CROSS

PLATFORM NATIVE

Page 5: RAD Studio 10.2 도쿄

RAD 스튜디오 플랫폼 지원

•메이저 운영체제들의 최신버전을 하나의 코드베이스로!

•공식 지원 • Windows 10 Anniversary Update

• macOS Sierra

• iOS 10

• Android N (Nougat)

• Linux 64-bit (우분투와 레드햇 엔터프라이즈)

Page 6: RAD Studio 10.2 도쿄

빠르고, 시각적인 개발

• RAD 스튜디오는 윈도우 10을 위한 강력한 VCL 컨트롤과 윈도우, 맥, iOS, 안드로이드를 개발할 수 있는 FMX를 제공합니다.

Page 7: RAD Studio 10.2 도쿄

클라우드 서비스

AWS, Azure 지원 • 스토리지, 테이블, 쿼리 엑세스

BaaS 프로바이더 • Parse, Kinvey 포함

REST 그리고 HTTP 클라이언트 라이브러리 • 플랫폼 라이브러리 기반으로 다이렉트 엑세스, 네이티브 HTTPS 지원

NoSQL 데이터베이스 컴포넌트 • MongoDB 완벽 지원

Page 8: RAD Studio 10.2 도쿄

광범위한 사물인터넷 연결

사물인터넷(IoT) 기능으로 데스크탑과 모바일 앱 확장

• 블루투스, 블루투스 LE, 그리고 WiFi

• 바로 사용할 수 있는 IoT 컴포넌트

• 근접 인식, 비콘펜스

• 센서 데이터 수집

• ThingPoints를 사용한 분산 장치 모니터링

Page 9: RAD Studio 10.2 도쿄

C++빌더

C++11 문법 지원(윈도우와 모바일) • CLANG-확장 컴파일러, RAD 모델 지원

C++11: “거의 새로운 언어 같은 느낌” • Lambdas

• Move semantics

• Automatic type deduction

• Native concurrency

• Better Smart Pointers

• Range-for

Page 10: RAD Studio 10.2 도쿄

델파이

현대식 오브젝트 파스칼 프로그래밍 언어 기반

• 모든 플랫폼을 지원하는 고성능 네이티브 컴파일러

•최고로 사용하기 쉽고, 완벽한, OOP, RAD 언어

델파이 개발자들의 대규모 커뮤니티 활용

• 모든 산업과 모든범위에서

대용량-메모리 지원, 델파이 스탠드-얼론 컴파일러

Page 11: RAD Studio 10.2 도쿄

IDE 생산성

Page 12: RAD Studio 10.2 도쿄

IDE 메뉴 개선

• 개선된 IDE 메뉴로 빠르게 필요한 메뉴에 접근

맑은 고딕

Page 13: RAD Studio 10.2 도쿄

10.2에서 개선된 IDE 내용

개선된 내용 • Code Insight 와 코드 자동완성

• 서로 다른 DPI에서 폼을 디자인하고 오픈하는 것에 대한 지원

• Show in Explorer – 프로젝트 매이저, File 탭 • IDE 로딩 속도 개선 • 대형 프로젝트 그룹 지원 개선 • 프로젝트의 매니페스트 파일 지원

디버깅 • iOS와 macOS(델파이 시뮬레이터와 디바이스)

Page 14: RAD Studio 10.2 도쿄

퀵 에디트(Quick Edit) 가장 빠르게 폼 양식을 설정하고,

컨트롤을 추가하고 공통 속성을 편집하는 방법

네가지 새로운 영역: • 빠른 폼 설정 (툴바와 상태바가 포함된 폼, 탭 기반 다이얼로그 등)

• 많이 사용되는 컨트롤과 컴포넌트 추가

• 아이콘 및 이미지리스트 추가 • 캡션, 정렬, 색상 등과 같은 일반 속성 수정 등

VCL 지원; FMX 지원 계획 중

Page 15: RAD Studio 10.2 도쿄

개선된 설치 경험 •최소 설치 + 플랫폼

• 초기 “최소 설치” 기준으로 시스템 구축

• 플랫폼 추가 설치 • 더 많은 플랫폼을 언제든지 추가 설치

가능

• 겟잇(Getit) 기술 기반

• 병렬(Parallel) 다운로드 in 10.2

•전통적인 오프라인 설치 프로그램 계속 사용 가능(ISO Image)

Page 16: RAD Studio 10.2 도쿄

윈도우 10 애플리케이션 제작

Page 17: RAD Studio 10.2 도쿄

윈도우 10 스토어 지원

• 이미 제작한 또는 신규 Win32/64 애플리케이션을 윈도우 10 스토어에 등록

• 마이크로소프트의 윈도우 10 Anniversary(1주년) 업데이트 일환으로 윈도우 10 스토어 도입

• 데스크탑 브릿지(일명 Centennial Bridge) 기술을 사용해 Win32/Win64 애플리케이션을 Universal Windows Platform 애플리케이션으로 패키지화

• IDE기반 윈도우 스토어 배포 지원

• 윈도우 10 스토어 미리보기 모드로 즉시 열림

VCL & FMX 베를린 업데이트 2 Anniversary 에디션에서 처음 지원

Page 18: RAD Studio 10.2 도쿄

RAD 스튜디오: 데스크탑 브릿지를 지원하는 첫번째 IDE!

“윈도우 10의 데스크탑 브릿지를 통해 마이크로소프트 윈도우 데스크탑에 구축 된 소프트웨어가 최신 윈도우 애플리케이션 패키지 형식을 사용할 수 있게 해주는 도구를 제공합니다. 이를 통해 보다 깨끗한 설치, 제거 및 업데이트, 윈도우 스토어 및 윈도우 스토어 for 비지니스를 통한 새로운 배포 기회를 얻을 수 있으며 알림과 같은 Universal Windows Platform 기능으로 소프트웨어를 향상시킬 수 있습니다. 개발자는 이제 RAD 스튜디오를 사용해 데스크탑 브릿지를 사용하는 애플리케이션을 직접 구축 할 수 있게되어 매우 기쁩니다. RAD 스튜디오는 데스크탑 브릿지를 지원하는 최초의 개발자 IDE이며, 큰 재작성 없이도 기존 응용 프로그램을 빠르게 마이그레이션 할 수 있습니다.”

Kevin Gallo, 마이크로소프트, 윈도우 개발자 플랫폼 부사장

Page 19: RAD Studio 10.2 도쿄

델파이 리눅스 개발

Page 20: RAD Studio 10.2 도쿄

리눅스 지원

•리눅스 64비트 서버에 집중

•공식 지원 • Ubuntu 16.x LTS • RedHat Enterprise 7 • 대부분의 배포판에서 작동할 것으로 예상 됨

•서버 사이드 기술만 • RTL, DB RTL, IOUtils 그리고 파일 시스템 접근, FireDAC, HTTP, REST, Cloud,

WebBroker, Apache 통합, DataSnap, EMS/RAD Server, JSON, XML, SOAP, Indy, IoT, 그리고 그 이상

• C++빌더 리눅스 지원은 10.2 업데이트1 예정

Linux server 지원은 엔터프라이즈와 아키텍처 에디션

Page 21: RAD Studio 10.2 도쿄

델파이 리눅스 컴파일러

• 64-비트 인텔 리눅스 대상

• LLVM 기술 기반 • ARC 사용

• 기본으로 ZBS 꺼짐

• SDK 가져오기 위해 리눅스 박스 필요(PAServer 통해) • 컴파일을 위한 것은 아님

• 배포 및 디버깅을 위해 PAServer 사용

• 직접 배포할 수 있으며 파일 사용 권한을 조정해야 할 수 있음

Page 22: RAD Studio 10.2 도쿄

리눅스 개발환경 설정하기

RAD 스튜디오 리눅스 개발환경 설정하기 - http://tech.devgear.co.kr/430268

Page 23: RAD Studio 10.2 도쿄

리눅스 RTL 기능

•모든 코어 RTL을 사용 할수 있습니다. • System, Exceptions, Kernel, POSIX Headers, File System,

IOUtils, RTTI, Unicode, Threading and Parallel Library…

• Native HTTP client library (libCurl)

• XML DOM and JSON processing

• DUnitX

Page 24: RAD Studio 10.2 도쿄

리눅스 데이터베이스 엑세스 기능

•모든 리눅스 지원 DBMS 용 FireDAC 드라이버

• MySQL (and MariaDB), InterBase, FireBird, Oracle, MS SQL Server

• Sybase ASA, DB2, MongoDB, PostgreSQL, SQLite, Teradata

• Informix만, 제외!

•사용할 수 없는 드라이버: MS Access, DataSnap, DBX

Page 25: RAD Studio 10.2 도쿄

리눅스 인터넷 클라이언트와 서버 지원

• Indy 클라이어트와 서버

•WebBroker + DataSnap + RAD Server modules (EMS) • Apache 2.4 통합

• 독립 실행형(Standalone) 서버

•클라이언트 라이브러리 • HTTP 그리고 REST 클라이언트 라이브러리

• Cloud 그리고 BaaS 클라이언트

• SOAP 클라이언트

Page 26: RAD Studio 10.2 도쿄

리눅스 기반 웹서비스 제작하기

델파이로 리눅스 기반 웹서비스 제작하기(WebBroker 이용) - http://tech.devgear.co.kr/431630

• 콘솔 기반 WebBroker 프로젝트

• 아파치 모듈 기반 WebBroker 프로젝트

Page 27: RAD Studio 10.2 도쿄

FireDAC으로 데이터베이스 앱 만들기

Page 28: RAD Studio 10.2 도쿄

FireDAC

•높은-성능, 손쉬운-사용, 기업용 데이터베이스 연결

•범용 데이터 엑세스, 그러나 많은 데이터베이스 전용 기능 사용 가능

•드라이버 필요 없음, 전체 소스코드 제공

•리눅스 지원

Page 29: RAD Studio 10.2 도쿄

FireDAC 변경

•New - MariaDB 지원(v5.5과 그 이상)

•MySQL v5.7 지원

• Firebird 다이렉트 I/O 지원

•TFDMemTable – 런타임 시 사용할 데이터를 디자인 타임 데이터셋 에디터에서 생성

•TFDDataMove 컴포넌트 제거. TFDBatchMove 대신 사용

Page 30: RAD Studio 10.2 도쿄

DB RTL 변경

•새로운 TField의 AsGUID 속성

• Blob 스트리밍으로 클라이언트 측 메모리 사용을 줄임

• VCL TDBImage에서 JPEG과 PNG 그래픽 포맷 직접 지원

• DBGrid에서 BlobField 표현하는 옵션사용 지원

Page 31: RAD Studio 10.2 도쿄

새로운 라이브러리 기능

Page 32: RAD Studio 10.2 도쿄

FMX 아키텍처 / 안드로이드 변경

• “Purgatory” 삭제됨 (폼과 컨트롤들 지연된 파괴) • TPurgatory 클래스 삭제 • TFmxObject.Replace에 대한 호출 (Purgatory 호출)이 예전의

TFmxObject.Free로 대체되었습니다.

• 멀티스래딩 그래픽스: TBitmap, Tcanvas, TContext3D 지원 • 모든 플랫폼 (특히 모바일에서 중요)

• 안드로이드에서 델파이와 자바 스래드 통일

• 안드로이드 zOrder와 네이티브 컨트롤 지원 준비 작업

• 모든 코드가 자바 UI 스래드에서 동작 • CallInUIThread 지원 중단, 더 이상 스레드 동기화가 필요하지 않음

Page 33: RAD Studio 10.2 도쿄

새로운 „SystemStatusBar” 파이어몽키 속성

Page 34: RAD Studio 10.2 도쿄

RTL 라이브러리 변경

• Azure와 AWS의 업데이트 된 API 지원 개선

• HTTP 클라이언트 비동기 지원 향상

• 파일과 스트림에 대한 새로운 MD5와 SHA1 함수 지원

• 스트림과 파일에 대한 MD5와 SHA1 해시 계산을 위해 System.Hash 지원 (예> THashMD5.GetHashBytesFromFile)

• 앱테더링 로그 필터링과 메인스래드와 원할한 동기화를 위한 SynchronizeEvents 속성 • TTetheringManager와 TTetheringProfile과 메인 스래드의 컨트롤과 이벤트 동기화하기 위한 새로운 SynchronizeEvents 속성

Page 35: RAD Studio 10.2 도쿄

모바일과 사물인터넷을 위한 확장성 높은 REST API 제작

Page 36: RAD Studio 10.2 도쿄

RAD 서버

•델파이와 C++빌더 애플리케이션을 위한 완벽한 백엔드

•델파이 또는 C++빌더의 주요 RAD 서버 서비스 • REST API End-Point 퍼블리싱

• 서버 메타데이터 퍼블리싱(Swagger 이용) • 모바일 푸쉬 알림 • 사용자/그룹 관리 • API 사용량 통계

• 사용자 위치/근접 서비스(비콘 펜스) • IoT 가장자리 모듈(ThingPoints)

RSX

Page 37: RAD Studio 10.2 도쿄

RAD 서버 아키텍처

EMS DB

System Database EMS Server HTTP Clients

• Version

• API

• Users

• Groups

• Installations

• Push

• Edgemodules

• Resource A1

• Resource A2 플러그인 형태의 EMS 패키지(*.bpl)

• Resource B1

• …

Page 38: RAD Studio 10.2 도쿄

RAD 서버 향상

멀티-태넌트 지원

• 하나의 RAD 서버 데이터베이스에 연결된 단일 RAD 서버 인스턴스는 이제 여러개의 독립적인 테넌트를 지원합니다.

• 각 테넌트는 사용자, 그룹, 설치, 에지모듈과 기타 데이터를 포함하는 고유한 RAD 서버 자원 세트를 갖습니다.

• 테넌트 관리: 새 테넌트를 만들고, 기존 정보를 수정하고, 테넌트를 추가, 수정 또는 삭제합니다.

Page 39: RAD Studio 10.2 도쿄
Page 40: RAD Studio 10.2 도쿄

마무리, Q&A

Page 41: RAD Studio 10.2 도쿄

추가 정보

• www.devgear.co.kr • 제품 상세 정보

• tech.devgear.co.kr • 새소식

• 기술자료

• 개발자 Q&A

• devgear.co.kr/docwiki • 최신 온라인 기술문서(한글번역)

Page 42: RAD Studio 10.2 도쿄

감사합니다! Questions and Answers