델파이가 언어라고 하셨는데, 개발환경으로 보는 것이 맞지않나 생각합니다.
예를 들면 Visual C++은 C++언어를 위한 개발 환경이고, MS 에서 자체 개발한 MFC
라는 라이브러리를 제공하고 있죠. Borland C++ 역시 C++ 언어를 위한 개발 환경이고 자사에서 개발한 OWL, BWCC 등의 라이브러리를 제공하고 있습니다.
델파이라는 개발 환경은 Pascal 언어를 위한 개발 환경이고 자사가 개발한 VCL이라는 라이브러리를 제공하고 있죠. Pascal은 C/C++ 같은 순수 compiler 언어여서 compiler 실행화일이 따로 존재하고 Linker 실행화일이 분명히 따로 존재 합니다.
델파이는 개발환경 내의 사용자 옵션에 맞게 compile 옵션을 생성해서 compiler 실행화일을 실행시켜준다고 생각하면 됩니다. Linker 역시 마찬가지죠.
Turbo Pascal 이라는 옛날 Borland 제품을 기억 하실 겁니다. 이 역시 Pascal 언어를 위한 개발 환경인데 Delphi는 이 제품의 연장 선상에 있죠. Borland 사는 표준 Pascal에다 자사 나름대로의 언어적 기능을 향상 시켜왔습니다. 이렇게 형성된 Pascal을 Borland Pascal이라고도 부르죠. Turbo Pascal 6.0(5.5부턴가?) 부터 사용된 Pascal compiler는 객체 지향적인 기능을 집어넣어 Object Pascal이라는 별칭을 갖게 되었죠. 그후 Turbo Pascal 7.0 그리고 Turbo Pascal for Window 1.0 로 이어지고 최종적으로 Delphi 1.0 라는 제품이 나오게 된 것이죠. Delphi 1.0 에서 사용한 Pascal compiler는 Borland Pascal 8.0 라고도 불리었고, 이때서야 비로서 현재 Delphi 에서 사용하는 Object Pascal 언어가 재대로된 모습을 갖추게된 때 입니다. Borland Object Pascal 이 가지는 객체지향적인 기능은 C++ 과 비교 하면 없는 기능이 있는것도 사실입니다. 하지만 이는 단순히 비교 만으로 평가를 할 수 없는 것이, Pascal 언어가 주는 명료함은 C/C++에는 없는 것입니다.
현재의 Delphi의 성능은 어느 툴과 비교 했을때 성능면에서 전혀 뒤지지 않는 다고 생각합니다. 혹자는 시스템 프로그래밍은 Visual C++ 로 해야 한다고 생각하는데 윈도우즈 프로그래밍은 운영체제에서 지원하는 API 함수에 의존하기 때문에 특정 툴이 적절하다 할 수는 없다고 봅니다. DLL 파일내의 함수를 Call 할 수만 있으면 되죠.
얘기가 길어 졌네요. 하여튼 Delphi 는 순수 machine code를 생성하는 pascal compiler 를 사용하므로 생성된 실행화일의 성능이 뛰어납니다. 개발환경 역시 상당히 직관적이고 WYSWYG(What You See is What You Get)에 충실한 모습을 보여주고 있으며, 특정 분야에만 적절한 툴이 아닌 범용으로 사용될 수 있고 탁월한 생산성을 보여 줄 것입니다.
PS : 저는 INPRISE 직원이 아닙니다.
한가지만 빼구요..
델파이는 파스칼에 기반된 언어입니다.
파스칼이 아닙니다.
인프라이즈 홈페이지만 봐도 알 수 있습니다.
음.. 어디었는지는 기억을 하지는 못하지만 델파이를 새로운 언어로 만들기에 여념이 없었습니다. 파스칼이 아니라는 것이죠.
비교해보면 이미 많은 부분이 바뀌었죠.. 옛날 파스칼과는..
파스칼 -> 오브젝트 파스칼 -> 델파이
이런식으로 온것이죠.
델파이는 언어입니다.
파스칼 컴파일러를 사용하지는 않죠. 델파이 컴파일러를 사용합니다~
감사합니다.
김 완진 wrote:
> 델파이가 언어라고 하셨는데, 개발환경으로 보는 것이 맞지않나 생각합니다.
> 예를 들면 Visual C++은 C++언어를 위한 개발 환경이고, MS 에서 자체 개발한 MFC
> 라는 라이브러리를 제공하고 있죠. Borland C++ 역시 C++ 언어를 위한 개발 환경이고 자사에서 개발한 OWL, BWCC 등의 라이브러리를 제공하고 있습니다.
>
> 델파이라는 개발 환경은 Pascal 언어를 위한 개발 환경이고 자사가 개발한 VCL이라는 라이브러리를 제공하고 있죠. Pascal은 C/C++ 같은 순수 compiler 언어여서 compiler 실행화일이 따로 존재하고 Linker 실행화일이 분명히 따로 존재 합니다.
> 델파이는 개발환경 내의 사용자 옵션에 맞게 compile 옵션을 생성해서 compiler 실행화일을 실행시켜준다고 생각하면 됩니다. Linker 역시 마찬가지죠.
>
> Turbo Pascal 이라는 옛날 Borland 제품을 기억 하실 겁니다. 이 역시 Pascal 언어를 위한 개발 환경인데 Delphi는 이 제품의 연장 선상에 있죠. Borland 사는 표준 Pascal에다 자사 나름대로의 언어적 기능을 향상 시켜왔습니다. 이렇게 형성된 Pascal을 Borland Pascal이라고도 부르죠. Turbo Pascal 6.0(5.5부턴가?) 부터 사용된 Pascal compiler는 객체 지향적인 기능을 집어넣어 Object Pascal이라는 별칭을 갖게 되었죠. 그후 Turbo Pascal 7.0 그리고 Turbo Pascal for Window 1.0 로 이어지고 최종적으로 Delphi 1.0 라는 제품이 나오게 된 것이죠. Delphi 1.0 에서 사용한 Pascal compiler는 Borland Pascal 8.0 라고도 불리었고, 이때서야 비로서 현재 Delphi 에서 사용하는 Object Pascal 언어가 재대로된 모습을 갖추게된 때 입니다. Borland Object Pascal 이 가지는 객체지향적인 기능은 C++ 과 비교 하면 없는 기능이 있는것도 사실입니다. 하지만 이는 단순히 비교 만으로 평가를 할 수 없는 것이, Pascal 언어가 주는 명료함은 C/C++에는 없는 것입니다.
> 현재의 Delphi의 성능은 어느 툴과 비교 했을때 성능면에서 전혀 뒤지지 않는 다고 생각합니다. 혹자는 시스템 프로그래밍은 Visual C++ 로 해야 한다고 생각하는데 윈도우즈 프로그래밍은 운영체제에서 지원하는 API 함수에 의존하기 때문에 특정 툴이 적절하다 할 수는 없다고 봅니다. DLL 파일내의 함수를 Call 할 수만 있으면 되죠.
> 얘기가 길어 졌네요. 하여튼 Delphi 는 순수 machine code를 생성하는 pascal compiler 를 사용하므로 생성된 실행화일의 성능이 뛰어납니다. 개발환경 역시 상당히 직관적이고 WYSWYG(What You See is What You Get)에 충실한 모습을 보여주고 있으며, 특정 분야에만 적절한 툴이 아닌 범용으로 사용될 수 있고 탁월한 생산성을 보여 줄 것입니다.
>
> PS : 저는 INPRISE 직원이 아닙니다.