엠바카데로 MVP, 이안 바커(Ian Barker)가 정리하고 온라인 세미나로 진행한 "VCL 프로그램에 적용할 수 있는 윈도우 10 기능들"을 한글로 번역해보았습니다. 윈도우 10으로의 마이그레이션을 고민하고 계신 분들께 도움이 될 것입니다.

 

 

윈도우 10

 

델파이의 장점은 견고하다는 것입니다. 아직까지도 델파이 7 이나 2009 버전 등 오래전 버전으로 개발된 프로그램들이 많습니다. 여전히 안정적으로 구동되고 있다는 것은 그만큼 델파이가 매우 단단하고 신뢰할 수 있다는 증거입니다. 

 

많은 발전소들, 공항 보안 검색대, 포춘 선정 500대 기업의 회사 급여 시스템, 의료 환자 교육 시스템 등에서도 델파이를 쓰고 있습니다. 

 

델파이 7 만큼 좋은 제품이 마이크로소프트에서도 출시되었었죠. 바로 윈도우 XP 입니다. 현재의 윈도우 10은 XP 버전부터 시작된 훌륭한 UI 와 더불어 윈도우 NT 기술을 기반으로 하고 있습니다. 

 

윈도우 10은 정말 멋진 운영체제(OS)입니다. 이미 MS는 윈도우 10 설치를 위한 대규모 캠페인을 벌이기도 했었죠.

이제 '사물인터넷(IoT)' 을 목표로 하고 있기도 합니다. 이 말은 즉 "윈도우 10은 어디에나 존재한다"는 것입니다. 

오래 전 작성된 코드들이 여전히 작동한다는 것은 물론 멋집니다. 그렇지만 시대에 뒤쳐진 것으로 보인다는 것도 부정할 수 없죠.

 

이전 버전의 컴파일러들은 서비스는 계속 할 수 있을지 몰라도, 런타임 라이브러리나 VCL은 현재 중요시 되고 있는 '유연한 디자인'이라는 개념이 존재하기 이전에 나왔던 것들이어서 뒤쳐져 있습니다. 

 

 

앱은 더 멋지게, 작업은 더 쉽게

 

다행히도 아직까지는 우리가 쉽게 할 수 있는 것들이 있습니다. 이전 버전으로 개발한 RAD스튜디오, 델파이 소스코드도 최신 버전에서 어렵지 않게 열어볼 수 있다는 것이죠! (물론 한 번에 열리지는 않습니다. 마이그레이션 작업이 필요하지만, 그 작업이 결코 어렵지 않습니다). 

 

물론 외부 써드파티 컴포넌트들을 많이 사용했다면 작업이 복잡할 수는 있습니다 (조금 더 손이 많이 가죠. 새로 업데이트된 써드파티 컴포넌트들을 적용해야 하니까요). 

하지만 너무 걱정할 필요는 없습니다. 이런 경우에도 마이그레이션 작업은 꽤 빠른 시일 내에 완료할 수 있습니다.

이미 많은 케이스들이 있습니다. 150만줄에 달하는 델파이 7 프로젝트를 델파이 10 시애틀 버전으로 마이그레이션 하는데 성공했습니다. 써드파티 컴포넌트의 업데이트 버전을 찾을 수 있었고, 또 일부는 비슷한 기능을 하는 다른 회사의 컴포넌트로 대체하면 됐으니까요. 흔히들 걱정하는 만큼 그 작업이 끔찍할 정도로 어렵다거나 고통스럽지 않습니다. 

 

델파이는 견고하죠. 그리고 강합니다. 델파이 언어는 호환성이 매우 뛰어납니다.

 

 

왜 델파이 10.3 이어야 할까?

 

이안 바커는 델파이 10.3을 사용해야 하는 이유에 대해 아래와 같이 정리했습니다.

  • 정말 멋지고 우아한 새로운 테마와 템플릿 제공 - 델파이에 내장된 겟잇 패키지 매니저를 통해 무료 다운로드
    가능
  • 새로운 윈도우 10 API의 홍수
  • 윈도우 10 기능들을 타겟으로 제공되는 다양한 VCL 컴포넌트들
  • APPx 패키지 & 배포 - 로컬 ad-hoc 용
  • APPx 로 윈도우 스토어 & 64-bit 윈도우 지원 - 특히 윈도우 서버 2019 에서 매우 중요하죠
  • 높은 수준의 DPI 지원 & "per-monitor V2" 지원

 

 

정말 멋진데.. 이걸 어떻게 활용하지?

 

 

윈도우 10을 지원하는 VCL 컴포넌트들이 대거 추가되었습니다. 윈도우 10의 스타일과 기능들을 최대한으로 활용할 수 있도록 해줍니다. 

 

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 15441
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13961
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16499
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22055
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23268
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18923
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39255
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174706
42 BLOB 컬럼에 (이미지 등의)데이터 읽고 쓰기 험프리 2016.08.01 6093
41 델파이에서 사용하는 각 Stream(스트림) 정리 김원경 2017.01.04 6087
40 안드로이드 개발환경 추가 조치방법 - RAD Studio에서 SDK 설정 Humphery 2015.10.01 5560
39 OutputDebugString 함수로 디버그로그를 출력할 수 있습니다. file 험프리 2016.02.16 4265
38 데이터스냅에서 제공하는 JSON 포맷 데이터 사용(분석)하기 [1] file Humphery 2015.07.20 3775
37 [추가자료] 안드로이드 개발환경 추가 조치방법 - 수동 SDK Tools 업데이트 file Humphery 2015.10.01 3058
36 델파이 개체를 메모리에서 해제할 때 Free와 FreeAndNil의 차이점 김원경 2017.02.01 2413
35 패키지 개발방식과 DLL개발방식의 차이와 장단점 김원경 2018.05.02 2027
34 퀵레포트(Quick Report)에 사진 출력하기 험프리 2016.08.01 1864
33 TCategoryButtons 동적 생성하고, TButtonItem 클릭 이벤트 연결하기 file 험프리 2016.03.23 1366
32 제너릭(Generic)과 제너릭을 사용한 예제(제너릭 콜렉션 등) file 김원경 2020.01.15 1229
31 델파이 문서화 도구 참고링크 Humphery 2015.09.11 1161
30 BPL(패키지)를 이용해 프로그램 모듈화 하기 험프리 2015.11.24 1126
29 RAD Studio IDE에서 SVN 사용하기 + TortoiseSVN 사용하기 험프리 2016.02.29 1118
28 [추가된 문법] DLL 정적 호출 시 지연 호출(Delayed)-델파이 2010 추가 김원경 2016.12.27 1096
27 [개발자 Tip] 모바일 앱 개발 시 시간 낭비를 줄이는 Tip #1: 테스트하기 위해 기다리는 시간을 줄인다. 관리자 2016.12.26 881
26 [코드레이지11] SVN, DUnitX과 Jenkins 서버로 자동 빌드/테스트 환경 구성 - Craig Chapman 험프리 2016.11.22 823
25 [동영상] 앱테더링 데이터 암호화/복호화 방법 file 험프리 2016.11.01 803
24 3가지 API 이야기: VCL에서 WinAPI, COM&ShellAPI, WinRT 활용하기 관리자 2019.09.18 723
23 MidaConverter로 VCL 프로젝트를 FMX 프로젝트로 변환할 수 있습니다. Humphery 2015.06.04 711