Skip to content

필사 모드: 모던 Pascal & Delphi 2026 완벽 가이드 - RAD Studio 12 · FreePascal 3.2 · Lazarus 3 · Castle Game Engine · Oxygene · pas2js 심층 분석

한국어
0%
정확도 0%
💡 왼쪽 원문을 읽으면서 오른쪽에 따라 써보세요. Tab 키로 힌트를 받을 수 있습니다.
원문 렌더가 준비되기 전까지 텍스트 가이드로 표시합니다.

프롤로그 — 2026년에 누가 Pascal을 쓰는가

"Pascal? 그거 학교에서 배우던 거 아닌가?"

2026년 5월에도 여전히 같은 질문을 받는다. 그러나 답은 30년 전과 정반대다. **Pascal은 살아있다. 그것도 아주 잘.**

- **은행 코어뱅킹** — 독일 Sparkasse, 폴란드 PKO BP, 러시아 Sberbank의 일부 코어가 Delphi로 짜였고 2026년에도 유지보수가 활발하다.

- **보험사 핵심계** — 한국 삼성생명·한화생명의 일부 시스템, 일본 노무라·미츠비시UFJ의 백오피스가 Delphi로 굴러간다.

- **제조 SCADA·MES** — 독일 Siemens·Festo·Bosch의 공장 모니터링 화면 상당수가 여전히 Delphi다.

- **정부 ERP** — 동유럽·러시아 정부 시스템, 한국 지방자치단체 일부 시스템.

- **게임 엔진** — Michalis Kamburelis의 **Castle Game Engine**은 Object Pascal로 짠 오픈소스 3D 엔진이다.

- **학교** — 폴란드·러시아·우크라이나·체코의 대학과 고등학교에서 여전히 Pascal로 알고리즘을 가르친다.

그리고 2025년 11월, Embarcadero는 **RAD Studio 12 Athens**를 출시했다. Delphi 12, C++Builder 12를 한 IDE로 묶고, AI Code Insight, Skia 통합, FireMonkey FMX 리프레시, macOS Tahoe·iOS 19 타겟팅을 더했다. 같은 11월에 FreePascal 팀은 **3.2.4** 패치 릴리즈와 **3.3.x trunk**를 안정화했고, Lazarus 3.10이 함께 나왔다.

이 글은 2026년의 Pascal 생태계를 한 호흡으로 정리한다. RAD Studio 12부터 FPC·Lazarus·Castle Game Engine·Oxygene·TMS WEB Core/pas2js까지, 그리고 "왜 사람들이 아직도 Pascal을 쓰는가"에 대한 솔직한 답까지.

1장 · Pascal의 짧은 역사 — 1970에서 2026까지

먼저 한 가지를 정리하자. 2026년의 Pascal은 1985년의 Turbo Pascal과 같은 언어가 아니다.

- **1970** — Niklaus Wirth, 스위스 ETH Zurich에서 Pascal 설계. 교육용 언어.

- **1983** — Borland Turbo Pascal 1.0. IBM PC에서 컴파일러가 49달러. 폭발적 인기.

- **1995** — Borland Delphi 1. Object Pascal + RAD GUI. Windows 개발의 표준이 됨.

- **1999** — Free Pascal Compiler(FPC) 1.0. 오픈소스 Pascal 컴파일러.

- **2008** — Embarcadero, Borland로부터 Delphi 인수.

- **2011** — Delphi XE2, FireMonkey FMX 발표. 크로스플랫폼(Mac·iOS) 지원.

- **2017** — Castle Game Engine 6.0. 본격적 3D 엔진.

- **2023** — RAD Studio 11 Alexandria.

- **2024** — RAD Studio 12 Athens 초기 릴리즈.

- **2025 11월** — RAD Studio 12.3 업데이트, FPC 3.2.4, Lazarus 3.10.

- **2026 4월** — FPC 3.3.x trunk가 ARM64 macOS Tahoe·iOS 19 풀 지원, Linux RISC-V 베타.

요점은 이렇다. **Pascal은 1995년의 Delphi에서 멈추지 않았다.** 제네릭(2009년 Delphi 2009), 익명 메소드(2009), 어트리뷰트(2010), 인라인 변수 선언(Delphi 10.3), 매니지드 레코드(Delphi 10.4) — 현대 언어가 가진 거의 모든 것을 Object Pascal도 가지고 있다.

2장 · Embarcadero RAD Studio 12 Athens — 본가의 현재

RAD Studio는 Delphi와 C++Builder를 묶은 통합 IDE다. 2025년 11월의 **12.3 업데이트** 기준 핵심 기능:

- **언어** — Delphi(Object Pascal) 12, C++Builder 12(Clang 17 기반)

- **UI 프레임워크** — VCL(Windows 네이티브), FireMonkey FMX(크로스플랫폼)

- **타겟 플랫폼** — Windows 11 24H2, macOS Tahoe(arm64/x86_64), iOS 19, Android 16, Linux(x86_64/arm64)

- **AI Code Insight** — 2026년 1월 12.3 업데이트에서 OpenAI·Azure OpenAI·로컬 Ollama 연동, 코드 자동 완성과 리팩토링 제안

- **Skia 통합** — Skia4Delphi가 FMX와 VCL의 기본 그래픽 백엔드로 채택. 텍스트 렌더링·SVG·애니메이션이 한 단계 올라감

- **새 컴포넌트** — `TSkLabel`, `TSkAnimatedImage`, `TSkSVG`, `TMultiView` 리프레시

- **DocInsight** — 함수 도큐멘트 자동 추출과 인라인 표시

**가격**(2026년 5월 기준):

| 에디션 | 영구 라이선스 | 연간 구독 |

|---|---|---|

| Community(개인·매출 5000달러 미만) | 무료 | 무료 |

| Professional | 약 1899달러 | 약 829달러/년 |

| Enterprise | 약 3499달러 | 약 1599달러/년 |

| Architect | 약 5499달러 | 약 2499달러/년 |

**솔직한 평가**:

장점 — VCL은 여전히 Windows GUI에서 가장 성숙한 프레임워크다. 컴파일은 초고속(중대형 프로젝트도 수십 초). 단일 실행 파일(EXE) 배포. 메모리·리소스 결정적 관리.

단점 — 라이선스 가격이 개인 취미 개발자에겐 부담. Mac/Linux/iOS 지원은 가능하지만 Windows만큼 매끄럽지 않다. 모바일 UI는 Flutter·React Native에 비해 다소 투박.

3장 · FreePascal 3.2 / 3.3 — 무료 오픈소스 컴파일러

Free Pascal Compiler(FPC)는 1993년 시작된 오픈소스 Pascal 컴파일러다. 2026년 5월 기준 안정 버전은 **3.2.4**, trunk는 **3.3.x**.

**지원 플랫폼**(2026년 시점):

- **OS** — Windows(x86/x86_64/arm64), Linux(x86/x86_64/arm32/arm64/RISC-V64), macOS(x86_64/arm64), FreeBSD, OpenBSD, NetBSD, Solaris, Haiku, AIX, OS/2, DOS

- **아키텍처** — x86, x86_64, ARM(32/64), MIPS, PowerPC, SPARC, RISC-V32/64, AVR, WebAssembly, JVM

- **모바일** — iOS, Android, Tizen, Sailfish OS

이 호환성 매트릭스는 GCC·LLVM에 거의 필적한다. 그리고 컴파일 속도는 모든 컴파일러 중 단연 최상위권 — 100만 라인 프로젝트가 분이 아닌 초 단위로 컴파일된다.

**Delphi 호환성** — FPC는 `{$mode Delphi}` 디렉티브로 Delphi 7~XE 수준 코드를 거의 그대로 컴파일한다. Delphi 12의 신규 기능(매니지드 레코드 일부 등)은 아직 미지원이지만, 90% 이상의 Delphi 코드는 FPC에서도 컴파일된다.

**Object Pascal 모드** — `{$mode ObjFPC}`는 FPC 고유 모드로, 일부 문법이 더 엄격하지만 더 모던하다. 메소드 호출 시 `Self` 명시, 메소드 포인터에 `@` 필요 등.

4장 · Lazarus 3.x — Free Pascal의 RAD IDE

FPC가 컴파일러라면, Lazarus는 그 위의 IDE + RAD 라이브러리다. 2025년 11월의 **Lazarus 3.10** 기준:

- **LCL(Lazarus Component Library)** — VCL과 매우 유사한 컴포넌트 API. `TForm`, `TButton`, `TEdit`, `TStringGrid`, `TPageControl` 등이 거의 같다.

- **위젯셋** — 한 코드로 Win32, GTK2/3, Qt5/6, Cocoa, Carbon, CustomDrawn으로 배포

- **폼 디자이너** — Delphi와 거의 같은 드래그앤드롭 UI 설계

- **디버거** — GDB·LLDB·FpDebug(순수 Pascal 디버거) 선택

- **리팩토링** — 메소드 추출, 변수 이름 변경, 클래스 완성

**Lazarus가 매력적인 이유**:

1. **완전 무료** — GPL/LGPL 라이선스, 상업적 사용 가능

2. **단일 코드베이스로 Win/Mac/Linux/BSD** — VCL과 거의 같은 API

3. **레거시 Delphi 코드 마이그레이션** — 보통 80~95%가 그대로 컴파일됨

4. **빠른 컴파일과 작은 실행 파일** — 외부 런타임 의존성 없음

**약점**:

- 모바일 지원은 부족(가능하지만 매끄럽지 않음)

- UI 디자인이 1990년대식 — 모던 머터리얼/플랫 디자인은 직접 그려야 함

- 마이크로소프트 SQL Server·Oracle 등 일부 DB 드라이버는 별도 컴포넌트 필요

5장 · Object Pascal 언어 — 2026년의 실체

"Pascal은 옛날 언어"라는 오해는 1990년대에 멈춘 사람의 인상이다. 2026년 Object Pascal에는 다음이 모두 있다:

- **클래스·인터페이스** — `class`, `interface`, 다중 인터페이스 구현

- **제네릭** — `TList<T>`, `TDictionary<K, V>`, 제약 조건(`class`, `constructor`)

- **익명 메소드** — `procedure of object` + `reference to procedure`(클로저)

- **어트리뷰트** — `[Inject]`, `[Route('/api/v1/users')]`

- **인라인 변수** — `for var i := 0 to 9 do`

- **매니지드 레코드** — `Initialize`, `Finalize`, `AssignOperator` 자동 호출

- **연산자 오버로딩** — 레코드와 클래스 모두

- **RTTI** — 런타임에 타입 정보 조회·변경

- **async/await** — Delphi 12 Athens에서 정식 지원

다음은 모던 Object Pascal 한 조각이다. 인라인 변수, 매니지드 레코드, 제네릭 메소드가 모두 들어 있다.

program ModernPascalDemo;

{$mode Delphi}{$H+}

uses

System.SysUtils, System.Generics.Collections;

type

TUser = record

Id: Integer;

Name: string;

class operator Initialize(out U: TUser);

class operator Finalize(var U: TUser);

end;

class operator TUser.Initialize(out U: TUser);

begin

U.Id := 0;

U.Name := '';

end;

class operator TUser.Finalize(var U: TUser);

begin

WriteLn('User ', U.Name, ' is gone');

end;

function FindByName<T>(const Items: TArray<T>; const Pred: TFunc<T, Boolean>): T;

begin

for var Item in Items do

if Pred(Item) then Exit(Item);

Result := Default(T);

end;

var

Users: TArray<TUser>;

begin

SetLength(Users, 2);

Users[0].Id := 1; Users[0].Name := 'Alice';

Users[1].Id := 2; Users[1].Name := 'Bob';

var Found := FindByName<TUser>(Users,

function(U: TUser): Boolean begin Result := U.Name = 'Bob'; end);

WriteLn('Found: ', Found.Name);

end.

이게 "옛날 언어"라고? 한 번 읽고 다시 판단해 보라.

6장 · Modern Object Pascal Introduction — Michalis Kamburelis의 공개 책

Michalis Kamburelis는 **Castle Game Engine**의 메인테이너이자 Object Pascal 커뮤니티의 핵심 인물이다. 그가 쓴 **"Modern Object Pascal Introduction for Programmers"**(약 80페이지)는 다른 언어 경험자가 Pascal로 넘어올 때의 최단 경로다.

내용 구성:

1. **타입 시스템** — `Integer`, `string`, `array`, `record`, `class`, `interface`

2. **메모리 관리** — `New`/`Dispose`, ARC, 매니지드 타입

3. **객체지향** — `class`, 가시성, 상속, 인터페이스, 가상/오버라이드

4. **제네릭** — `TList<T>`와 직접 만들기

5. **제어 흐름** — 익명 메소드, for-in 루프, `with` 문(권장하지 않음)

6. **모듈** — `unit`·`uses`·`interface`/`implementation` 절

7. **빌드 시스템** — fpmake, lazbuild, Delphi MSBuild

이 책은 무료고, Castle Game Engine 사이트에서 한 파일로 받을 수 있다. Pascal을 처음 보는 사람에게도, Delphi 7에서 멈춘 사람에게도 똑같이 유익하다.

7장 · Castle Game Engine — Object Pascal로 짠 3D 엔진

Castle Game Engine은 2001년 시작된 오픈소스 3D 엔진이다. 2025년 12월 기준 안정 버전 **7.0-alpha.3**. 2026년 5월 시점에서 **7.0 정식**이 임박했다.

**핵심 특징**:

- **언어** — Object Pascal(FPC + Lazarus, Delphi 11/12도 지원)

- **렌더링** — OpenGL ES 3, Vulkan(2026 베타), WebGL(via pas2js, 실험)

- **씬 포맷** — glTF 2.0, X3D, Spine 2D, MD3, OBJ, Collada, STL

- **물리** — Kraft(순수 Pascal 3D 물리) + Box2D 통합

- **사운드** — OpenAL Soft

- **VR** — OpenXR 지원 — Meta Quest 3/3S에서 동작

- **빌드 타겟** — Windows, Linux, macOS, FreeBSD, Android, iOS, Nintendo Switch(상용 라이선스)

**왜 Castle Game Engine을 고르는가**:

1. **컴파일이 폭발적으로 빠르다** — Unity는 분 단위, Unreal은 더 길다. Castle은 초 단위.

2. **단일 실행 파일** — 외부 런타임 없음

3. **메모리 결정성** — GC 일시정지 없음

4. **무료·오픈소스** — Apache 2.0

5. **2D·3D 모두** — Spine·Tiled·Cocos2d 자산 직접 import

**약점** — 사용자 커뮤니티가 작다(Unity/Unreal에 비해), 비주얼 에디터가 발전 중, Unreal Blueprint 같은 시각적 스크립트 부재.

8장 · TMS Software — Delphi 컴포넌트 전문 벤더

TMS Software는 벨기에 기반의 Delphi/C++Builder 컴포넌트 벤더다. 2026년 5월 시점 핵심 제품:

- **TMS FNC UI Pack** — VCL/FMX/LCL/Web 단일 코드 UI(Framework Neutral Components)

- **TMS WEB Core** — Pascal을 JavaScript로 컴파일하는 웹 프레임워크(다음 장)

- **TMS XData** — REST API 서버 프레임워크

- **TMS Aurelius** — ORM(Hibernate 스타일)

- **TMS Sparkle** — HTTP/WebSocket 클라이언트

- **TMS Echo** — DB 동기화·복제

**TMS All-Access 구독** — 모든 TMS 제품을 묶어서 연간 약 1500유로(2026년 5월 기준). 중견 Delphi 샵에서 가장 흔하게 사는 패키지다.

9장 · DevExpress VCL — Windows 엔터프라이즈 UI의 표준

DevExpress는 미국 기반(원래 우크라이나 출신) UI 컴포넌트 벤더로, .NET·JS·Delphi 시장에서 모두 강자다. Delphi 쪽 핵심:

- **ExpressQuantumGrid** — VCL 그리드의 사실상 표준

- **ExpressBars** — 리본 UI, 도크 패널

- **ExpressEditors** — 입력 컴포넌트 묶음

- **ExpressPivotGrid** — 피벗 테이블

- **ExpressScheduler** — 캘린더·스케줄러

가격은 영구 라이선스 약 1500달러부터. 한국 금융·정부 Delphi 프로젝트의 절반 이상이 DevExpress VCL을 쓴다.

10장 · Skia for Delphi — 모던 그래픽 스택

Skia는 Google이 Chrome·Flutter·Android에 쓰는 2D 그래픽 라이브러리다. **Skia4Delphi**는 Skia를 Delphi/Lazarus에서 쓰게 하는 오픈소스 바인딩이고, 2025년부터 RAD Studio 12의 FMX·VCL 기본 그래픽 백엔드로 채택되었다.

**얻는 것**:

- 안티에일리어싱·텍스트 렌더링이 한 단계 올라감(특히 한글·일본어·중국어)

- SVG 직접 렌더링

- Lottie 애니메이션 재생

- GPU 가속 2D

- 셰이더(SkSL) 지원

Delphi 12 표준 컴포넌트 `TSkLabel`, `TSkAnimatedImage`, `TSkSVG`는 이 위에 얹혀 있다. 2010년대의 GDI+ 베이스 Canvas보다 모든 면에서 우월하다.

11장 · Spring4D — 모던 Delphi의 DI와 컬렉션

**Spring4D**는 .NET의 Spring과 Java의 Spring에서 영감을 받은 Delphi 라이브러리다. 2026년 5월 기준 **2.0** 안정 버전.

**구성**:

- `Spring.Container` — IoC 컨테이너(생성자 주입, 어트리뷰트 기반)

- `Spring.Collections` — 모던 컬렉션(`IList<T>`, `IDictionary<K, V>`, LINQ 스타일 쿼리)

- `Spring.Persistence` — Marshmallow ORM

- `Spring.Reactive` — Rx.NET 포팅

DI 컨테이너 사용 예:

uses Spring.Container, Spring.Container.Common;

type

[Inject]

IUserService = interface

function FindByEmail(const Email: string): IUser;

end;

TUserController = class

private

[Inject]

FUserService: IUserService;

public

procedure HandleRequest;

end;

var

Container: TContainer;

begin

Container := TContainer.Create;

Container.RegisterType<TUserService>.Implements<IUserService>;

Container.RegisterType<TUserController>;

Container.Build;

var Controller := Container.Resolve<TUserController>;

Controller.HandleRequest;

end.

엔터프라이즈 Delphi 프로젝트에서 사실상 표준이다.

12장 · PascalABC.NET — 러시아 학술용 .NET Pascal

**PascalABC.NET**은 러시아 사라토프 대학(Saratov State University)에서 만든 .NET 기반 Pascal이다. 교육용 + 알고리즘 학습용. 러시아·우크라이나·벨라루스의 학교 알고리즘 수업에서 표준이다.

**특징**:

- .NET 6/7/8 위에서 실행 — C# 라이브러리 직접 import

- LINQ를 Pascal 문법으로 — `Range(1, 10).Where(x -> x mod 2 = 0).Sum`

- 객체지향 + 함수형 + 절차형

- 학생용 GUI IDE(매우 가볍다)

- Windows·Linux·macOS

학교 외에서 쓰는 사람은 적지만, 러시아권 학생들은 Pascal을 PascalABC.NET으로 처음 만난다.

13장 · Oxygene — RemObjects의 멀티타겟 Pascal

**Oxygene**은 RemObjects Software가 만든 모던 Pascal 변형이다. **Elements** 컴파일러 위에서 동작하고, 같은 Pascal 코드를 .NET, Java/Android, iOS/macOS(Cocoa), WebAssembly로 컴파일한다.

**플랫폼별 타겟**:

- **.NET** — C#·F#와 같은 IL, 같은 GC

- **Cocoa** — Objective-C/Swift 런타임, ARC

- **Java/Android** — JVM 바이트코드, Android NDK 가능

- **Island(네이티브)** — 자체 런타임, 컴파일 결과는 네이티브 바이너리

- **WebAssembly** — Wasm + WASI

같은 Elements 도구체인에서 **Hydra**, **Mercury**(Visual Basic 모던), **Iodine**(Java 호환), **Silver**(Swift 호환), **Go**(Go 호환)를 함께 지원한다.

Oxygene는 RemObjects 구독 — 연간 약 999달러부터(2026년 5월). 실무에서 매우 작은 시장이지만, "한 코드로 .NET·iOS·Android·웹"이 매력적인 팀이 쓴다.

14장 · Hydra — 멀티언어 호스팅

같은 RemObjects의 **Hydra**는 한 프로세스에서 Delphi·.NET·Java 객체를 함께 호스팅하는 라이브러리다. Delphi VCL 폼 안에 .NET WPF 컨트롤을 넣고, 그 안에 Java Swing 패널을 넣을 수 있다.

쓰임:

- 레거시 Delphi 앱에 .NET 모듈 점진 추가

- C#으로 짠 비즈니스 로직을 Delphi UI에서 호출

- Java로 짠 분석 모듈을 Delphi 폼에서 임베드

**솔직한 평가**: 좋아 보이지만 실무에선 불편하다. 메모리 모델·이벤트 루프·예외 처리가 언어마다 다르다. 진짜 마이그레이션이 필요하면 한쪽으로 일관되게 가는 게 낫다.

15장 · mORMot — Delphi의 REST·ORM 프레임워크

**mORMot**(Synopse mORMot)는 프랑스 개발자 Arnaud Bouchez가 만든 오픈소스 프레임워크다. 2026년 5월 기준 **mORMot 2** 안정.

**구성**:

- **mORMot Core** — JSON, RTTI, 압축, 암호화, 로그 — 거의 .NET BCL 수준의 토대 라이브러리

- **mORMot ORM** — 코드 우선 ORM, SQLite 내장

- **mORMot SOA** — 인터페이스 기반 RPC + REST

- **mORMot DB** — Oracle, PostgreSQL, MySQL, MSSQL 드라이버

- **mORMot Reports** — PDF·Excel 생성

- **mORMot AI** — 2026년 추가, LLM 클라이언트(OpenAI·Anthropic·Ollama)

**왜 모르모트(mORMot)인가**:

1. **초고속** — SQLite 백엔드는 초당 100,000+ 트랜잭션

2. **단일 실행 파일** — 의존성이 거의 없음

3. **인터페이스 기반 SOA** — Pascal 인터페이스를 그대로 REST로 노출

4. **무료·오픈소스** — MPL/GPL/LGPL 트리플 라이선스

엔터프라이즈 Delphi 프로젝트의 서버 사이드에서 mORMot은 사실상 표준이다.

16장 · DataSnap — Embarcadero 공식 RAD 클라이언트·서버

**DataSnap**은 Embarcadero가 제공하는 공식 RAD 클라이언트/서버 프레임워크다. RAD Studio Enterprise 이상에 포함.

**기능**:

- REST 서버 자동 생성(인터페이스 → REST 엔드포인트)

- WebSocket 지원

- 다중 클라이언트 — Delphi, JavaScript, Java, PHP

- JSON·XML·바이너리 직렬화

- 세션 관리·인증

**솔직한 평가**: DataSnap은 기능적으로 작동하지만, 성능과 유연성에서 mORMot에 밀린다. 2026년 새 프로젝트라면 mORMot을 고르는 팀이 훨씬 많다.

17장 · Indy + ICS — Delphi의 두 네트워킹 진영

Delphi에서 TCP/UDP/HTTP/FTP/SMTP를 짤 때 두 가지 선택지가 있다.

**Indy(Internet Direct)**:

- RAD Studio에 기본 포함

- 블로킹 I/O 위주(스레드 풀로 확장)

- 컴포넌트 60개 이상 — IdHTTP, IdSMTP, IdFTP, IdTCPServer 등

- 사용이 간단, 안정성 입증

**ICS(Internet Component Suite)**:

- François Piette의 무료 라이브러리

- 논블로킹 I/O 우선(이벤트 기반)

- IPv6, TLS 1.3, HTTP/2 일찍 지원

- 고성능 서버에 적합

**언제 무엇을**:

| 용도 | 추천 |

|---|---|

| 간단한 HTTP 클라이언트 | Indy(IdHTTP) |

| 고성능 TCP 서버 | ICS |

| SMTP·POP3·IMAP 클라이언트 | Indy |

| HTTPS WebSocket 서버 | ICS 또는 mORMot |

18장 · REST.Json·System.Net — Delphi 표준 라이브러리

Delphi XE6부터 표준 라이브러리에 모던 REST/JSON 스택이 들어왔다.

- **`REST.Client.TRESTClient`** — REST 클라이언트

- **`REST.Json.TJson`** — 객체 ↔ JSON 자동 직렬화

- **`System.Net.HttpClient.THTTPClient`** — Indy 없이 HTTP/2까지 지원

- **`System.JSON`** — DOM 스타일 JSON 파서

이 표준 라이브러리는 RAD Studio 12에서 HTTP/3(QUIC)도 실험 지원한다(2026년 1월 업데이트).

19장 · TMS WEB Core / pas2js — Pascal을 JavaScript로

**pas2js**는 Free Pascal 팀이 만든 Pascal → JavaScript 컴파일러다. **TMS WEB Core**는 그 위에 RAD 도구를 얹은 상용 제품.

**무엇이 되는가**:

- Pascal 코드가 JavaScript로 변환되어 브라우저에서 실행

- 같은 폼 디자이너로 웹 UI 설계 — Pascal의 `TWebButton`이 HTML `<button>`이 됨

- Pascal 인터페이스가 TypeScript처럼 타입 안정성 제공

- PWA·서비스 워커·WebAssembly 출력

**TMS WEB Core 2.6**(2026년 1월) 기능:

- React·Vue·Svelte 컴포넌트 임베드

- Capacitor 통합 — 같은 코드로 iOS/Android 네이티브 앱

- Electron 통합 — 데스크톱 앱

- Bootstrap 5, Tailwind CSS, Bulma 테마

**용도** — 레거시 Delphi 팀이 같은 언어로 웹 프론트엔드를 만들 때. 새 팀이 처음 웹 프로젝트를 한다면 React/Vue가 더 현실적이다.

20장 · Smart Pascal / Elements — 다른 Pascal 변형

위에서 다룬 RAD Studio 외에 몇 가지 Pascal 변형이 더 있다.

- **Smart Pascal**(Smart Mobile Studio) — Pascal → JavaScript, 단종 직전이지만 일부 팀이 여전히 사용

- **Elements**(RemObjects) — Oxygene Pascal + Mercury VB + Iodine Java + Silver Swift + Go를 한 컴파일러에

- **MorphOS Pascal** — Amiga MorphOS용

- **JEDI Pascal** — Pascal 표준 라이브러리 + JCL/JVCL 컴포넌트 묶음

- **Virtual Pascal** — OS/2·Win 16용, 사실상 박물관 행

2026년 새 프로젝트라면 RAD Studio 12, Lazarus 3, 또는 Castle Game Engine 셋 중 하나로 시작하라.

21장 · 2026년 Pascal의 실제 쓰임 — 5개 시나리오

"누가 아직 Pascal을 쓰는가"의 구체적 답.

시나리오 A — 은행 코어뱅킹 유지보수

폴란드 PKO BP, 독일 Sparkasse, 동유럽·러시아 일부 은행이 1990~2000년대에 Delphi로 코어 시스템을 짰고 2026년에도 유지보수가 활발하다. 새 기능은 mORMot·Spring4D로 추가하고, 클라이언트는 VCL 그대로.

시나리오 B — 제조업 SCADA/MES

독일 Siemens, Bosch, Festo의 공장 모니터링 HMI 상당수가 Delphi로 짜였다. 실시간 데이터·시리얼/Modbus·OPC UA가 Delphi에서 잘 도는 영역이다. 2026년 새 SCADA는 .NET·C++로 가는 추세지만, 기존 자산은 그대로.

시나리오 C — 게임 엔진 개발

Castle Game Engine으로 인디 3D 게임을 만든다. Pascal의 컴파일 속도와 결정적 메모리 관리가 게임 루프와 맞는다. VR·Switch 타겟까지 가능.

시나리오 D — 윈도우 데스크톱 LOB 앱

중견기업의 ERP·CRM·재고관리·POS — Tauri/Electron보다 메모리 사용량이 1/10, 실행 파일 크기가 1/5. VCL/LCL의 그리드·차트가 여전히 강하다.

시나리오 E — 교육·알고리즘

폴란드 IOI, 러시아 IOI 대표팀이 Pascal을 쓴다(C++와 함께). PascalABC.NET·FPC가 학교 IDE.

22장 · 마이그레이션 경로 — 만약 떠난다면

"우리 Delphi 코드를 다른 언어로 옮긴다면 어디로?"

**선택지 1 — Delphi에서 머무르되 모더나이즈**

- Spring4D + mORMot + Skia4Delphi 도입

- VCL/FMX → FMX 단일

- DataSnap → mORMot REST

- 가장 보수적, 가장 안전

**선택지 2 — Delphi → Lazarus**

- 라이선스 비용 0

- LCL은 VCL과 80~95% API 호환

- 단점: 모바일 지원 약함, 일부 상용 컴포넌트 부재

**선택지 3 — Delphi → C# (.NET)**

- 가장 자연스러운 마이그레이션 — 객체 모델·예외·이벤트가 유사

- WPF/WinUI 3·MAUI로 UI 재작성

- 1~3년 프로젝트, 큰 비용

**선택지 4 — Delphi → Rust + Tauri**

- 메모리 안전·고성능

- UI는 웹(React)으로 — 디자이너 인력 필요

- 도전적, 2~5년

**선택지 5 — Delphi → Go**

- 단순 서버는 가능, GUI는 약함

- 마이크로서비스 분해 후 점진적

대부분의 팀은 선택지 1 또는 2를 고른다. 큰 프로젝트일수록 그렇다.

23장 · Delphi로 짜인 유명 소프트웨어

"Delphi가 정말 실무에 쓰였나"의 증거.

- **Skype**(2003년 초기 버전, 이후 C++로 재작성)

- **Total Commander** — 파일 매니저(Delphi)

- **FL Studio**(Image-Line)** — DAW. 2026년에도 메인 코드가 Delphi.

- **WinRAR**(부분)

- **The Bat!** — 이메일 클라이언트

- **JPSoft 4NT/TCC** — Windows 셸

- **MediaMonkey** — 음악 라이브러리

- **InnoSetup**(Jordan Russell) — Delphi 7로 짜인 인스톨러

- **PowerBASIC** — 일부 컴포넌트

- **Embarcadero RAD Studio 자체** — IDE의 핵심이 Delphi다(빙글빙글 도는 자기 자신 컴파일).

지금도 다운로드 수가 천만 단위인 소프트웨어들이다.

24장 · 한국·일본·동유럽의 Delphi 커뮤니티

**한국** — 델파이 사용자 모임(DelphiKorea)은 1996년 결성되어 2026년에도 활동 중. 정기 세미나, KFD(Korea Free Delphi) 그룹, 네이버 카페 회원 약 8000명. 금융권·정부 SI에서 Delphi 인력이 여전히 채용된다.

**일본** — Delphiユーザー会, Embarcadero Tech Days Japan(연 1회). 도쿄·오사카에서 정기 모임. 일본 대형 게임사 일부도 Delphi 클라이언트 툴을 쓴다.

**폴란드·러시아·우크라이나** — 가장 큰 Delphi 커뮤니티. 학교 알고리즘 교육의 표준 언어 중 하나. SpaceCRM·Roxen·Kaspersky 일부 도구가 Delphi.

**독일** — 가장 성숙한 엔터프라이즈 Delphi 시장. EKON 컨퍼런스가 매년 열림.

**브라질** — 라틴아메리카에서 가장 큰 Delphi 시장. EmbarcaderoBR 활발.

25장 · 왜 사람들이 아직 Pascal을 쓰는가 — 솔직한 답

이 글의 핵심 질문. 답은 다섯 가지다.

1. **컴파일 속도** — 100만 라인 프로젝트가 분이 아닌 초. CI도 빨라지고, 개발 루프가 짧아진다.

2. **네이티브 단일 EXE** — JVM·런타임·인터프리터 없음. 배포가 단순.

3. **결정적 자원 관리** — GC 일시정지 없음. 임베디드·산업 제어에 적합.

4. **VCL/FMX/LCL 컴포넌트 자산** — 25년간 쌓인 컴포넌트가 그대로 작동.

5. **감정·관성** — 1995년 Delphi 1을 손에 잡은 개발자가 지금 50대다. 그 사람들이 회사를 만들고, 그 회사 코드가 Delphi다.

가장 솔직한 다섯 번째 답은 가장 강력한 동기다. 사람은 자기가 잘 아는 도구로 일한다.

26장 · 현대 대안과의 비교

같은 일을 다른 언어로 한다면?

| 비교 | Delphi/Pascal | C#/.NET | Rust | Go | Kotlin |

|---|---|---|---|---|---|

| 컴파일 속도 | 매우 빠름 | 빠름 | 느림 | 빠름 | 보통 |

| GUI 프레임워크 성숙도 | VCL 강함 | WPF·MAUI | 약함 | 약함 | Compose Multiplatform |

| 메모리 안전 | 수동·일부 | GC | 컴파일타임 | GC | GC |

| 크로스플랫폼 | FMX·LCL | MAUI·Avalonia | egui·iced | gioui | KMP |

| 에코시스템 크기 | 작음 | 매우 큼 | 중간(성장) | 큼 | 큼 |

| 학습 곡선 | 쉬움 | 보통 | 가파름 | 매우 쉬움 | 보통 |

| 라이선스 비용 | RAD Studio 비쌈, Lazarus 무료 | 무료 | 무료 | 무료 | 무료 |

| 커뮤니티 활기 | 안정·축소 | 매우 활발 | 매우 활발 | 활발 | 활발 |

**요약** — Pascal/Delphi의 강점은 "Windows 네이티브 GUI + 빠른 컴파일 + 결정적 메모리". 이 셋이 핵심 요구가 아니라면 2026년의 새 프로젝트는 다른 언어가 합리적이다.

27장 · 추천 학습 경로 — 0에서 1까지

Pascal을 처음 배우거나 다시 잡는다면:

1. **언어 기초** — Michalis Kamburelis의 "Modern Object Pascal Introduction"(무료 PDF, 80페이지)

2. **IDE 손에 익히기** — Lazarus 3 설치 + 폼 디자이너로 간단한 계산기 앱

3. **컴포넌트와 이벤트** — `TButton.OnClick`, `TEdit.OnChange`, `TStringGrid`

4. **첫 미니 프로젝트** — TODO 앱(SQLite 백엔드) — Spring4D 컬렉션 사용

5. **REST 클라이언트** — `System.Net.HttpClient`로 공공 API 호출

6. **첫 게임** — Castle Game Engine 튜토리얼 따라 3D 큐브 굴리기

7. **책** — Marco Cantù의 "Object Pascal Handbook" 또는 "Mastering Delphi"

8. **커뮤니티** — 델파이 사용자 모임, /r/delphi, /r/fpc, Lazarus 포럼

3개월이면 익숙해진다. Pascal 문법은 BEGIN/END가 살짝 길지만 그게 끝이다.

28장 · 흔한 함정과 그 답

**"Pascal은 죽은 언어 아닌가?"**

1990년대에 멈춘 인상이다. 2026년 RAD Studio 12, FPC 3.3, Lazarus 3.10이 활발히 릴리즈된다. mORMot·Castle·Spring4D 같은 모던 라이브러리도 활발.

**"BEGIN/END가 너무 길다."**

처음엔 그렇다. 한 달이면 익숙해진다. 그리고 BEGIN/END는 `}` 한 글자보다 진단 메시지가 명확하다.

**"VCL 컴포넌트가 옛날 디자인이다."**

Skia4Delphi와 머터리얼 라이브러리를 쓰면 모던 디자인 가능. 기본 컴포넌트만 쓰면 1990년대 보이지만 그건 선택의 문제.

**"라이브러리가 적다."**

NPM·PyPI에 비하면 적다. 하지만 GetIt(RAD Studio 패키지 매니저), DelphiNES, JEDI Code Library, mORMot 생태계로 대부분의 일이 커버된다.

**"채용 시장이 좁다."**

좁지만 임금은 평균보다 높다. 폴란드·독일·일본의 Delphi 시니어 연봉은 같은 경력 자바·C# 시니어와 동등하거나 약간 높다. 공급이 적어서.

**"Lazarus는 무료지만 상용 지원이 없다."**

Lazarus 자체는 GPL/LGPL. 상용 지원은 Embarcadero RAD Studio로 가거나, TMS·DevExpress·SDL Components 같은 벤더에서 산다. Lazarus만으로도 상업 프로젝트는 충분히 가능.

29장 · 책과 자료

읽을 만한 책(2026년 시점):

- **Marco Cantù — "Object Pascal Handbook"**(2014, 가장 권위 있는 언어 레퍼런스)

- **Marco Cantù — "Mastering Delphi"** 시리즈(클래식, Delphi 1~7)

- **Michalis Kamburelis — "Modern Object Pascal Introduction for Programmers"**(무료, 2024 개정)

- **Nick Hodges — "Coding in Delphi"** + "More Coding in Delphi"

- **Primož Gabrijelčič — "Delphi High Performance"**(2018)

- **William Meyer — "Delphi GUI Programming with FireMonkey"**(2020)

- **Marko Tasic — "FreePascal from Square One"**(2023)

- **Khaled Aljundi — "Delphi GUI Programming with FireMonkey"**(2021)

영어 자료가 압도적으로 많지만, 한국어로는 토비님의 블로그·델파이 사용자 모임 게시판, 일본어로는 "ハチオブジマ"·"プログラミング・デルファイ" 등이 있다.

30장 · 결론 — 거인 위에 선 안정적 거인

Pascal은 1970년 Niklaus Wirth가 교육용으로 설계한 언어다. 56년이 지난 2026년에도 Pascal은 살아있고, 그것도 아주 잘 돌아간다.

이 글에서 다룬 30개 챕터를 한 문장으로 요약하면 이렇다.

**Pascal은 "필요한 곳에" 살아남았다. 새 트렌드는 아니지만, 오래된 코드를 잘 돌리는 데 이만한 도구가 없다.**

- **새로 시작한다면** — Lazarus 3 + FPC 3.3로 무료로 시작. 익숙해지면 Castle Game Engine으로 게임도.

- **회사가 Delphi를 쓴다면** — RAD Studio 12 Athens. Spring4D + mORMot + Skia4Delphi를 도입해 코드를 모더나이즈.

- **떠나려고 한다면** — C#/.NET이 가장 자연스러운 마이그레이션. Rust는 야심적이지만 비싸다.

- **순수 호기심이라면** — Marco Cantù의 책 한 권으로 한 달 안에 익힌다.

Pascal을 쓰는 사람은 트렌드를 좇지 않는다. 그들은 **돌아가는 코드를 잘 돌리는 것**을 좇는다. 2026년에도 그 가치는 변하지 않았다.

참고 자료

1. Embarcadero — RAD Studio 12 Athens: https://www.embarcadero.com/products/rad-studio

2. Embarcadero — Delphi 12 What's New: https://docwiki.embarcadero.com/RADStudio/Athens/en/What%27s_New

3. Free Pascal Compiler: https://www.freepascal.org/

4. FPC 3.2.4 Release Notes: https://wiki.freepascal.org/FPC_New_Features_3.2.4

5. Lazarus IDE: https://www.lazarus-ide.org/

6. Castle Game Engine: https://castle-engine.io/

7. Modern Object Pascal Introduction(Michalis Kamburelis): https://castle-engine.io/modern_pascal

8. Marco Cantù blog: https://blog.marcocantu.com/

9. Object Pascal Handbook(Marco Cantù): https://www.marcocantu.com/objectpascalhandbook/

10. TMS Software: https://www.tmssoftware.com/

11. TMS WEB Core: https://www.tmssoftware.com/site/tmswebcore.asp

12. DevExpress VCL: https://www.devexpress.com/products/vcl/

13. Skia4Delphi: https://skia4delphi.org/

14. Spring4D: https://www.spring4d.org/

15. mORMot: https://github.com/synopse/mORMot2

16. PascalABC.NET: https://pascalabc.net/

17. RemObjects Oxygene: https://www.elementscompiler.com/elements/oxygene/

18. RemObjects Hydra: https://www.remobjects.com/hydra/

19. Indy Project: https://www.indyproject.org/

20. ICS (Internet Component Suite): https://www.overbyte.eu/

21. pas2js: https://wiki.freepascal.org/pas2js

22. JEDI Code Library: https://www.delphi-jedi.org/

23. DelphiKorea(델파이 사용자 모임): https://cafe.naver.com/delmadang

24. Lazarus Forum: https://forum.lazarus.freepascal.org/

25. Embarcadero Community: https://community.idera.com/developer-tools/

26. Delphi Reddit: https://www.reddit.com/r/delphi/

27. Free Pascal Reddit: https://www.reddit.com/r/fpc/

28. EKON Conference: https://entwickler-konferenz.de/ekon/

29. Embarcadero Tech Days Japan: https://www.embarcadero.com/jp/

30. Nick Hodges blog: https://www.nickhodges.com/

현재 단락 (1/414)

"Pascal? 그거 학교에서 배우던 거 아닌가?"

작성 글자: 0원문 글자: 18,291작성 단락: 0/414