2010년 1월 28일 추가
최근 정보에 따르면, 델파이에서의 아이폰 개발 지원은 장기적으로 밀릴 것 같습니다.
기술적이거나 업체간 협조 문제 때문인 것으로 보이는데... 어쨌든 많이 아쉽네요.

반면, 맥OS 버전과 리눅스 버전은 순조롭게 개발되어가고 있고 올해 출시에 아무 문제도 없을 것이라고 합니다.

-------------------------------------------------

며칠전에 디지털데일리의 기자들과 식사를 할 일이 있었는데... 그 자리에서 델파이에서 아이폰 개발을 지원하게 될 것이라고 귀띔을 했었습니다. 그런데 역시 기자라 그런지 뜰만한 이슈에 빠르더군요. 그다지 구체적인 정보를 준 것도 아닌데, 바로 다음날에 간단한 기사를 올렸더라구요.

아이폰 앱 개발, 오브젝티브-C의 대안은?
http://www.ddaily.co.kr/news/news_view.php?uid=57847

그런데.. 볼랜드포럼에 이 기사를 보고 글을 써주신 분이 있어서, 좀더 자세한 내용으로 답변을 썼습니다. 그 내용을 여기 블로그에도 올려봅니다.


델파이(그리고 C++빌더)의 미래 비전에서 가장 큰 것이 바로 크로스플랫폼입니다. 그래서 현재 엠바카데로의 델파이 관련 슬로건이 바로 Delphi Everywhere, C++Builder Everywhere 입니다. 여기서 'where'가 플랫폼들입니다. 내년에 나올 델파이는 윈도우 버전 외에, MacOSX, 리눅스를 지원하고, MacOSX 지원의 다시 연장으로서 아이폰이 지원됩니다.

모바일 쪽으로는 아이폰 외에 윈도우 모바일과 안드로이드도 본사의 내부 장기 로드맵에 포함되어 있는데, 윈도우 모바일은 드랍될 가능성이 큰 상태입니다. (최근 1~2년 사이에 윈도우 모바일의 추락 경향이 너무 커져서 지원 계획이 드랍될 분위기입니다)

현재 진행중인 상황에서는, 이 다른 플랫폼 용 델파이의 컴파일 방식은 해당 플랫폼에서 직접 개발을 하는 과거의 카일릭스 방식이 아니고, 윈도우에서 해당 타겟으로 컴파일하는 크로스컴파일 방식으로 됩니다. 그러니까 윈도우에서 MacOSX나 아이폰 애플리케이션을 개발하는 겁니다.

이렇게 다른 플랫폼들을 지원하는 델파이가, 현재의 윈도우 델파이 개발툴의 차기 버전에 모두 포함되기보다는, 별도의 개발툴 제품으로 나올 가능성이 커 보입니다. 일단 시장 자체가 다르니까요.

제 개인적인 예상으로는, 아마도 현재 델파이/C++빌더에서 공유하고 있는 IDE(정확한 명칭은 갈릴레오 IDE 입니다)를 빈껍데기 IDE로 독립시키고, 델파이와 C++빌더가 퍼스낼리티인것처럼, 델파이 for MacOSX나 델파이 for 리눅스, 델파이 for 아이폰 등이 이 껍데기 IDE와 함께 설치되는 제품으로 판매될 것으로 생각합니다. 어디까지나 제 개인적인 생각입니다. 그런 방식이 기술적으로나 시장 면에서나 가장 리즈너블해서입니다.

이미 작업은 상당히 진행되었고, 지난 8월의 진도 상황이 MacOSX와 아이폰용 컴파일러 코어는 기본적으로 개발 완료되었고(물론 출시 전까지는 개선을 해나가겠지만), VCL을 제외한 RTL 부분도 MacOSX와 리눅스로 포팅이 다 되어있습니다. 이를 위해 델파이 2007/2009에서 RTL 소스에서 사라졌던 리눅스 지원 코드들이 당장 현재 버전인 2010 버전의 RTL에는 다시 추가되었고, MacOSX까지 추가되어 있습니다.

컴파일러와 RTL 부분은 작업이 거의 끝나있고, 크로스컴파일 방식인 관계로 맥이나 리눅스를 위한 전용 IDE를 별도로 개발하지 않으니, 현재 엠바카데로 본사에서 진행중이거나 남아있는 작업은 VCL의 크로스플랫폼화 작업과 크로스컴파일 이후의 테스팅이나 디버깅 등의 작업일 것입니다.

RTL과는 별개로, VCL은 윈도우를 위해 완전히 최적화된 라이브러리이므로, 과거의 카일릭스 때 VCL과 별개의 CLX를 새로 개발했던 방식과 유사하게 진행할 것입니다. 이건 거의 확실하구요. VCL과 CLX가 별개의 평행 라이브러리이기는 하지만, VCL로 개발된 소스의 대부분이 CLX로 포팅이 가능했었습니다. 윈도우 OS에 의존적인 코드들만 제외하면요.

CLX에서 개발자들의 반발을 받았던 QT 문제를 어떻게 하느냐의 이슈가 있는데요. 과거의 CLX는 QT를 기반으로 했었는데(제 기억으로는 2.4 버전), 당시 이 QT의 성능이 상당히 크게 떨어지는 데다가 덩치도 크고 둔해서 개발자들 상당수가 많은 불만을 가졌었습니다.

지난 9월에 델파이/++빌더 2010 발표회 때 본사 부사장인 데이비드 아이 씨가 방문했을 때, 과거 카일릭스에서 사용했던 QT를 다시 사용할 계획이냐고 살짝 물어봤었습니다. 데이비드 씨의 대답은 대략 다음과 같았습니다.

1. 우리도 QT 문제를 심각하게 생각하고 있다.
2. 하지만 최근 버전의 QT는 과거와 달리 성능에서 크게 개선되었다.
3. 만약 최신 버전의 QT가 충분한 성능이 나온다면, QT를 사용함으로써 델파이에서 더 단기간에 더 많은 플랫폼을 지원할 수 있다.
4. 그래서 QT 기반으로 개발하는 방식과, 각각의 플랫폼에 대해 완전히 네이티브로 프레임워크를 재개발하는 방식을 두고 내부적으로 성능 비교 중에 있다.

MacOSX와 리눅스 버전은 내년에 출시될 것이 거의 확정적이고, 아이폰 버전은 좀 덜 확정적인데, MacOSX 버전과 함께 나올 가능성이 아주 높습니다.

제가 알고 있는 정보는 현재로서는 대략 이런 정도입니다.
(사실 본사에서 대외적으로 공개할 수 있도록 허용한 수준을 좀 많이 넘어섰습니다)

아마도 내년 봄 정도에 각 크로스플랫폼 버전에 대해 베타테스팅이 시작될 것이고, 그러면 저도 당연히 참여해야 하기 때문에, 그것 때문에라도 아이폰은 꼭 구입해야 하는 상황인데 요즘 너무 바빠 아직 아이폰 구매를 못한...

2009/12/30 16:22 2009/12/30 16:22

trackback :: http://blog.devgear.co.kr/imp/trackback/124

바로 며칠전에 엠바카데로 DN 사이트에 "RAD Studio Roadmap"이 올라왔습니다. 그런데 사실 Delphi Prism에 대한 내용이 빠져 있기 때문에 엄밀하게 말하면 Delphi와 C++Builder에 대한 로드맵이라고 할 수 있구요.

사용자 삽입 이미지

http://edn.embarcadero.com/article/39934

장황한 사설은 다 빼고, 핵심적인 내용만 정리하면 다음과 같습니다.

Project "Commodore" - 64비트 네이티브 개발
  컴파일러, RTL, VCL에 대한 64비트 지원
    - IDE의 옵션에서 64비트 혹은 32비트 개발을 설정
  멀티코어/멀티쓰레드 애플리케이션 개발 지원
  RTL의 병렬화(parallelization) 지원

Delphi "X" - 크로스플랫폼 Windows / MacOS / Linux 개발
  dbExpress 및 DataSnapX를 이용한 GUI 애플리케이션의 개발에 중점
  크로스플랫폼 컴포넌트 라이브러리 - 제한적인 하위 호환성
  Windows / MacOS / Linux / Web에서 DataSnapX 서버 및 클라이언트 개발

Project "Chromium" - 품질 개선 및 생산성 프로젝트
  개발자 생산성에 중점
    - 사용 편의성 개선
    - 오랫동안 지연된 문제점들의 해결 : 최대한 많은 버그 수정에 중점
    - 신뢰성의 새로운 표준을 설정
  가벼운 O/R 매핑
  팀 작업 편의
  OTA의 문서화
  컨트롤의 거의 모든 프로퍼티에 연결 가능한 데이터 바인딩 모델
  데이터베이스 툴들과의 통합 강화

이들과 동시에 추진되는 기능들
  클라우드 컴퓨팅
  웹 3.0++
  RIA 이상
  장비
  소프트웨어 어플라이언스
  보안
  표준 준수

그외 현재 고려중인 기능들
  Functional 프로그래밍
  Declarative 프로그래밍
  내츄럴 인풋
  더 많은 플랫폼들

내용이 많고 연도별 일정이 나와 있지 않아서 좀 헷갈릴 수 있겠는데요. 사실 여기에 나와 있는 모든 프로젝트들은 연도별 구분 없이 거의 동시에 추진되는 것들입니다. 여기서 "Commodore"가 바로 Delphi/C++Builder의 직접적인 차기 버전이구요.

현재로서는 특별한 차질이 없다는 가정 하에, Delphi "X"는 차기 버전인 Commodore이 실제로 출시될 때 통합되어 발표될 가능성이 높고요. "Chromium"은 별개의 프로젝트 팀이기는 하지만 생산성과 품질에 중점을 두는 것이므로 그 프로젝트의 결과는 향후 버전들에 쭈욱 계속 반영될 것입니다.

모바일 개발 지원
여기에는 몇가지 빠진 것이 있는데... (의도적인 것은 아니고 아마도 실수인 것 같습니다) 모바일에 대한 것입니다. 일단 iPhone 개발 기능은 사실상 확정적입니다. 정확한 발표 시기는 장담하기 어렵지만, 일단 iPhone에 대한 지원은 바로 다음 버전에서 지원될 가능성이 대단히 높은 상태구요.

또한 Windows Mobile에 대한 지원도 될 전망입니다. 하지만 이것은 iPhone보다는 순위가 밀려 있는 상태이며, 따라서 iPhone 지원 기능 개발에 시간이 모자라게 되면 Windows Mobile 지원은 그 다음 버전으로 밀리게 될 것입니다.

크로스플랫폼의 구현 방식
Delphi/C++Builder에서의 크로스플랫폼 지원을 말하면, 예전의 리눅스 개발툴 Kylix를 떠올릴 분이 적지 않으실 겁니다. 그리고 Kylix를 기억하시는 분들 중 많은 분들은, 리눅스용 Delphi/C++Builder라는 혁신적인 개념에도 불구하고 개발된 프로그램이 QT 기반의 둔한 동작을 하던 기억에 고개를 절레절레 흔드시는 분들도 있을 겁니다. (사실 저도 그중 한 사람입니다)

저번에 David I와 간담회를 가졌을 때, 이에 대한 질문을 하고, 명확한 답변을 받았습니다.

당시의 QT 버전은 느리고 굼떴던 것이 사실이다. QT의 최신 버전은 성능에 있어서 혁신적으로 발전했고, 그래서 우리도 관심있게 테스트중이다. 물론 이 최신 QT도 충분히 좋지 않을 것에 대비하여, 현재 완전히 네이티브 방식의 리눅스/MacOS 개발도 QT와 함께 함께 개발 테스트 중이다. 성능을 빼고 얘기할 때에는 QT를 기반으로 하는 것이 여러 모로 유리한 점들이 있기 때문에, 성능을 비롯한 여러 스펙들에 대한 비교를 해보고 최종적으로 결정할 것이다.

뭐, 이런 정도의 자세라면 안심해도 될 것 같습니다. ^^

어쨌든, 지금 이 순간에도 Delphi와 C++Builder는 끊임없이 발전해나가고 있습니다. 바로 지금 Delphi/C++Builder로 개발한 애플리케이션들은, 머지 않아 MacOS와 리눅스로 포팅할 수 있게 될 것이며, 심지어는 iPhone과 Windows Mobile까지도 (아무래도 모바일로는 포팅에 약간의 제한은 있겠지만) 포팅이 가능할 것입니다. 또한 개발툴 자체의 기능들도 끊임없이 추가되고 개선될 것이구요. 멋지지 않습니까? ^^

2009/09/16 02:02 2009/09/16 02:02

trackback :: http://blog.devgear.co.kr/imp/trackback/81

  1. C++빌더 개발 로드맵

    Tracked from CREATIVE !! 2009/09/17 12:19  delete

    데브기어 블로그에 델파이,C++빌더 로드맵에 올라왔다. 64비트 네이티브나 크로스 플랫폼 개발환경은 장비 제어 개발 업계의 특성상 그다지 관심이 가지는 않지만 개발자 생산성 향상을 위한 별개의 프로젝트(Chromium)가 운영중이라는것이 반갑니다. 업그레이드 될수록 좀서좋은 개발 환경에서 작업할 수 있을 거라고 기대해본다. SVN이나 CVS등의

사용자 삽입 이미지
엠바카데로 델파이 개발팀의 Chief Sientist인 Allen Bauer가, 처음으로 MacOSX와 Linux를 위한 델파이에 대해 언급했습니다.
Yes, Virginia, there is a Delphi MacOSX and Linux project…
http://blogs.embarcadero.com/abauer/2009/05/20/38885

위의 글을 대략 요약하면, 델파이에서 MacOSX와 Linux 애플리케이션을 개발할 수 있게 하기 위한, Project X를 진행하고 있으며, 이를 위해 Kylix 프로젝트에서 중추적인 역할을 했던 엔지니어가 델파이 팀으로 복귀했다고 합니다.

또한 이전의 Kylix 개발 과정에서는 개발자들이 윈도우 버전과 리눅스 버전 사이를 오가면서 작업해서 여러 문제가 있었는데, 이번는 'f
uture' 프로젝트만을 위한 별도의 팀을 구성했답니다. 즉, 당장의 제품을 위한 개발에서 벗어나서 차세대 연구 전담팀을 만든 셈이죠.

이와 같은 비 윈도우 OS 지원에 대한 계획에 대해 엠바카데로에서 처음으로 냄새를 풍기기 시작했던 것은, 델파이 R&D 매니저인 닉 호지스가 EDN에 아래와 같은 글을 올리면서였습니다.
Future of Delphi
http://edn.embarcadero.com/article/39290
http://www.borlandforum.com/impboard/impboard.dll?action=read&db=news&no=330

이 글에서, 닉은 델파이의 차기 버전에서 델파이 컴파일러의 프론트엔드와 백엔드의 변화가 있을 것임을 말하면서, 기존의 프론트엔드와 병행하여 새로운 프론트엔드를 개발하여 추가함으로써 델파이 언어에 새로운 문법들을 추가할 것이라고 했었죠. 동시에, 백엔드에 대해 다음과 같이 언급했습니다.

델파이 및 C++ 컴파일러의 백 엔드는 현재 윈도우용 32비트 바이너리를 생성합니다. 하지만 물론 백 엔드가 32비트나 윈도우에 한정되는 것은 아닙니다.

'윈도우에 한정되는 것은 아닙니다'.
즉, 다른 OS를 위한 컴파일러 백엔드를 만들 계획에 대한 뉘앙스를 띄운 거죠.

이제 MacOSX와 Linux 지원에 대한 정보가 공개되었으니 말입니다만, 저희 내부적으로는 올해 초부터 '윈도우 버전의 델파이에 타 OS를 위한 크로스컴파일러를 탑재하는 개발 계획'에 대한 언급이 있었습니다. 엠바카데로가 볼랜드로부터 개발툴 부문을 인수할 때 Kylix도 역시 인수했기 때문에 리눅스 지원은 너무나 당연한 일일 겁니다.

Kylix 방식의, 리눅스에서 동작하는 전체 개발툴이 아닌 크로스컴파일러를 만들겠다는 거죠. 제 개인적으로도, 리눅스 애플리케이션 개발을 굳이 리눅스에서 개발하기보다는, 익숙한 윈도우 버전의 IDE에서 작업하는 것이 훨씬 낫다고 봅니다.

하지만 사실 Kylix가 시장에서 실패했던 것처럼, Linux 개발 시장은 의외로 크지 않습니다. 오히려, MacOSX 시장이 급성장하고 있죠. 그래서 올 초에 본사에서는 MacOSX를 직접 언급하지는 않았지만, 실제 포커스는 리눅스보다 오히려 MacOSX에 있을 거라고 짐작해왔습니다.

이 프로젝트X 팀의 일원인 Eli Boling가 어제 MacOSX 버전의 개발과 관련된 글들을 자신의 블로그에 올리기 시작했습니다.
Mac OS X Stack Alignment
http://blogs.embarcadero.com/eboling/2009/05/20/5607

그럼 C++빌더는 어떨까요? 델파이만 계속 언급하고 있는데, C++빌더는 이런 MacOSX나 Linux 지원 계획에서 소외되는 것일까요? 당연히 아닙니다. 위의 'Future of Delphi' 블로그 글을 보시면, 닉은 "델파이와 C++빌더 양쪽 모두에 대해 동작하는 완전히 새로운, 통합된 백 엔드"를 개발할 것이라고 말하고 있습니다. 그리고 MacOSX와 Linux를 지원하는 데에 필요한 것이 바로 컴파일러의 백엔드입니다. 결국, C++빌더도 델파이와 동시에 이들 OS를 지원하게 될 것이라는 것이죠.

하지만, 과연 제품 출시는 언제냐고 물으시면, 현재 상황에서는 알 수가 없습니다. 본사의 Project X 전담 팀에서도 정확히는 모르고 있을 겁니다. 이건 당장의 제품을 위한 계획이 아닌, 연구 프로젝트이기 때문입니다. 하지만, 의혹에 대해 응답을 한 만큼, 제품 출시가 멀지는 않을 겁니다. 적어도, 일정에 대한 어느 정도의 가늠은 나왔으니까 공개를 한 것이니까요.
2009/05/21 13:35 2009/05/21 13:35

trackback :: http://blog.devgear.co.kr/imp/trackback/40

  1. MacOSX와 Linux를 위한 Delphi와 C Builder...?

    Tracked from 볼랜드포럼 2009/05/21 13:43  delete

    엠바카데로 델파이 개발팀의 Chief Sientist인 Allen Bauer가, 처음으로 MacOSX와 Linux를 위한 델파이에 대해 언급했습니다. <b>Yes, Virginia, there is a Delphi MacOSX and Linux project…</b> http://blogs.embarcadero.com/abauer/2009/05/20/38885 위의 글을 대