ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
1
소개합니다.
RAD 스튜디오 10.2 ëÑ«¿„
발표순서
• RAD 스튜디오는?
• IDE ìƒì‚°ì„±
• 윈ë„ìš° 10 애플리케ì´ì…˜ 제작
• ë¸íŒŒì´ë¡œ 리눅스 개발
• FireDAC으로 ë°ì´í„°ë² ì´ìŠ¤ 앱
만들기
• 새로운 ë¼ì´ë¸ŒëŸ¬ë¦¬ 기능
• 모바ì¼ê³¼ 사물ì¸í„°ë„·ì„ 위한 확장성
ë†’ì€ REST API 제작
• 마무리, Q&A
• 김현수(험프리)
RAD 스튜디오 ì—반젤리스트
• hskim@embarcadero.kr
• ë°ë¸Œê¸°ì–´ í…Œí¬ì‚¬ì´íŠ¸ :
tech.devgear.co.kr/
• 블로그 : blog.hjf.pe.kr/
RAD 스튜디오는?
RAD 스튜디오는?
• 가장 빠르게 í¬ë¡œìŠ¤-í”Œëž«í¼ ë„¤ì´í‹°ë¸Œ ì•±ì„ ê°œë°œí•˜ëŠ”
방법
•유연한 í´ë¼ìš°ë“œ 서비스와 다양한 IoT ì—°ê²° 제공
PLATFORM
INDEPENDENT
CLOUD READY
CROSS
PLATFORM
NATIVE
RAD 스튜디오 í”Œëž«í¼ ì§€ì›
• ë©”ì´ì € ìš´ì˜ì²´ì œë“¤ì˜ ìµœì‹ ë²„ì „ì„ í•˜ë‚˜ì˜ ì½”ë“œë² ì´ìŠ¤ë¡œ!
• ê³µì‹ ì§€ì›
• Windows 10 Anniversary Update
• macOS Sierra
• iOS 10
• Android N (Nougat)
• Linux 64-bit (우분투와 레드햇 엔터프ë¼ì´ì¦ˆ)
빠르고, ì‹œê°ì ì¸ 개발
• RAD 스튜디오는 윈ë„ìš° 10ì„ ìœ„í•œ 강력한 VCL 컨트롤과
윈ë„ìš°, 맥, iOS, 안드로ì´ë“œë¥¼ 개발할 수 있는 FMX를
제공합니다.
í´ë¼ìš°ë“œ 서비스
 AWS, Azure 지ì›
• 스토리지, í…Œì´ë¸”, 쿼리 엑세스
 BaaS 프로바ì´ë”
• Parse, Kinvey í¬í•¨
 REST 그리고 HTTP í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬
• í”Œëž«í¼ ë¼ì´ë¸ŒëŸ¬ë¦¬ 기반으로 다ì´ë ‰íŠ¸ 엑세스, 네ì´í‹°ë¸Œ HTTPS
지ì›
 NoSQL ë°ì´í„°ë² ì´ìŠ¤ ì»´í¬ë„ŒíŠ¸
• MongoDB 완벽 지ì›
광범위한 사물ì¸í„°ë„· ì—°ê²°
 사물ì¸í„°ë„·(IoT) 기능으로 ë°ìŠ¤í¬íƒ‘ê³¼ ëª¨ë°”ì¼ ì•± 확장
• 블루투스, 블루투스 LE, 그리고 WiFi
• 바로 사용할 수 있는 IoT ì»´í¬ë„ŒíŠ¸
• 근접 ì¸ì‹, 비콘펜스
• 센서 ë°ì´í„° 수집
• ThingPoints를 사용한 분산 장치 모니터ë§
C++빌ë”
 C++11 문법 지ì›(윈ë„우와 모바ì¼)
• CLANG-확장 컴파ì¼ëŸ¬, RAD ëª¨ë¸ ì§€ì›
 C++11: â€œê±°ì˜ ìƒˆë¡œìš´ 언어 ê°™ì€ ëŠë‚Œâ€
• Lambdas
• Move semantics
• Automatic type deduction
• Native concurrency
• Better Smart Pointers
• Range-for
ë¸íŒŒì´
 í˜„ëŒ€ì‹ ì˜¤ë¸Œì íŠ¸ 파스칼 í”„ë¡œê·¸ëž˜ë° ì–¸ì–´ 기반
• 모든 플랫í¼ì„ 지ì›í•˜ëŠ” 고성능 네ì´í‹°ë¸Œ 컴파ì¼ëŸ¬
• 최고로 사용하기 쉽고, 완벽한, OOP, RAD 언어
 ë¸íŒŒì´ 개발ìžë“¤ì˜ 대규모 커뮤니티 활용
• 모든 ì‚°ì—…ê³¼ 모든범위ì—ì„œ
 대용량-메모리 지ì›, ë¸íŒŒì´ 스탠드-얼론 컴파ì¼ëŸ¬
IDE ìƒì‚°ì„±
IDE 메뉴 개선
• ê°œì„ ëœ IDE 메뉴로 빠르게 필요한 ë©”ë‰´ì— ì ‘ê·¼
ë§‘ì€ ê³ ë”•
10.2ì—ì„œ ê°œì„ ëœ IDE ë‚´ìš©
 ê°œì„ ëœ ë‚´ìš©
• Code Insight 와 코드 ìžë™ì™„성
• 서로 다른 DPIì—ì„œ í¼ì„ ë””ìžì¸í•˜ê³  오픈하는 ê²ƒì— ëŒ€í•œ
지ì›
• Show in Explorer – 프로ì íŠ¸ 매ì´ì €, File 탭
• IDE 로딩 ì†ë„ 개선
• 대형 프로ì íŠ¸ 그룹 ì§€ì› ê°œì„ 
• 프로ì íŠ¸ì˜ 매니페스트 íŒŒì¼ ì§€ì›
 디버깅
• iOS와 macOS(ë¸íŒŒì´ 시뮬레ì´í„°ì™€ 디바ì´ìŠ¤)
퀵 ì—디트(Quick Edit)
 가장 빠르게 í¼ ì–‘ì‹ì„ 설정하고,
ì»¨íŠ¸ë¡¤ì„ ì¶”ê°€í•˜ê³  공통 ì†ì„±ì„
편집하는 방법
 네가지 새로운 ì˜ì—­:
• 빠른 í¼ ì„¤ì • (툴바와 ìƒíƒœë°”ê°€
í¬í•¨ëœ í¼, 탭 기반 다ì´ì–¼ë¡œê·¸ 등)
• ë§Žì´ ì‚¬ìš©ë˜ëŠ” 컨트롤과 ì»´í¬ë„ŒíŠ¸
추가
• ì•„ì´ì½˜ ë° ì´ë¯¸ì§€ë¦¬ìŠ¤íŠ¸ 추가
• 캡션, ì •ë ¬, ìƒ‰ìƒ ë“±ê³¼ ê°™ì€ ì¼ë°˜
ì†ì„± 수정 등
 VCL 지ì›; FMX ì§€ì› ê³„íš ì¤‘
ê°œì„ ëœ ì„¤ì¹˜ 경험
• 최소 설치 + 플랫í¼
• 초기 “최소 설치†기준으로 시스템 구축
• í”Œëž«í¼ ì¶”ê°€ 설치
• ë” ë§Žì€ í”Œëž«í¼ì„ 언제든지 추가 설치
가능
• 겟잇(Getit) 기술 기반
• 병렬(Parallel) 다운로드 in 10.2
• 전통ì ì¸ 오프ë¼ì¸ 설치
프로그램 ê³„ì† ì‚¬ìš© 가능(ISO
Image)
윈ë„ìš° 10
애플리케ì´ì…˜ 제작
윈ë„ìš° 10 스토어 지ì›
• ì´ë¯¸ 제작한 ë˜ëŠ” ì‹ ê·œ Win32/64 애플리케ì´ì…˜ì„
윈ë„ìš° 10 ìŠ¤í† ì–´ì— ë“±ë¡
• 마ì´í¬ë¡œì†Œí”„íŠ¸ì˜ ìœˆë„ìš° 10 Anniversary(1주년)
ì—…ë°ì´íŠ¸ ì¼í™˜ìœ¼ë¡œ 윈ë„ìš° 10 스토어 ë„ìž…
• ë°ìŠ¤í¬íƒ‘ 브릿지(ì¼ëª… Centennial Bridge) 기술ì„
사용해 Win32/Win64 애플리케ì´ì…˜ì„ Universal
Windows Platform 애플리케ì´ì…˜ìœ¼ë¡œ 패키지화
• IDE기반 윈ë„ìš° 스토어 ë°°í¬ ì§€ì›
• 윈ë„ìš° 10 스토어 미리보기 모드로 즉시 열림
VCL & FMX베를린 ì—…ë°ì´íŠ¸ 2 Anniversary ì—디션ì—ì„œ ì²˜ìŒ ì§€ì›
RAD 스튜디오: ë°ìŠ¤í¬íƒ‘ 브릿지를 지ì›í•˜ëŠ” 첫번째 IDE!
“윈ë„ìš° 10ì˜ ë°ìŠ¤í¬íƒ‘ 브릿지를 통해 마ì´í¬ë¡œì†Œí”„트 윈ë„ìš°
ë°ìŠ¤í¬íƒ‘ì— êµ¬ì¶• ëœ ì†Œí”„íŠ¸ì›¨ì–´ê°€ 최신 윈ë„ìš° 애플리케ì´ì…˜ 패키지
형ì‹ì„ 사용할 수 있게 해주는 ë„구를 제공합니다. ì´ë¥¼ 통해 보다
깨ë—í•œ 설치, 제거 ë° ì—…ë°ì´íŠ¸, 윈ë„ìš° 스토어 ë° ìœˆë„ìš° 스토어 for
비지니스를 통한 새로운 ë°°í¬ ê¸°íšŒë¥¼ ì–»ì„ ìˆ˜ 있으며 알림과 ê°™ì€
Universal Windows Platform 기능으로 소프트웨어를 í–¥ìƒì‹œí‚¬ 수
있습니다. 개발ìžëŠ” ì´ì œ RAD 스튜디오를 사용해 ë°ìŠ¤í¬íƒ‘ 브릿지를
사용하는 애플리케ì´ì…˜ì„ ì§ì ‘ 구축 í•  수 있게ë˜ì–´ 매우 기ì©ë‹ˆë‹¤.
RAD 스튜디오는 ë°ìŠ¤í¬íƒ‘ 브릿지를 지ì›í•˜ëŠ” ìµœì´ˆì˜ ê°œë°œìž IDEì´ë©°,
í° ìž¬ìž‘ì„± ì—†ì´ë„ 기존 ì‘ìš© í”„ë¡œê·¸ëž¨ì„ ë¹ ë¥´ê²Œ 마ì´ê·¸ë ˆì´ì…˜ í•  수
있습니다.â€
Kevin Gallo, 마ì´í¬ë¡œì†Œí”„트, 윈ë„ìš° ê°œë°œìž í”Œëž«í¼ ë¶€ì‚¬ìž¥
ë¸íŒŒì´ 리눅스 개발
리눅스 지ì›
• 리눅스 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 지ì›ì€ 엔터프ë¼ì´ì¦ˆì™€ 아키í…처
ì—디션
ë¸íŒŒì´ 리눅스 컴파ì¼ëŸ¬
• 64-비트 ì¸í…” 리눅스 대ìƒ
• LLVM 기술 기반
• ARC 사용
• 기본으로 ZBS 꺼ì§
• SDK 가져오기 위해 리눅스 박스 필요(PAServer 통해)
• 컴파ì¼ì„ 위한 ê²ƒì€ ì•„ë‹˜
• ë°°í¬ ë° ë””ë²„ê¹…ì„ ìœ„í•´ PAServer 사용
• ì§ì ‘ ë°°í¬í•  수 있으며 íŒŒì¼ ì‚¬ìš© ê¶Œí•œì„ ì¡°ì •í•´ì•¼ í•  수 있ìŒ
리눅스 개발환경 설정하기
RAD 스튜디오 리눅스 개발환경 설정하기 - http://tech.devgear.co.kr/430268
리눅스 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
리눅스 ë°ì´í„°ë² ì´ìŠ¤ 엑세스 기능
• 모든 리눅스 ì§€ì› DBMS ìš© FireDAC ë“œë¼ì´ë²„
• MySQL (and MariaDB), InterBase, FireBird, Oracle, MS SQL
Server
• Sybase ASA, DB2, MongoDB, PostgreSQL, SQLite, Teradata
• Informix만, 제외!
• 사용할 수 없는 ë“œë¼ì´ë²„: MS Access, DataSnap, DBX
리눅스 ì¸í„°ë„· í´ë¼ì´ì–¸íŠ¸ì™€ 서버 지ì›
• Indy í´ë¼ì´ì–´íŠ¸ì™€ 서버
•WebBroker + DataSnap + RAD Server modules (EMS)
• Apache 2.4 통합
• ë…립 실행형(Standalone) 서버
•í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬
• HTTP 그리고 REST í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬
• Cloud 그리고 BaaS í´ë¼ì´ì–¸íŠ¸
• SOAP í´ë¼ì´ì–¸íŠ¸
리눅스 기반 웹서비스 제작하기
ë¸íŒŒì´ë¡œ 리눅스 기반 웹서비스 제작하기(WebBroker ì´ìš©) - http://tech.devgear.co.kr/431630
• 콘솔 기반 WebBroker 프로ì íŠ¸
• 아파치 모듈 기반 WebBroker 프로ì íŠ¸
FireDAC으로
ë°ì´í„°ë² ì´ìŠ¤ 앱 만들기
FireDAC
• 높ì€-성능, ì†ì‰¬ìš´-사용, 기업용
ë°ì´í„°ë² ì´ìŠ¤ ì—°ê²°
• 범용 ë°ì´í„° 엑세스, 그러나 많ì€
ë°ì´í„°ë² ì´ìŠ¤ ì „ìš© 기능 사용 가능
• ë“œë¼ì´ë²„ í•„ìš” ì—†ìŒ, ì „ì²´ 소스코드
제공
•리눅스 지ì›
FireDAC 변경
•New - MariaDB 지ì›(v5.5ê³¼ ê·¸ ì´ìƒ)
• MySQL v5.7 지ì›
•Firebird 다ì´ë ‰íŠ¸ I/O 지ì›
• TFDMemTable – 런타임 ì‹œ 사용할 ë°ì´í„°ë¥¼
ë””ìžì¸ 타임 ë°ì´í„°ì…‹ ì—디터ì—ì„œ ìƒì„±
• TFDDataMove ì»´í¬ë„ŒíŠ¸ 제거. TFDBatchMove
대신 사용
DB RTL 변경
• 새로운 TFieldì˜ AsGUID ì†ì„±
• Blob 스트리ë°ìœ¼ë¡œ í´ë¼ì´ì–¸íŠ¸ 측 메모리 ì‚¬ìš©ì„ ì¤„ìž„
• VCL TDBImageì—ì„œ JPEGê³¼ PNG 그래픽 í¬ë§· ì§ì ‘ 지ì›
• DBGridì—ì„œ BlobField 표현하는 옵션사용 지ì›
새로운 ë¼ì´ë¸ŒëŸ¬ë¦¬ 기능
FMX 아키í…처 / 안드로ì´ë“œ 변경
• “Purgatoryâ€ ì‚­ì œë¨ (í¼ê³¼ 컨트롤들 ì§€ì—°ëœ íŒŒê´´)
• TPurgatory í´ëž˜ìŠ¤ ì‚­ì œ
• TFmxObject.Replaceì— ëŒ€í•œ 호출 (Purgatory 호출)ì´ ì˜ˆì „ì˜
TFmxObject.Freeë¡œ 대체ë˜ì—ˆìŠµë‹ˆë‹¤.
• 멀티스래딩 그래픽스: TBitmap, Tcanvas, TContext3D 지ì›
• 모든 í”Œëž«í¼ (특히 모바ì¼ì—ì„œ 중요)
• 안드로ì´ë“œì—ì„œ ë¸íŒŒì´ì™€ ìžë°” 스래드 통ì¼
• 안드로ì´ë“œ zOrder와 네ì´í‹°ë¸Œ 컨트롤 ì§€ì› ì¤€ë¹„ ìž‘ì—…
• 모든 코드가 ìžë°” UI 스래드ì—ì„œ ë™ìž‘
• CallInUIThread ì§€ì› ì¤‘ë‹¨, ë” ì´ìƒ 스레드 ë™ê¸°í™”ê°€ 필요하지 ì•ŠìŒ
새로운 „SystemStatusBar†파ì´ì–´ëª½í‚¤ ì†ì„±
RTL ë¼ì´ë¸ŒëŸ¬ë¦¬ 변경
• Azure와 AWSì˜ ì—…ë°ì´íŠ¸ ëœ API ì§€ì› ê°œì„ 
• HTTP í´ë¼ì´ì–¸íŠ¸ 비ë™ê¸° ì§€ì› í–¥ìƒ
• 파ì¼ê³¼ ìŠ¤íŠ¸ë¦¼ì— ëŒ€í•œ 새로운 MD5와 SHA1 함수 지ì›
• 스트림과 파ì¼ì— 대한 MD5와 SHA1 í•´ì‹œ ê³„ì‚°ì„ ìœ„í•´ System.Hash
지ì›
(예> THashMD5.GetHashBytesFromFile)
• 앱테ë”ë§ ë¡œê·¸ í•„í„°ë§ê³¼ ë©”ì¸ìŠ¤ëž˜ë“œì™€ ì›í• í•œ ë™ê¸°í™”를 위한
SynchronizeEvents ì†ì„±
• TTetheringManager와 TTetheringProfileê³¼ ë©”ì¸ ìŠ¤ëž˜ë“œì˜ ì»¨íŠ¸ë¡¤ê³¼ ì´ë²¤íŠ¸
ë™ê¸°í™”하기 위한 새로운 SynchronizeEvents ì†ì„±
모바ì¼ê³¼ 사물ì¸í„°ë„·ì„ 위한
확장성 ë†’ì€ REST API 제작
RAD 서버
• ë¸íŒŒì´ì™€ C++ë¹Œë” ì• í”Œë¦¬ì¼€ì´ì…˜ì„ 위한 완벽한 백엔드
• ë¸íŒŒì´ ë˜ëŠ” C++빌ë”ì˜ ì£¼ìš” RAD 서버 서비스
• REST API End-Point í¼ë¸”리싱
• 서버 메타ë°ì´í„° í¼ë¸”리싱(Swagger ì´ìš©)
• ëª¨ë°”ì¼ í‘¸ì‰¬ 알림
• 사용ìž/그룹 관리
• API 사용량 통계
• ì‚¬ìš©ìž ìœ„ì¹˜/근접 서비스(비콘 펜스)
• IoT 가장ìžë¦¬ 모듈(ThingPoints)
RSX
RAD 서버 아키í…처
EMS
DB
System Database EMS Server HTTP Clients
• Version
• API
• Users
• Groups
• Installations
• Push
• Edgemodules
• Resource A1
• Resource A2
í”ŒëŸ¬ê·¸ì¸ í˜•íƒœì˜
EMS
패키지(*.bpl)
• Resource B1
• …
RAD 서버 í–¥ìƒ
멀티-태넌트 지ì›
• í•˜ë‚˜ì˜ RAD 서버 ë°ì´í„°ë² ì´ìŠ¤ì— ì—°ê²°ëœ ë‹¨ì¼
RAD 서버 ì¸ìŠ¤í„´ìŠ¤ëŠ” ì´ì œ ì—¬ëŸ¬ê°œì˜ ë…립ì ì¸
테넌트를 지ì›í•©ë‹ˆë‹¤.
• ê° í…Œë„ŒíŠ¸ëŠ” 사용ìž, 그룹, 설치, ì—지모듈과 기타
ë°ì´í„°ë¥¼ í¬í•¨í•˜ëŠ” 고유한 RAD 서버 ìžì›
세트를 갖습니다.
• 테넌트 관리: 새 테넌트를 만들고, 기존 정보를
수정하고, 테넌트를 추가, 수정 ë˜ëŠ” 삭제합니다.
RAD Studio 10.2 ëÑ«¿„
마무리, Q&A
추가 정보
• www.devgear.co.kr
• 제품 ìƒì„¸ ì •ë³´
• tech.devgear.co.kr
• 새소ì‹
• 기술ìžë£Œ
• ê°œë°œìž Q&A
• devgear.co.kr/docwiki
• 최신 온ë¼ì¸ 기술문서(한글번역)
ê°ì‚¬í•©ë‹ˆë‹¤!
Questions and Answers

More Related Content

RAD Studio 10.2 ëÑ«¿„

  • 2. 발표순서 • RAD 스튜디오는? • IDE ìƒì‚°ì„± • 윈ë„ìš° 10 애플리케ì´ì…˜ 제작 • ë¸íŒŒì´ë¡œ 리눅스 개발 • FireDAC으로 ë°ì´í„°ë² ì´ìŠ¤ 앱 만들기 • 새로운 ë¼ì´ë¸ŒëŸ¬ë¦¬ 기능 • 모바ì¼ê³¼ 사물ì¸í„°ë„·ì„ 위한 확장성 ë†’ì€ REST API 제작 • 마무리, Q&A • 김현수(험프리) RAD 스튜디오 ì—반젤리스트 • hskim@embarcadero.kr • ë°ë¸Œê¸°ì–´ í…Œí¬ì‚¬ì´íŠ¸ : tech.devgear.co.kr/ • 블로그 : blog.hjf.pe.kr/
  • 4. RAD 스튜디오는? • 가장 빠르게 í¬ë¡œìŠ¤-í”Œëž«í¼ ë„¤ì´í‹°ë¸Œ ì•±ì„ ê°œë°œí•˜ëŠ” 방법 •유연한 í´ë¼ìš°ë“œ 서비스와 다양한 IoT ì—°ê²° 제공 PLATFORM INDEPENDENT CLOUD READY CROSS PLATFORM NATIVE
  • 5. RAD 스튜디오 í”Œëž«í¼ ì§€ì› â€¢ ë©”ì´ì € ìš´ì˜ì²´ì œë“¤ì˜ ìµœì‹ ë²„ì „ì„ í•˜ë‚˜ì˜ ì½”ë“œë² ì´ìŠ¤ë¡œ! • ê³µì‹ ì§€ì› â€¢ Windows 10 Anniversary Update • macOS Sierra • iOS 10 • Android N (Nougat) • Linux 64-bit (우분투와 레드햇 엔터프ë¼ì´ì¦ˆ)
  • 6. 빠르고, ì‹œê°ì ì¸ 개발 • RAD 스튜디오는 윈ë„ìš° 10ì„ ìœ„í•œ 강력한 VCL 컨트롤과 윈ë„ìš°, 맥, iOS, 안드로ì´ë“œë¥¼ 개발할 수 있는 FMX를 제공합니다.
  • 7. í´ë¼ìš°ë“œ 서비스  AWS, Azure ì§€ì› â€¢ 스토리지, í…Œì´ë¸”, 쿼리 엑세스  BaaS 프로바ì´ë” • Parse, Kinvey í¬í•¨  REST 그리고 HTTP í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬ • í”Œëž«í¼ ë¼ì´ë¸ŒëŸ¬ë¦¬ 기반으로 다ì´ë ‰íŠ¸ 엑세스, 네ì´í‹°ë¸Œ HTTPS ì§€ì› ï‚§ NoSQL ë°ì´í„°ë² ì´ìŠ¤ ì»´í¬ë„ŒíŠ¸ • MongoDB 완벽 지ì›
  • 8. 광범위한 사물ì¸í„°ë„· ì—°ê²°  사물ì¸í„°ë„·(IoT) 기능으로 ë°ìŠ¤í¬íƒ‘ê³¼ ëª¨ë°”ì¼ ì•± 확장 • 블루투스, 블루투스 LE, 그리고 WiFi • 바로 사용할 수 있는 IoT ì»´í¬ë„ŒíŠ¸ • 근접 ì¸ì‹, 비콘펜스 • 센서 ë°ì´í„° 수집 • ThingPoints를 사용한 분산 장치 모니터ë§
  • 9. C++ë¹Œë” ï‚§ C++11 문법 지ì›(윈ë„우와 모바ì¼) • CLANG-확장 컴파ì¼ëŸ¬, RAD ëª¨ë¸ ì§€ì› ï‚§ C++11: â€œê±°ì˜ ìƒˆë¡œìš´ 언어 ê°™ì€ ëŠë‚Œâ€ • Lambdas • Move semantics • Automatic type deduction • Native concurrency • Better Smart Pointers • Range-for
  • 10. ë¸íŒŒì´  í˜„ëŒ€ì‹ ì˜¤ë¸Œì íŠ¸ 파스칼 í”„ë¡œê·¸ëž˜ë° ì–¸ì–´ 기반 • 모든 플랫í¼ì„ 지ì›í•˜ëŠ” 고성능 네ì´í‹°ë¸Œ 컴파ì¼ëŸ¬ • 최고로 사용하기 쉽고, 완벽한, OOP, RAD 언어  ë¸íŒŒì´ 개발ìžë“¤ì˜ 대규모 커뮤니티 활용 • 모든 ì‚°ì—…ê³¼ 모든범위ì—ì„œ  대용량-메모리 지ì›, ë¸íŒŒì´ 스탠드-얼론 컴파ì¼ëŸ¬
  • 12. IDE 메뉴 개선 • ê°œì„ ëœ IDE 메뉴로 빠르게 필요한 ë©”ë‰´ì— ì ‘ê·¼ ë§‘ì€ ê³ ë”•
  • 13. 10.2ì—ì„œ ê°œì„ ëœ IDE ë‚´ìš©  ê°œì„ ëœ ë‚´ìš© • Code Insight 와 코드 ìžë™ì™„성 • 서로 다른 DPIì—ì„œ í¼ì„ ë””ìžì¸í•˜ê³  오픈하는 ê²ƒì— ëŒ€í•œ ì§€ì› â€¢ Show in Explorer – 프로ì íŠ¸ 매ì´ì €, File 탭 • IDE 로딩 ì†ë„ 개선 • 대형 프로ì íŠ¸ 그룹 ì§€ì› ê°œì„  • 프로ì íŠ¸ì˜ 매니페스트 íŒŒì¼ ì§€ì› ï‚§ 디버깅 • iOS와 macOS(ë¸íŒŒì´ 시뮬레ì´í„°ì™€ 디바ì´ìŠ¤)
  • 14. 퀵 ì—디트(Quick Edit)  가장 빠르게 í¼ ì–‘ì‹ì„ 설정하고, ì»¨íŠ¸ë¡¤ì„ ì¶”ê°€í•˜ê³  공통 ì†ì„±ì„ 편집하는 방법  네가지 새로운 ì˜ì—­: • 빠른 í¼ ì„¤ì • (툴바와 ìƒíƒœë°”ê°€ í¬í•¨ëœ í¼, 탭 기반 다ì´ì–¼ë¡œê·¸ 등) • ë§Žì´ ì‚¬ìš©ë˜ëŠ” 컨트롤과 ì»´í¬ë„ŒíŠ¸ 추가 • ì•„ì´ì½˜ ë° ì´ë¯¸ì§€ë¦¬ìŠ¤íŠ¸ 추가 • 캡션, ì •ë ¬, ìƒ‰ìƒ ë“±ê³¼ ê°™ì€ ì¼ë°˜ ì†ì„± 수정 등  VCL 지ì›; FMX ì§€ì› ê³„íš ì¤‘
  • 15. ê°œì„ ëœ ì„¤ì¹˜ 경험 • 최소 설치 + í”Œëž«í¼ â€¢ 초기 “최소 설치†기준으로 시스템 구축 • í”Œëž«í¼ ì¶”ê°€ 설치 • ë” ë§Žì€ í”Œëž«í¼ì„ 언제든지 추가 설치 가능 • 겟잇(Getit) 기술 기반 • 병렬(Parallel) 다운로드 in 10.2 • 전통ì ì¸ 오프ë¼ì¸ 설치 프로그램 ê³„ì† ì‚¬ìš© 가능(ISO Image)
  • 17. 윈ë„ìš° 10 스토어 ì§€ì› â€¢ ì´ë¯¸ 제작한 ë˜ëŠ” ì‹ ê·œ Win32/64 애플리케ì´ì…˜ì„ 윈ë„ìš° 10 ìŠ¤í† ì–´ì— ë“±ë¡ â€¢ 마ì´í¬ë¡œì†Œí”„íŠ¸ì˜ ìœˆë„ìš° 10 Anniversary(1주년) ì—…ë°ì´íŠ¸ ì¼í™˜ìœ¼ë¡œ 윈ë„ìš° 10 스토어 ë„ìž… • ë°ìŠ¤í¬íƒ‘ 브릿지(ì¼ëª… Centennial Bridge) ê¸°ìˆ ì„ ì‚¬ìš©í•´ Win32/Win64 애플리케ì´ì…˜ì„ Universal Windows Platform 애플리케ì´ì…˜ìœ¼ë¡œ 패키지화 • IDE기반 윈ë„ìš° 스토어 ë°°í¬ ì§€ì› â€¢ 윈ë„ìš° 10 스토어 미리보기 모드로 즉시 열림 VCL & FMX베를린 ì—…ë°ì´íŠ¸ 2 Anniversary ì—디션ì—ì„œ ì²˜ìŒ ì§€ì›
  • 18. RAD 스튜디오: ë°ìŠ¤í¬íƒ‘ 브릿지를 지ì›í•˜ëŠ” 첫번째 IDE! “윈ë„ìš° 10ì˜ ë°ìŠ¤í¬íƒ‘ 브릿지를 통해 마ì´í¬ë¡œì†Œí”„트 윈ë„ìš° ë°ìŠ¤í¬íƒ‘ì— êµ¬ì¶• ëœ ì†Œí”„íŠ¸ì›¨ì–´ê°€ 최신 윈ë„ìš° 애플리케ì´ì…˜ 패키지 형ì‹ì„ 사용할 수 있게 해주는 ë„구를 제공합니다. ì´ë¥¼ 통해 보다 깨ë—í•œ 설치, 제거 ë° ì—…ë°ì´íŠ¸, 윈ë„ìš° 스토어 ë° ìœˆë„ìš° 스토어 for 비지니스를 통한 새로운 ë°°í¬ ê¸°íšŒë¥¼ ì–»ì„ ìˆ˜ 있으며 알림과 ê°™ì€ Universal Windows Platform 기능으로 소프트웨어를 í–¥ìƒì‹œí‚¬ 수 있습니다. 개발ìžëŠ” ì´ì œ RAD 스튜디오를 사용해 ë°ìŠ¤í¬íƒ‘ 브릿지를 사용하는 애플리케ì´ì…˜ì„ ì§ì ‘ 구축 í•  수 있게ë˜ì–´ 매우 기ì©ë‹ˆë‹¤. RAD 스튜디오는 ë°ìŠ¤í¬íƒ‘ 브릿지를 지ì›í•˜ëŠ” ìµœì´ˆì˜ ê°œë°œìž IDEì´ë©°, í° ìž¬ìž‘ì„± ì—†ì´ë„ 기존 ì‘ìš© í”„ë¡œê·¸ëž¨ì„ ë¹ ë¥´ê²Œ 마ì´ê·¸ë ˆì´ì…˜ í•  수 있습니다.†Kevin Gallo, 마ì´í¬ë¡œì†Œí”„트, 윈ë„ìš° ê°œë°œìž í”Œëž«í¼ ë¶€ì‚¬ìž¥
  • 20. 리눅스 ì§€ì› â€¢ 리눅스 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 지ì›ì€ 엔터프ë¼ì´ì¦ˆì™€ 아키í…처 ì—디션
  • 21. ë¸íŒŒì´ 리눅스 컴파ì¼ëŸ¬ • 64-비트 ì¸í…” 리눅스 ëŒ€ìƒ â€¢ LLVM 기술 기반 • ARC 사용 • 기본으로 ZBS êº¼ì§ â€¢ SDK 가져오기 위해 리눅스 박스 í•„ìš”(PAServer 통해) • 컴파ì¼ì„ 위한 ê²ƒì€ ì•„ë‹˜ • ë°°í¬ ë° ë””ë²„ê¹…ì„ ìœ„í•´ PAServer 사용 • ì§ì ‘ ë°°í¬í•  수 있으며 íŒŒì¼ ì‚¬ìš© ê¶Œí•œì„ ì¡°ì •í•´ì•¼ í•  수 있ìŒ
  • 22. 리눅스 개발환경 설정하기 RAD 스튜디오 리눅스 개발환경 설정하기 - http://tech.devgear.co.kr/430268
  • 23. 리눅스 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
  • 24. 리눅스 ë°ì´í„°ë² ì´ìŠ¤ 엑세스 기능 • 모든 리눅스 ì§€ì› DBMS ìš© FireDAC ë“œë¼ì´ë²„ • MySQL (and MariaDB), InterBase, FireBird, Oracle, MS SQL Server • Sybase ASA, DB2, MongoDB, PostgreSQL, SQLite, Teradata • Informix만, 제외! • 사용할 수 없는 ë“œë¼ì´ë²„: MS Access, DataSnap, DBX
  • 25. 리눅스 ì¸í„°ë„· í´ë¼ì´ì–¸íŠ¸ì™€ 서버 ì§€ì› â€¢ Indy í´ë¼ì´ì–´íŠ¸ì™€ 서버 •WebBroker + DataSnap + RAD Server modules (EMS) • Apache 2.4 통합 • ë…립 실행형(Standalone) 서버 •í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬ • HTTP 그리고 REST í´ë¼ì´ì–¸íŠ¸ ë¼ì´ë¸ŒëŸ¬ë¦¬ • Cloud 그리고 BaaS í´ë¼ì´ì–¸íŠ¸ • SOAP í´ë¼ì´ì–¸íŠ¸
  • 26. 리눅스 기반 웹서비스 제작하기 ë¸íŒŒì´ë¡œ 리눅스 기반 웹서비스 제작하기(WebBroker ì´ìš©) - http://tech.devgear.co.kr/431630 • 콘솔 기반 WebBroker 프로ì íŠ¸ • 아파치 모듈 기반 WebBroker 프로ì íŠ¸
  • 28. FireDAC • 높ì€-성능, ì†ì‰¬ìš´-사용, 기업용 ë°ì´í„°ë² ì´ìŠ¤ ì—°ê²° • 범용 ë°ì´í„° 엑세스, 그러나 ë§Žì€ ë°ì´í„°ë² ì´ìŠ¤ ì „ìš© 기능 사용 가능 • ë“œë¼ì´ë²„ í•„ìš” ì—†ìŒ, ì „ì²´ 소스코드 제공 •리눅스 지ì›
  • 29. FireDAC 변경 •New - MariaDB 지ì›(v5.5ê³¼ ê·¸ ì´ìƒ) • MySQL v5.7 ì§€ì› â€¢Firebird 다ì´ë ‰íŠ¸ I/O ì§€ì› â€¢ TFDMemTable – 런타임 ì‹œ 사용할 ë°ì´í„°ë¥¼ ë””ìžì¸ 타임 ë°ì´í„°ì…‹ ì—디터ì—ì„œ ìƒì„± • TFDDataMove ì»´í¬ë„ŒíŠ¸ 제거. TFDBatchMove 대신 사용
  • 30. DB RTL 변경 • 새로운 TFieldì˜ AsGUID ì†ì„± • Blob 스트리ë°ìœ¼ë¡œ í´ë¼ì´ì–¸íŠ¸ 측 메모리 ì‚¬ìš©ì„ ì¤„ìž„ • VCL TDBImageì—ì„œ JPEGê³¼ PNG 그래픽 í¬ë§· ì§ì ‘ ì§€ì› â€¢ DBGridì—ì„œ BlobField 표현하는 옵션사용 지ì›
  • 32. FMX 아키í…처 / 안드로ì´ë“œ 변경 • “Purgatoryâ€ ì‚­ì œë¨ (í¼ê³¼ 컨트롤들 ì§€ì—°ëœ íŒŒê´´) • TPurgatory í´ëž˜ìŠ¤ ì‚­ì œ • TFmxObject.Replaceì— ëŒ€í•œ 호출 (Purgatory 호출)ì´ ì˜ˆì „ì˜ TFmxObject.Freeë¡œ 대체ë˜ì—ˆìŠµë‹ˆë‹¤. • 멀티스래딩 그래픽스: TBitmap, Tcanvas, TContext3D ì§€ì› â€¢ 모든 í”Œëž«í¼ (특히 모바ì¼ì—ì„œ 중요) • 안드로ì´ë“œì—ì„œ ë¸íŒŒì´ì™€ ìžë°” 스래드 í†µì¼ â€¢ 안드로ì´ë“œ zOrder와 네ì´í‹°ë¸Œ 컨트롤 ì§€ì› ì¤€ë¹„ ìž‘ì—… • 모든 코드가 ìžë°” UI 스래드ì—ì„œ ë™ìž‘ • CallInUIThread ì§€ì› ì¤‘ë‹¨, ë” ì´ìƒ 스레드 ë™ê¸°í™”ê°€ 필요하지 ì•ŠìŒ
  • 34. RTL ë¼ì´ë¸ŒëŸ¬ë¦¬ 변경 • Azure와 AWSì˜ ì—…ë°ì´íŠ¸ ëœ API ì§€ì› ê°œì„  • HTTP í´ë¼ì´ì–¸íŠ¸ 비ë™ê¸° ì§€ì› í–¥ìƒ â€¢ 파ì¼ê³¼ ìŠ¤íŠ¸ë¦¼ì— ëŒ€í•œ 새로운 MD5와 SHA1 함수 ì§€ì› â€¢ 스트림과 파ì¼ì— 대한 MD5와 SHA1 í•´ì‹œ ê³„ì‚°ì„ ìœ„í•´ System.Hash ì§€ì› (예> THashMD5.GetHashBytesFromFile) • 앱테ë”ë§ ë¡œê·¸ í•„í„°ë§ê³¼ ë©”ì¸ìŠ¤ëž˜ë“œì™€ ì›í• í•œ ë™ê¸°í™”를 위한 SynchronizeEvents ì†ì„± • TTetheringManager와 TTetheringProfileê³¼ ë©”ì¸ ìŠ¤ëž˜ë“œì˜ ì»¨íŠ¸ë¡¤ê³¼ ì´ë²¤íŠ¸ ë™ê¸°í™”하기 위한 새로운 SynchronizeEvents ì†ì„±
  • 36. RAD 서버 • ë¸íŒŒì´ì™€ C++ë¹Œë” ì• í”Œë¦¬ì¼€ì´ì…˜ì„ 위한 완벽한 백엔드 • ë¸íŒŒì´ ë˜ëŠ” C++빌ë”ì˜ ì£¼ìš” RAD 서버 서비스 • REST API End-Point í¼ë¸”리싱 • 서버 메타ë°ì´í„° í¼ë¸”리싱(Swagger ì´ìš©) • ëª¨ë°”ì¼ í‘¸ì‰¬ 알림 • 사용ìž/그룹 관리 • API 사용량 통계 • ì‚¬ìš©ìž ìœ„ì¹˜/근접 서비스(비콘 펜스) • IoT 가장ìžë¦¬ 모듈(ThingPoints) RSX
  • 37. RAD 서버 아키í…처 EMS DB System Database EMS Server HTTP Clients • Version • API • Users • Groups • Installations • Push • Edgemodules • Resource A1 • Resource A2 í”ŒëŸ¬ê·¸ì¸ í˜•íƒœì˜ EMS 패키지(*.bpl) • Resource B1 • …
  • 38. RAD 서버 í–¥ìƒ ë©€í‹°-태넌트 ì§€ì› â€¢ í•˜ë‚˜ì˜ RAD 서버 ë°ì´í„°ë² ì´ìŠ¤ì— ì—°ê²°ëœ ë‹¨ì¼ RAD 서버 ì¸ìŠ¤í„´ìŠ¤ëŠ” ì´ì œ ì—¬ëŸ¬ê°œì˜ ë…립ì ì¸ 테넌트를 지ì›í•©ë‹ˆë‹¤. • ê° í…Œë„ŒíŠ¸ëŠ” 사용ìž, 그룹, 설치, ì—지모듈과 기타 ë°ì´í„°ë¥¼ í¬í•¨í•˜ëŠ” 고유한 RAD 서버 ìžì› 세트를 갖습니다. • 테넌트 관리: 새 테넌트를 만들고, 기존 정보를 수정하고, 테넌트를 추가, 수정 ë˜ëŠ” 삭제합니다.
  • 41. 추가 ì •ë³´ • www.devgear.co.kr • 제품 ìƒì„¸ ì •ë³´ • tech.devgear.co.kr • ìƒˆì†Œì‹ â€¢ 기술ìžë£Œ • ê°œë°œìž Q&A • devgear.co.kr/docwiki • 최신 온ë¼ì¸ 기술문서(한글번역)