현재 정상적으로 판매되고 있는 델파이 버전들은 델파이 2010, 델파이 2009, 델파이 2007, 델파이 7 이렇게 네 가지 버전입니다. 이 글은, 개발자들이 이 네 가지 델파이 버전들 중에서 자신의 상황에 맞는 적절한 델파이 버전을 선택하기 위한 가이드를 드리기 위한 것입니다.
델파이 7
델파이 7이 지금도 정상 판매되고 있는 것은 사실입니다. 하지만 원래 단종되었던 제품을 시장의 상황 때문에 억지로(?) 재판매하고 있는 것이기 때문에, 기술 지원이나 버그 패치 등은 전혀 되지 않습니다.
또한 델파이 7은 2002년에 발표된 제품으로서, 출시된지 8년이나 트렌드에 뒤쳐진 제품입니다. 지원하는 OS는 윈도우 XP까지이며 윈도우 2003도 정식으로 지원하지 않습니다. 크게 변화한 윈도우 OS인 윈도우 비스타나 윈도우 7에서는 당연히 여러가지 문제가 발생합니다.
어떤 개발자분들은, 델파이 7이 가장 좋다, 라는 호의적인 평가를 하는 경우가 많은데, 실상은 별로 그렇지 못합니다. 델파이 7이 선호되는 이유로는, 구버전 IDE의 마지막 버전인 탓이 가장 큽니다. 단지 익숙하기 때문에, 라는 것이죠.
델파이 7은 델파이 6의 마이너 업그레이드에 가깝습니다. 개발자에게 실질적인 도움이 되는 개선 사항이 별로 없고, 그나마 의미가 있는 것이라고 하면 델파이로 WISIWIG 웹 개발을 지원하는 IntraWeb 컴포넌트 라이브러리와 퀵 리포트에 비해 여러 모로 나은 리포트 컴포넌트인 RaveReport가 번들되기 시작했다는 점, 그리고 윈도우 XP 테마를 처음 제대로 지원하기 시작했다는 점 정도입니다.
사실 당시에 델파이 7의 뛰어난 점으로 내세웠던 특징들은 델파이 닷넷 프리뷰 버전의 번들, UML 툴인 모델 메이커의 번들, 아키텍트 에디션에서 MDA 개발을 위한 Bold for Delphi 프레임워크의 번들, 협업을 위한 팀 소스 툴의 번들 등이었는데, 아시겠지만 이 모두가 세월이 흐른 지금 돌이켜보면 간단히 알 수 있듯이 개발자들에게 별 효용이 없는 것들이었습니다. (주요 특징이 모두 ‘번들’이라는 점을 보시면 실제 델파이 개발에서는 큰 개선이 없다는 것을 역설적으로 알 수 있죠)
델파이 7으로 만들어진 애플리케이션은 윈도우 비스타, 윈도우 7에서 여러가지 문제를 일으킵니다. 지원하지 않는 OS의 문제이므로 그 크고 작은 문제들에 대한 책임은 개발자의 몫입니다. 지금 당장은 사내의 환경이 오직 윈도우 XP 뿐이라고 해도, 바로 몇년 후의 미래를 고려한다면 델파이 7은 답이 아니죠.
델파이 2007
델파이 2007은 델파이 2006 버전과 바이너리 호환이 되는 버전입니다. 그러면서도 델파이 6에서 Windows XP를 지원하기 시작한 이후로 처음으로 새로운 OS인 Windows Vista를 지원하게 되었으며, 따라서 Vista의 새로운 권한 구조(UAC)나 사용자 인터페이스(Aero, Vista 다이얼로그 등)를 지원합니다.
또한 델파이 2007은 델파이 8에서 처음 도입된 새로운 IDE(갈릴레오 IDE)가 2005, 2006 버전을 거쳐 제대로 안정화된 첫 버전이어서, 기동 속도나 반응이 훨씬 빨라졌음은 물론 이상 종료 현상도 발생하지 않습니다.
또 Unicode 도입 이전의 마지막 버전이기 때문에, 오래된 구버전으로부터의 마이그레이션이 상당히 쉽고 빠릅니다. 대신 당연히 Unicode로 인한 이점들은 모두 놓치게 됩니다만, 유니코드가 현재도 장래에도 전혀 필요하지 않다면 별 문제가 되지 않겠지요. 따라서 만약 유니코드가 전혀 필요없고, 또 이전 소스를 최대한 수정 없이 사용하는 것이 가장 큰 이슈라면 델파이 2007을 선택하면 됩니다.
델파이 2007이 더 최신 버전들에 비해 갖는 강점 또 한가지는, 델파이 2007에 퀵 리포트가 기본 포함되어 있지는 않지만 델파이 2007을 구입하면 퀵 리포트가 추가로 제공된다는 것입니다. 퀵 리포트를 따로 구입할 경우 50~60만원 정도이기 때문에, 퀵 리포트가 반드시 필요하다면 델파이 2007을 선택할 경우 그만큼의 액수를 절약할 수 있습니다. (2009, 2010 버전에는 퀵 리포트가 제공되지 않습니다)
델파이 2007은 공식적으로 Windows 7을 지원하지는 않지만, Windows 7이 Windows Vista의 마이너 업그레이드에 가깝기 때문에 대부분의 경우 Windows 7에서 잘 돌아가며 아직 특별한 문제 보고는 없었습니다. (Windows 7에서 일부 디버거 기능이 오동작하는 버그가 있었는데, 비공식적이기는 하지만 문제 해결을 위한 패치가 제공되었습니다)
델파이 2009
델파이 2009를 선택할 필요는 거의 없는데, 그것은 이미 델파이 2010이 나와있기 때문입니다. 델파이 2010은 델파이 2009의 모든 코드가 소스 레벨에서 호환되는 데다 기능이 더욱 더 추가 및 개선되었기 때문에, 델파이 2009의 기능이 메리트가 있다면 가격도 같은 델파이 2010을 두고 델파이 2009를 선택할 필요는 없습니다.
다만, 비용 면에서 구버전으로부터의 업그레이드 할인을 노린다면 좀 따져볼 이유가 있습니다. 델파이 2005 이하의 구버전에서 델파이 델파이 2010으로의 업그레이드 할인 혜택은 지난 1월말 부로 종료되었지만, 여전히 델파이 2009 이하의 버전으로의 업그레이드는 가능합니다. 더 쉽게 말하면, 델파이 2007, 2009는 구입할 때 이전의 구버전으로부터 업그레이드 할인이 가능하다는 말입니다. (업그레이드 제품의 가격은 신규사용자용에 비해 30% 정도가 저렴합니다)
델파이 2010
아시다시피 델파이 2010은 현재 최신 버전입니다. 당연히 가장 많은 기능들을 가지고 있습니다. 특히 델파이 2009로 작성한 코드와 소스 레벨에서 100% 호환됩니다. 따라서 델파이 2009를 구입하려고 고려했다면 델파이 2010을 구입하는 것이 더 좋습니다.
델파이 2009에서부터 처음으로 Unicode를 지원하기 시작했습니다. 업무 개발만을 하는 개발자라면 몰라도, 패키지/솔루션 등을 개발하는 개발자라면 이 Unicode 지원은 대단히 중요한 의미를 갖는데요. Unicode 지원과 번역 지원 기능 덕분에 필요하다면 세계 어느 나라이든 짧게는 몇시간 정도면 현지화된 버전을 만들 수 있습니다.
당장은 해외 판매를 전혀 고려하지 않는 프로그램이라도, 조금만 눈을 돌려보면 우리나라보다 몇백배 더 큰 해외 시장이 있는데 완전히 무시하고 한국에만 팔겠다고 할 필요는 없겠죠.
하지만 이 유니코드 지원 때문에, 구버전으로부터의 마이그레이션이 꽤 많이 어려워지기도 합니다. 이 어려움의 정도는 소스코드에서 사용한 테크닉에 따라 천차만별입니다. 거의 손을 댈 필요가 없을 수도 있고 많이 손을 대어야 할 수도 있는데, 대체로 개발자가 로우 레벨 테크닉을 많이 사용한 경우 작업량이 꽤 올라가고, 반면 일반 폼 작업 정도라면 손댈 부분이 많지 않습니다.
또한 델파이 2010에는 델파이 2009에서 추가된 기능들까지 포함하면 멀티터치/제스처 지원, 빠르고 강력한 그래픽을 위한 Direct2D 지원, 리본 컴포넌트를 비롯한 새로운 UI 컴포넌트들과 속성들, 코드 에디터 지원 기능들, 강력해진 디버거 기능들, 제네릭과 클로져 문법 지원, 컴포넌트 팔레트 지원 및 구버전 IDE 배열 지원 등등등 엄청나게 많은 신기능들이 포함되어 있습니다.
따라서, 미래에 대한 투자를 생각하는 개발자라면 델파이 2010이 최선의 선택일 것입니다.