델파이

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
델파이
개발자 2006년까지 : 볼랜드
2007년부터 : 코드기어
2009년부터 : 엠바카데로
최근 버전 델파이 XE6 / v20.0 / 2014년 4월 16일
운영 체제 윈도 / 맥 오에스 텐 / iOS(32bit) / Android (v2.2 이상)
언어 영어
종류 고속 개발 도구 통합 개발 환경
Delphi's-like logo

엠바카데로 델파이(Embarcadero Delphi Delphi, (이전 이름: 코드기어 델파이, 인프라이즈 델파이, 볼랜드 델파이))는 마이크로소프트 윈도 응용 프로그램을 위한 통합 개발 환경(고속 개발 도구)이며 원래는 볼랜드가 개발하였으나 지금은 엠바카데로사에서 소유하여 개발하고 있다. 오브젝트 파스칼 프로그래밍 언어로부터 파생된 언어인 델파이를 이용한다.[1]

델파이 컴파일러의 최신 버전은 2014년에 발표한 델파이 XE6 이다. 엠바카데로 RAD 스튜디오 XE6 (엠바카데로 RAD 스튜디오 XE6)에 포함되어 있다.

역사[편집]

델파이는 볼랜드사로 이직한 엔더슨 헤즐버그가 개발한 터보 파스칼에서 시작되어 볼랜드 파스칼로 이어졌으며, 1995년에 RAD 개발 환경을 갖춘 델파이로 다시 탄생하였다. 이후 1997년에 볼랜드로부터 개발툴 사업 부문이 코드기어로 분사하였고, 이를 엠바카데로에서 인수하여 버전업을 계속하고 있다. 오브젝트 파스칼 혹은 델파이 언어를 바탕으로 쓴다. 델파이는 윈도 아래에서 모든 부분을 프로그래밍할 수 있는 강력한 언어로 높은 생산성과 간결한 코드가 대표적인 장점이지만, 한편으로는 C++과 비슷한 수준의 저수준의 시스템 프로그래밍도 가능하다.

엔더슨 헤즐버그는 볼랜드사의 수석 엔지니어(Chief Engineer)였으며, 터보 파스칼을 개발, 1996년에 마이크로소프트로 이직하였다.[2]

버전[편집]

  • 볼랜드 델파이 1
  • 볼랜드 델파이 2
  • 볼랜드 델파이 3
  • 볼랜드 델파이 4
  • 볼랜드 델파이 5
  • 카일릭스(Kylix)
  • 볼랜드 델파이 6
  • 볼랜드 델파이 7
  • 볼랜드 델파이 8
  • 볼랜드 델파이 2005
  • 볼랜드 델파이 2006
  • 코드기어 델파이 2007: 인라인 함수 지원. 프랜드 차단 지원.
  • 엠바카드로 델파이 2009: Generics 지원. 유니코드 지원. 익명 메서드 지원.
  • 엠바카드로 델파이 2010: RTTI(Run Time Type Infomation) 강화, Interface 연산자 As, Is 추가, 지연된 라이브러리(DLL, Package)로딩 기능 추가[3]
  • 엠바카드로 델파이 XE
  • 엠바카드로 델파이 XE 2: Osx(32bit), iOS(아이폰 OS) 개발 지원. 마이크로소프트 윈도(32/64bit) 개발 지원
  • 엠바카드로 델파이 XE 3: Record Helper 지원, iOS(아이폰 OS) 개발 지원 중단
  • 엠바카드로 델파이 XE 4: Delphi ARM optimized compiler 추가 및 iOS(아이폰 OS) 개발 지원
  • 엠바카드로 델파이 XE 5: Android 2.2 이상 버전의 개발 지원[4]
  • 엠바카드로 델파이 XE 6: 엡터더링(로컬 wifi환경에서 이기종간의 통신을 지원) 컴포넌트, Windows Thumbnail Toolbars API 지원

기능[편집]

한 가지 중요한 장점은 기반 프레임워크로 뛰어난 객체지향 프레임워크인 비주얼 컴포넌트 라이브러리(VCL)를 사용하고 있다는 점이다. VCL은 델파이1에서부터 최신 버전인 델파이 XE2에 이르기까지 열다섯 개의 버전들을 거치는 동안, 내부의 실제 코딩은 수없이 변했지만 잘 설계된 클래스 구조 덕분에 프로그래밍 인터페이스는 큰 변화없이 계승되어 왔다. 이로 인해 상/하위 호환성이 아주 뛰어나다.

이런 이유로 마이크로소프트 닷넷을 지원하게 된 최신 버전에서도 비주얼 베이직이 VB.NET으로 업그레이드되면서 겪은 대대적인 프로그래밍 방법/스킬의 변화가 없으며, 다른 최신 기술의 적용에도 기존의 프로그래밍 방식/인터페이스를 최대한 재활용함으로써 개발자들이 델파이에 적용된 새로운 기술들을 배우는 과정에서 겪게 되는 어려움인 러닝 커브(learning curve)가 대단히 작다.

델파이 2007에서 추가된 VCL for WEB은 AJAX를 지원하고 있으며, 또한 델파이 2007에서부터는 공식적으로 윈도 비스타를 지원한다. 델파이 2009에서부터는 윈도 비스타지원 강화, 유니코드, 제네릭 / 익명의 메소드(클로져)를 지원한다. 2009 버전에 이르러 기존 방식의 델파이.NET은 단종되고 새로운 방식의 델파이 프리즘이 그 뒤를 잇게 되었다.

2009년 8월 25일 발표된 델파이 2010 버전은 윈도 7 운영체제를 최초로 정식으로 지원하는 개발 도구로서 멀티터치와 제스처를 지원한다. 또한 코드 포매터, 서브버전 통합, IDE 인사이트 등의 IDE 기능 개선이 많이 추가되었다.

2010년 9월 2일 발표된 델파이 XE 버전은 Azure, AWS 클라우드 시스템 지원과, REST 지원이 추가되었다.

2011년 9월 발표된 델파이 XE 2 버전은 OS X, iOS 개발 지원과 DirectXOpenGL 을 사용하는 새로운 UI 프레임워크인 FireMonkey 가 추가되었다.

2012년 9월 발표된 Delphi XE3 버전은 일반 타입 및 구조체를 확장할 수 있는 Record Helper가 추가 되었으며 FireMonkey 프레임을 통한 iOS 개발 지원이 중단 되었다. iOS개발 지원은 Mobile Builder 프로젝트로 이관 되어. XE4버전에서 통합된다. Windows 8 개발은 지원되지만 MetoUI에 최적화 되어 있지 않으며, Windows 8 RT는 지원되지 않는다.

2013년 4월 발표된 델파이 XE4 버전은 델파이 프리즘의 지원이 중단되었고, iOS개발 지원 위하여 LLVM기반의 Delphi ARM optimized compiler가 추가되었으며 ARC를 지원한다.

2013년 9월 발표된 델파이 XE5 버전은 Android(v2.2 / ARM) 개발 지원이 추가되었다.

관련 소프트웨어[편집]

오픈소스 기능

델파이 언어의 특징[편집]

델파이는 마이크로소프트 윈도 기반하에서 모든 부분을 프로그래밍할 수 있는 강력한 언어로 높은 생산성과 간결한 코드가 대표적인 장점이며 C 이외에도 저수준의 시스템 프로그래밍이 가능한 소수의 언어이다. 델파이의 일부로 취급되는 경향이 강해 개발사가 주도적으로 언어의 변화를 이끄는 특징이 있다.

또 현존하는 네이티브 언어(native language) 중 가장 빠른 컴파일 속도도 델파이만의 장점이다. 대표적인 개발 도구로 볼랜드/코드기어의 델파이, 카일릭스가 있다. 이외에도 프리 파스칼도 고유한 오브젝트 파스칼 외에 델파이를 컴파일할 수 있도록 지원한다. 델파이는 향후 멀티플랫폼을 비전으로 삼고 윈도 운영 체제 이외에 다른 플랫폼들을 지원하는 방향으로 개발이 진행되고 있다. 현재 개발이 가능한 플랫폼으로는 OS XiOS가 있으며, 안드로이드가 지원 계획이 확정 되어 있다.

이전의 오브젝트 파스칼과의 차이[편집]

델파이 컴파일러의 지속적인 언어 확장을 통해 이전의 오브젝트 파스칼(터보 파스칼)의 제한을 서서히 벗어나기 시작하며 델파이에서 사용하는 언어를 오브젝트 파스칼이 아닌 델파이 프로그래밍 언어로 부르게 된다.

아래는 이전의 오브젝트 파스칼에서 지원하지 않으나 델파이 컴파일러가 지원하는 특징이다.

  • 멀티 플랫폼(Windows 32/64bit, OSX, iOS, Android) 지원
  • 클래스 내의 선언부
  • 클래스 사이의 친구관계 막기
  • 최종 상속자
  • 레코드가 메소드를 포함
  • 인라인 함수
  • 연산자 오버로드
  • for 문의 반복자 사용
  • 제네릭_프로그래밍 지원
  • 유니코드(UTF-16) 지원
  • 익명의 함수 지원
  • Helper를 통한 타입 확장

같이 보기[편집]

주석[편집]

  1. Introducing Borland Delphi - Page 1/3
  2. Anders Hejlsberg at borland
  3. What's New in Delphi and C++Builder 2010
  4. [1]
  5. Application Development | RAD Studio XE | C++, Delphi & PHP

바깥 고리[편집]