Delphi 버전 선택하기 #1 단종된 구버전

프로젝트를 델파이로 개발하기로 결정한 상태라면, 여러 델파이의 버전들 중에서 어떤 버전으로 개발할 것이냐가 이슈가 될 것입니다. 또 아주 구버전을 사용하던 개발자들이 더 새로운 버전으로 이동을 고려할 때도 같은 고민을 하게 됩니다.

현재 엠바카데로의 한국 대표인 데브기어에서는 델파이 7, 델파이 2007, 델파이 2009, 델파이 2010 등 총 네 가지의 버전을 판매하고 있습니다. 먼저, 이 이외의 버전이 필요할 경우를 생각해봅시다.

델파이 2006이 필요한 경우
델파이 2006(즉 BDS 2006)의 경우는 아주 간단합니다. 델파이 2007은 델파이 2006과 바이너리 수준까지 완벽하게 호환됩니다. (서로 다른 두 버전 사이에서 바이너리 레벨 호환이 되는 유일한 경우입니다) 따라서 소스 없이 바이너리만으로 사용하던 컴포넌트들까지도 델파이 2007에서 그대로 사용할 수 있습니다.

따라서, Windows 개발에 있어서, 정상적으로 공급되고 있는 델파이 2007를 두고 단종된 델파이 2006이 필요한 경우는 결코 없습니다.

다만, 닷넷의 경우 약간 영향이 있습니다. 델파이 닷넷의 경우, 델파이 닷넷 2006은 닷넷 1.1을 지원하고, 델파이 닷넷 2007은 닷넷 2.0을 지원하므로, 만약 반드시 닷넷 1.1 환경에서 돌려야 하는 상황이 있다면 문제가 될 수도 있겠습니다. 하지만, 1. 일단 닷넷 개발 자체가 별로 일반화되지 못했고, 2. 닷넷 1.1보다 2.0이 그나마 조금이라도 더 낫고, 3. 거기다가 닷넷의 특정 버전을 따져야 할 경우는 더더욱 없으므로, 이것이 문제가 될 가능성은 너무너무 적죠.

게다가, 2006에 비해 2007은 IDE의 기능도 많이 향상되고 안정성도 획기적으로 높아졌으며, 윈도우 비스타 이상까지 지원하는데다 수없이 많은 새로운 기능들이 추가되었습니다. 그러니 2007을 두고 2006을 선택할 아.무.런. 이유도 없습니다.

델파이 6가 필요한 경우
델파이 6는 거의 대부분의 경우 델파이 7으로 대체가 가능합니다. 소스 코드 레벨에서는 거의 문제 없이 아주 스무스하게 호환됩니다. 그럴 수 있는 이유는, 델파이 7이 델파이 6와 비교해서 아주 마이너한 업그레이드이기 때문입니다. (반면, 델파이 5 이하에서 델파이 6로의 업그레이드는 그렇게 아주 만만치는 않습니다)

하지만 역시 버전이 달라 바이너리 레벨에서는 호환되지 않기 때문에, 만약 서드파티 컴포넌트를 소스 없이 바이너리 파일(dcu나 bpl 등)로만 사용해왔다면 곤란해집니다. 컴포넌트 소스 코드가 있어서 델파이 7에서 재 컴파일이 가능하다면 아무 문제가 되지 않습니다.

또 한가지 문제는 BDE의 문제입니다. 델파이 6는 BDE가 전체 기능으로 탑재되었던 마지막 버전이며, 델파이 7부터는 BDE의 로컬 부분만 남고 RDBMS, 즉 오라클이나 MS-SQL, DB2 등으로 연결하는 SQLLinks가 빠졌습니다. 이 이슈에 대한 자세한 내용과 방법은 아래 블로그 글을 참고하세요.
http://blog.devquest.co.kr/imp/entry/델파이-최근-버전에서-BDE로-RDBMS에-연결하는-문제

델파이 5 이하가 필요한 경우
델파이 5는 1999년에 출시된 제품으로, 윈도우 XP조차도 제대로 지원하지 않습니다. 델파이 5 버전은 제품 겉면에 지원 OS가 윈도우 95/98/NT라고 명시되어 있는 제품들입니다. 물론 그 이전 버전들을 더욱 더 그렇구요. 10년이 넘어간 기술, 지금 거의 사용되지도 않는 OS만을 지원하는 개발툴을 계속 사용하는 것은 큰 문제가 있습니다. 또한, 델파이 5 버전 이하는 공식적으로 윈도우 98 이하에서만, 델파이 2006 버전 이하는 윈도우 XP 이하에서만 지원됩니다.

하지만, 이러한 기본 전제에도 불구하고, 업무의 현실상 반드시 필요하다면, 델파이 5 이하 버전을 합법적으로 구입할 방법이 전혀 없는 것은 아닙니다. 델파이의 제품군 중에 ToolCloud라는 제품이 있습니다. 이 툴클라우드는, 현재 일반 판매중인 델파이 2010/2009/2007 버전을 모두 합법적인 라이선스로 사용할 수 있는 형태입니다. (델파이 7은 제외) 가격은 단일 버전 제품에 비해 1.5배 정도구요. (네트워크 네임드 라이선스의 경우)

이 툴클라우드 제품에 대한 프로모션 행사로서, 다음 달인 4월 한달간 델파이 6 이하 구버전에 대해 추가 버전 라이선스 인정을 하게 될 예정입니다. 따라서 4월 말까지 델파이 툴 클라우드를 구입하면, 델파이 2010/2009/2007 등의 구버전 라이선스를 모두 확보하는 것은 물론, 델파이 1~6 버전을 사용할 수 있는 추가 라이선스를 드립니다. (1~6 사이의 모든 버전의 라이선스를 가지는 것은 아니고, 구입 시점에 지정한 특정 한 버전의 라이선스를 부여받게 됩니다)

이 행사는 4월 한달간만 시행됩니다. 이 행사를 시행하는 이유는, 올 4월에 전국적으로 대대적인 불법복제 단속이 있을 예정이기 때문에, 구입할 수 없는 구버전에 대해 정식 라이선스를 구입할 수 있도록 길을 열어드리는 것입니다. 물론 일단 단속되지 않은 업체만 가능합니다. (단속에서 적발된 경우는 손해배상까지 가는 등 문제가 훨씬 복잡해집니다)

5 comments for “Delphi 버전 선택하기 #1 단종된 구버전

  1. 2011.01.05 at 1:40 오전

    데브기어를 떠나셨다니 문의드리기 좀 그렇습니다만
    이 글에 있는 링크 중
    http://blog.devgear.co.kr/imp/entry/델파이-최근-버전에서-BDE로-RDBMS에-연결하는-문제
    가 깨졌는데 어떻게 볼 수 없을까요?
    사무실에 있는 7버전을 사용하려고 알아보는 중입니다.

    • Jeehoon Imp Park
      2011.01.05 at 12:27 오후

      문의하신 글의 링크입니다.
      http://blog.devquest.co.kr/imp/8

      그런데 트랙백하신 글을 보니 엔테라를 쓰신다니 BDE는 문제가 전혀 안될 것 같은데요. 자세한 내용을 알려주시면 해결책을 알려드릴 거구요.

      트랙백하신 글의 댓글로도 썼습니다만, 엔테라 컴포넌트가 필요하시면 델파이 7 용으로 보내드리도록 하겠습니다. 아직 엔테라를 쓰는 곳은 서울시청과 행안부 정도밖에 없는 걸로 알고 있는데 정말 드문 케이스네요.

    • 2011.01.05 at 11:48 오후

      감사합니다.
      아직 링크글을 보진 않았습니다만.
      나중에 들어온 추가 패키지에는 MySQL로 직접 연결하는 방식으로 되어 있더군요.
      TADOConnection, TADOQuery 등을 쓴게 보입니다. (이 패키지는 이제 막 보기 시작해서 잘 모릅니다)

      델파이7용 엔테라 컴포넌트를 보내주실 수 있으면 감사히 받겠습니다.
      senk@korea.com 으로 가능할까요? 혹 용량이 50메가 이상 된다면 senk119@naver.com으로 주셔도 됩니다.

    • Jeehoon Imp Park
      2011.01.12 at 4:54 오후

      델파이 7용 엔테라 컴포넌트를 메일로 보내드렸습니다.
      즐거운 하루 되시길 바라겠습니다~

  2. Pingback: Senk Toy Box

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다