Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr

Recommended Posts

에 포스트됨

원문 정보 (최종 번역일: 2026년 9월 18일):

05_EMBT_-RAD-Studio-13.2_Now-Available_D

13.2 새 기능 한국어 더빙 비디오 링크: https://www.youtube.com/watch?v=3otvJYG21BQ

엠바카데로는 RAD Studio 13.2와 함께, Delphi 13.2 플로렌스(Florence), C++Builder 13.2 플로렌스(Florence)의 출시를 발표하게 되어 기쁘다. 이번 릴리스는, 컴파일러 기술과 성능, Linux와 Windows on Arm, 개발자 생산성, 현대적인 UI 개발, C++Builder, AI 통합, 제품 전반의 품질에 초점을 맞추고 있다.

이번 릴리스에는 담긴 내용이 상당히 많다. 여기서 모든 변경 사항을 하나하나 다루기보다는, 이번 릴리스의 핵심 향상들과 품질 향상의 주요 영역을 짚어보고자 한다. 개발자들이 가장 많이 체감할 부분을 중심으로 제시한다.

목차

새 Delphi LLVM 20 컴파일러가 Linux용으로 제공된다

13.2의 가장 큰 변화 중 하나는, Linux Intel 64비트용 새 Delphi LLVM 20 컴파일러와 도구체인이다.

전체 Linux64 도구체인이 LLVM 20으로 전환되었다. 여기에는 최신 링커와 더욱 풍부해진 디버그 정보가 포함된다. Linux 64비트용 컴파일러 자체는 32비트와 64비트 바이너리로 제공되므로, 32비트 IDE와 64비트 IDE 모두에서 사용할 수 있다.  즉, 64비트 IDE에서는 이제 Windows 64비트와 Windows on Arm뿐만 아니라 Linux64도 타겟 플랫폼으로 선택할 수 있다. 물론 기존 32비트 IDE에서도 Linux64 개발을 계속할 수 있다. 다만 대규모 Linux 프로젝트를 개발한다면 64비트 IDE를 사용하는 것이 유리하다.

이번 릴리스가 특히 중요한 영향을 주는 경우를 꼽자면, 만약, Delphi로 Linux 서비스, 미들웨어, 데이터베이스 애플리케이션, 또는 기타 서버 쪽 개발을 하고 있는 경우이다. 물론 FMXLinux 애플리케이션도 이 새 컴파일러의 혜택을 함께 누릴 수 있다.

64비트 IDE에서 Linux 타겟 추가

(64비트 IDE에서, Linux 타겟 추가하기)

C++Builder Win64x는 계속 발전한다

C++Builder 개발자를 위한 중요한 작업도 함께 이루어졌다.

이제 현대적인 Win64x C++ 컴파일러는 이제  IDE 안에서 직접 실행되는 인프로세스(in-process) 컴파일러이다. 이를 통해 IDE는 정확한 파일과 줄 진행 상황을 얻을 수 있다. 구조화된 진단 정보를 통해 소스로 다시 이동할 수 있다. 빌드 취소가 신속하게 반응한다. 병렬 컴파일을 지원한다. 그러면서도 전체 빌드 과정을 IDE 안에서 통합적으로 관리할 수 있다.

우리는 또한, 패키지-기반 C++ 개발도 계속 향상시켰다. 디자인 타임 패키지, Delphi 유닛을 포함하는 패키지, 의존성, 리소스, 프로젝트 전반에 걸친 패키지 사용 등이 여기에 포함된다.

불필요한 재빌드도 줄었다. 또한, Windows Arm64EC와 Linux Intel 64비트용 Delphi에는 메모리 할당이 많은 애플리케이션을 위한 선택 사항으로 rpmalloc 메모리 매니저가 추가됐다.

64비트 IDE에서의 인프로세스 C++ 컴파일

64비트 IDE에서, 인-프로세스(In-Process) C++ 컴파일

훨씬 더 빠른 컴파일, 그리고 더 빠른 애플리케이션

우리는, Linux Intel 64비트와 Windows Arm64EC 양쪽 모두를 위해 LLVM 기반 Delphi 컴파일러들의 성능에 중요한 작업을 진행했다.

이제 이 LLVM 기반 컴파일러들은 여러 유닛의 코드를 여러 CPU 코어에서 병렬로 생성할 수 있다. 이는 대규모 프로젝트와 Release 빌드에서 특히 큰 차이를 만든다. 우리의 내부 테스트에서는 일부 대표적인 FireMonkey 프로젝트의 Release 빌드에서 컴파일 시간이 최대 14배까지 단축되는 결과가 확인됐다.

우리는 또한, 컴파일러 최적화에서도 새로운 세대를 실현했다. 우리의 내부 테스트에서는 코드에 따라 Release 애플리케이션의 실행 시간이 약 2~4배 단축되었다. 일부 테스트에서는 약 7배의 향상이 측정됐다.

또한, Windows Arm64EC에는 FastMM4 기반 메모리 매니저가 새 기본 메모리 매니저로 제공된다. 여기에 더해, 새 메모리 매니저 선택 사항으로 고성능 rpmalloc 메모리 매니저가 제공된다. 따라서 메모리 할당이 많거나 멀티스레드 작업이 많은 애플리케이션에서 다른 메모리 관리 전략을 선택할 수 있다.

다시 말해, 13.2는 단순히 최신 플랫폼을 지원하는 것에 그치지 않는다. 그 플랫폼들에서 Delphi를 현격하게 더 빨라지도록 하는 데도많은 노력을 기울였다.

컴파일 성능 비교

 Navigator는 이제 RAD Studio 안의 한 부분이 되었다

지난 RAD Studio 13.1에서 Bookmarks를 통합한 데 이어, 이번 13.2에서는 다음 단계로 넘어갔다. 그래서, Navigator를 IDE 안에 직접 통합했다.

Navigator의 Goto 대화상자는, 매우 빠르게, 그리고 실시간으로, 유닛, 타입, 메서드, 기타 심벌에 접근할 수 있도록 한다. 특히 유용한 경우를 꼽자면, 대규모 코드 기반에서 작업하면서 찾고 있는 것이 무엇인지는 어렴풋이 알고 있지만 파일을 뒤지는 데 시간을 쓰고 싶지 않을 때이다.

에디터 미니맵도 향상되었다. 그래서 현재 소스 파일의 구조, 활성 줄, 중단점, 오류 주석을 보여준다.

이것은, 설명하기가 꽤 간단한 기능이다. 하지만, 대규모 애플리케이션을 탐색하며 하루를 보내는 경우라면, 놀라울 만큼 큰 차이를 만들어낸다.

Navigator 플러그인의 미니맵

Navigator 플러그인의 미니맵, 이제 IDE에 통합되었다

새 VCL 내비게이션 컨트롤들

Windows 개발자를 위해, 13.2는 두 가지 새로운 VCL 컨트롤을 추가했다. TTabView 그리고 TNavigationView다.

TTabView는 현대적인 탭 UI를 제공한다. 이미지, 여러 줄 캡션, 닫기 버튼, 탭 추가 버튼, 스크롤 기능, 열려 있는 탭을 선택할 수 있는 메뉴 등을 제공한다. 각 탭은 폼이나 다른 컨트롤과 연결할 수 있기 때문에 특정 콘텐츠 컨테이너를 강제로 사용하지 않아도 된다. 그래서 문서 방식 애플리케이션, 대시보드, 개발 도구, 기타 멀티뷰 인터페이스와 잘 맞는다.

TNavigationView는 현대적인 세로형 내비게이션 UI를 제공한다. 일반 모드와 컴팩트 모드, 이미지, 여러 줄 텍스트, 스크롤, 드래그 앤 드롭 순서 변경, 다양한 사용자 지정 기능 등이 포함된다.

이 두 컨트롤은, 더 현대적인 Windows 인터페이스를 더 쉽게 만들 수 있도록 설계되었다. VCL 프로그래밍 모델 안에 완전히 그대로 있으면서 구현할 수 있다.

다크 모드의 TNavigationView 컨트롤

다크 모드의 TNavigationView 컨트롤

더 강력해진 FireMonkey Style Designer

13.1에서 소개했던 FireMonkey Style Designer가, 13.2에서 대대적으로 업데이트되었다.

이제 이 디자이너를 IDE에서 직접 실행할 수 있다. 또한 Bitmap Style Designer의 기존 VCL Style Format 파일을 가지고 시작할 수도 있다. 또한, 검색·분석 도구들이 추가되었다. 그래서 사용하지 않는 리소스, 깨진 참조, 중복된 이름, 기타 잠재적 문제를 찾아낼 수 있다.

디자인 측면에서는, 새로운 그라디언트 리소스, Circle과 Ellipse 벡터 요소, 래스터화, 글로우 효과, 한 요소에 여러 효과 적용 지원, 더 완전해진 텍스트 레이아웃 옵션 등이 들어갔다.

목표는, 정교한 FireMonkey 스타일 만들기와 유지보수를 훨씬 더 쉽게 할 수 있도록 만드는 것이다. 특히 스타일이 크고 복잡해질 때 그렇다. FireMonkey Style Designer는 개발자가 직접 사용할 수도 있지만, 그래픽 디자이너가 스타일 작업을 담당할 수 있도록 설계된 도구이기도 하다. 사용자 경험은 널리 사용되는 디자인 도구와 유사한 방향으로 구성됐다.

FireMonkey Style Designer에서 스타일 분석

FireMonkey Style Designer에서 스타일 분석하기

런타임 패키지가 Windows on Arm에서 지원된다

Windows on Arm 작업 중 또 하나의 중요한 조각이, 13.2에서 완성되었다. Windows Arm64EC용 Delphi 런타임 패키지다.

이제 Windows on Arm에서 동적 런타임 패키지를 만들 수 있다. 또한 사용할 수도 있다. 이는, Delphi의 패키지 아키텍처를 사용하는 애플리케이션을 Windows on Arm 이전할 수 있으며, 그 아키텍처를 포기하거나 모듈화 방식을 다시 설계할 필요 없다는 뜻이다.

이미 대규모 Delphi 애플리케이션을 가지고 있는 개발자들에게 이것은, Windows on Arm을 타겟으로 삼는 것을 방해하던 또 하나의 중요한 장벽을 없애준다.

AI 컴포넌트들 그리고 MCP 개발

또한, RAD Studio 개발자가 사용할 수 있는 AI 컴포넌트들에 들인 작업도 상당히 많았다.

SmartCore AI Components Pack도 대폭 리팩토링되었다. Delphi와 C++Builder 에서 사용할 수 있으며 GetIt(겟잇)을 통해 제공된다. OpenAI, Anthropic Claude, Google Gemini, Ollama의 API와 기능에 대한 접근의 폭이 훨씬 더 넓어졌다. 그러면서도, 기존과 변함없이 "특정 AI 제공업체에 종속되지 않는" 아키텍처를 그대로 유지한다. 이 기능은 앞으로 며칠 안에 GetIt을 통해 사용할 수 있게 된다.

이를 통해 여러분은 빌딩 블록을 얻을 수 있다. 여기에는 대화형 애플리케이션, 콘텐츠와 이미지 생성, 구조화된 응답, 데이터 분석, 애플리케이션 전용 어시스턴트, 기타 AI 기반 기능들 등이 포함된다. 각 AI 제공업체의 API 연동 코드를 애플리케이션에서 일일이 직접 구현하지 않아도 된다.

RAD Studio 13.2에는 Delphi와 C++Builder용 추가 GetIt 다운로드로 MCPConnect도 포함되어 있다.

MCPConnect는, Model Context Protocol(MCP) 서버 만들기 그리고 기존 애플리케이션의 기능, 비즈니스 로직, 데이터, 프롬프트를 AI 클라이언트와 에이전트에 노출하기 등의 일을 훨씬 더 쉽게 할 수 있도록한다. MCP 프로토콜 구현에 필요한 상당 부분을 대신 처리해 준다. 즉, 라우팅, 직렬화, 스키마 생성, 세션, HTTP와 표준 I/O 통신 등을 처리한다. 그래서 여러분은, 애플리케이션이 실제로 제공하는 것들에만 집중할 수 있다.

MCPConnect GetIt 패키지 아이콘

MCPConnect 겟잇 패키지 아이콘

기타 대규모 품질 향상

13.2와 같은 릴리스의 향상은, 눈에 띄는 새 기능들만이 전부가 아니다. IDE, 디버거, 컴파일러, 프레임워크, 데이터베이스, 플랫폼 전반에 걸친, 더 작지만 종종 눈에 띄게 체감되는 수많은 문제들도 계속 해소해 왔다.

IDE에는, 중괄호와 괄호 매칭, Linux 방식 줄바꿈, High DPI 폼 상속, C++ 구문 강조 표시, 모듈 다시 불러오기, Object Inspector, IDE Insight 등 여러 향상들이 들어 있다.

LLDB 기반 디버거는 최신 C++ 데이터 구조를 비롯해 Delphi의 Variant, 배열, 프로퍼티를 검사하는 기능을 강화했다. 또한 심볼 처리 속도를 높이고 디버거 오버헤드를 줄였다.

새롭게 강화된 LLVM 기반 플랫폼을 위한 다양한 수정 사항도 반영되었다. Linux 공유 라이브러리와 DataSnap 배포, Windows Arm64EC의 링킹, 디버깅, 예외 처리, 부동소수점, 제네릭, 임포트된 함수, 리소스, 정적 라이브러리 상호운용성 등이 여기에 포함된다.

FireMonkey, Skia, Android, 데이터베이스, 웹

프레임워크와 플랫폼 전반에도 업데이트가 있었다.

Skia4Delphi는 버전 7.3으로 업데이트되며, 다양한 수정 사항과 Linux 호환성 확대, Windows 7 런타임 지원, 렌더링 성능 향상 등이 포함된다. 또한, Windows에서 FireMonkey 애니메이션의 반응성도 개선했다. Per-Monitor v2 High DPI를 위한 스타일 뷰어 도구도 향상시켰다.

Android에서는, 기본 최소 지원 SDK가 이제는 API 레벨 24다. 이에 맞는 설치 관리자와 NDK 업데이트도 함께 진행되었다. 우리는 Google AdMob과 Google Maps 라이브러리도 새로 고쳤다. Android의 Age Verification API(연령 확인 API) 및 관련 애플리케이션 entitlement에 대한 저수준 접근도 추가했다. 이 Age Verification API는 iOS에서도 사용할 수 있다.

FireDAC은, PostgreSQL 18.4 지원, 구성 가능한 Oracle CLOB 프리페칭, Informix ODBC 드라이버를 통한 Linux에서의 IBM Informix 연결 등이 추가되었다.

웹과 인터넷 개발을 위해서, 우리는 PKCE를 사용한 OAuth 2 Authorization Code Flow를 추가했다. 소켓 타임아웃 처리, HTTP 인증서 정보, REST Debugger URL 검증, 웹 파일 디스패칭에 대한 향상도 함께 이루어졌다.

WebStencils(웹스텐실즈)는 이제 데이터셋 필드 정보에 대한 명시적 접근을 제공한다. 한편 RAD Server Management Console에는, 사용자·그룹 열을 정렬할 수 있고 High DPI 지원이 향상되었다.

RAD Studio 13.2 플로렌스 요약

RAD Studio 13.2에는, 훨씬 더 많은 내용이 담겨 있다. 그래서 이 발표 글 하나에서 다룰 수 있는 수준이 아니다. 하지만 이 글을 통해, 이번 릴리스의 전체적인 방향은 분명히 파악할 수 있을 것이라고 생각한다.

우리는 차세대 Delphi 컴파일러에 크게 투자했다. 이번 버전은 특히 Linux와 Windows on Arm에 집중했다, 이와 동시에 그 컴파일러들을 훨씬 더 빠르게 만들었다. 또한 우리는, 일상적인 IDE 경험, 현대적인 Windows UI 개발, FireMonkey 스타일링, C++Builder, 데이터베이스와 웹 개발, 개발자가 자신의 애플리케이션을 빠르게 진화하는 AI 생태계에 연결하는 데 필요한 도구들도 계속 향상시켰다.

RAD Studio 13.2 플로렌스 스플래시 화면

RAD Studio 13.2 플로렌스, 오늘 출시

더 많은 정보는 다음에서 확인할 수 있다:

우리는 앞으로 며칠 안에 Quality Portal 항목들도 이 결과물과 동기화 할 예정이다.

우리는, 여러분이 RAD Studio, C++Builder, Delphi를 가지고 진행하는 일상적인 개발에서 이번 릴리스가 가치 있다고 느낄 것이라 확신한다.

RAD Studio 13 플로렌스(Florence) Update 2를 통해, 개발 경험을 한 단계 끌어올려 보자.

  • 어드민 pinned and featured this 토픽(기고/질문)
  • 어드민 unpinned and pinned this 토픽(기고/질문)
  • 어드민 unpinned this 토픽(기고/질문)

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 토픽(기고/질문)에 답하기

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.