델파이 7 이후의 IDE 기능들 |
MSBuild 빌드 엔진 |
이제 IDE의 빌드 엔진으로 MSBuild를 이용합니다. 이로써 빌드 설정, 빌드 이전/이후 이벤트, 컴맨드라인 빌드와 동일한 IDE 빌드가 가능해졌습니다.
|
파일 익스플로러 |
이제 IDE는 머신 하드 드라이브에 있는 파일들을 액세스할 수 있게 해주는 파일 익스플로러를 가지게 되었습니다.
파일들은 프로젝트에 추가되거나 코드 에디터에서 열 수 있습니다. 파일 브라우저는 다른 도킹 가능 윈도우들처럼 IDE에 도킹될 수 있습니다.
|
라이브 템플릿 |
라이브 템플릿은 템플릿 기반의 코드 삽입 기능을 제공하여 타이핑을 빠르게 해줍니다.
라이브 템플릿은 기본적으로 단순한 XML 파일이므로, 개발자들은 자신의 특정 필요에 따라 자신만의 코드 템플릿을 작성하여 사용할 수 있습니다.
아래 그림은 라이브 템플릿을 이용하여 try...finally 블럭을 생성하는 것을 보여줍니다.
|
블럭 컴플리션 |
블럭 컴플리션은 코드 블럭이 정확하게 닫히도록 해줍니다.
코드 블럭을 시작한 후 리턴 키를 치면 자동으로 블럭을 닫아줍니다. (흔히는 'end;'로 닫습니다)
|
히스토리 탭 |
히스토리 탭은 간단한 소스 컨트롤 시스템의 기능을 합니다. 파일이 저장될 때마다 서브 디렉토리에 백업 파일이 만들어집니다.
IDE는 diff 엔진을 이용하여 이런 이런 변경들을 추적하여 개발자가 이전 버전들을 살펴볼 수 있게 해줍니다.
파일의 이전 버전이 필요한 경우, 그 버전으로 기존의 파일을 교체할 수 있습니다.
아래의 그림은 히스토리 탭이 한 파일의 두 이전 버전을 비교해서 보여주고 있는 모습입니다.
|
강화된 디버깅 기능들 |
다음과 같은 새로운 디버거 기능들이 추가되었습니다.
CPU 뷰가 에디터 탭의 바깥에 독립적으로 열릴 수 있습니다.
디스어셈블리 창에 "Show Opcodes" 로컬 메뉴 항목이 추가되었습니다.
디스어셈블리 창에 "Show Addresses" 로컬 메뉴 항목이 추가되었습니다.
Tools | Options | Debugger Options | Event Log에 "Scroll new events into view" 옵션이 추가되었습니다.
Tools | Options | Debugger Options | Borland Debuggers에 "Ignore non-user breakpoints" 옵션이 추가되었습니다.
툴바를 커스터마이즈할 때 "Notify on language exceptions" 버튼이 추가되었습니다.
이 버튼은 개발자들이 Tools | Options | Debugger Options | Borland Debuggers | Language Exceptions 페이지에 있는
"Notify on Language Exceptions" 옵션을 빠르게 토글할 수 있게 해줍니다.
Ctrl 키를 누르면 개발자가 에디터의 내용을 잘 볼 수 있도록 Evaluator 툴팁이 투명해집니다.
Call Stack 뷰에서 해당 프레임이 디버그 정보를 포함하고 있는지 보여주는 이미지를 보여줍니다.
Call Stack 뷰에서 지정된 스택 프레임 위치에서 개발자들이 브레이크 포인트를 설정할 수 있습니다.
Call Stack 뷰에서 한 항목을 더블 클릭하면 자동으로 로컬 뷰를 동기화해줍니다.
에디터에서 CTRL-F5 핫키를 치면 현재 라인에 설정되어 있는 브레이크 포인트를 활성/비활성화해줍니다.
Project | Options | Debugger 다이얼로그에서 델파이 Win32 등 모든 프로젝트 타입에 대해 "Debug Source Path" 설정을 지정할 수 있습니다.
이전에는 이 설정을 델파이 Win32에서는 Directories/Conditionals 페이지에서 지정할 수 있었으나,
다른 퍼스낼리티에서는 불가능했습니다.
"Automatically close files implicitly opened while debugging" 옵션 설정에 CPU 뷰도 적용되게 되었습니다.
|
VCL 가이드라인 |
VCL 디자이너는 이제 컨트롤의 배치를 대단히 쉽게 해주는 가이드라인을 제공합니다.
폼 디자이너는 컴포넌트들을 정렬하기 쉽도록 컨트롤들이 딱 맞게 정렬되거나 크기가 조절되었을 때 가이드라인을 보여줍니다.
아래 그림은 이 기능이 동작하는 모습을 보여줍니다.
|
코드 폴딩 |
에디터에서 각각의 코드 섹션들을 접어서(fold) 보이지 않게 해둘 수 있습니다.
함수/프로시저들은 기본적으로 접혀질 수 있습니다.
{$REGION} pragma를 이용하면 사용자가 직접 자신의 코드 영역을 접힐 수 있도록 지정할 수 있습니다.
|
SyncEdit |
SyncEdit 기능은 개발자들이 코드에 있는 같은 변수/함수 등의 이름을 동시에 수정할 수 있게 해줍니다.
첫번째 변수/함수 이름을 수정하면, 다른 이름들도 자동으로 동일하게 수정됩니다.
코드 작성자는 탭을 눌러 코드 내의 특정 이름들을 오갈 수도 있습니다.
|
툴 팔레트 검색 |
이제 툴 팔레트에서 검색 및 필터링이 가능합니다.
사용자는 컴포넌트의 이름이나 이름의 일부를 타이핑하여 빠르게 컴포넌트를 찾을 수 있습니다.
또한 툴 팔레트는 대단히 많이 사용자 정의가 가능합니다.
개발자들은 쉽게 자신만의 카테고리를 만들고 컴포넌트를 한 카테고리에서 다른 카테고리로 드래그&드롭할 수 있습니다.
|
에디터 라인 넘버 |
이제 에디터에는 라인 넘버가 표시됩니다. 기본적으로는 10의 배수 라인이 표시되며, 또한 현재 라인의 번호도 표시됩니다.
사용자는 라인 넘버 기능을 꺼둘 수도 있고, 반대로 모든 라인에서 넘버가 표시되도록 할 수도 있습니다.
|
라인 변경 표시 |
거터에는 에디터의 라인들의 상태 정보를 보여줍니다. 마지막으로 저장된 후 변경된 라인은 노란색으로 표시됩니다.
오픈 후 변경되고 저장된 라인들은 녹색으로 표시됩니다.
|
리팩토링 |
리팩토링은 원래의 코드의 동작은 그대로 유지한 채로 기존 코드의 구조를 재구성하고 변경하기 위한 테크닉입니다.
리팩토링은 개발자들이 애플리케이션 코드의 성능과 가독성을 모두 높일 수 있게 해줍니다.
델파이 2007 for Win32는 다음과 같은 리팩토링 동작을 제공합니다.
- Symbol Rename
- Extract Method
- Declare Variable
- Declare Field
- Find References
- Extract Resourcestring
- Find Unit
- Change Parameters
- Introduce Field
- Introduce Variable
- Inline Variable
- Safe Delete
|
통합된 유닛 테스팅 |
델파이 2007 for Win32에는 DUnit이 통합되어 있습니다.
이 프레임워크는 애플리케이션의 클래스 및 메소드들에 대한 테스트 케이스를 만드는 과정을 쉽게 해줍니다.
유닛 테스팅과 함께 리팩토링을 이용하면 애플리케이션의 안정성을 높일 수 있습니다.
작은 수정들이 있을 때마다 코드 전반에 대해 표준 테스트 셋을 테스트해가면 개발 사이클에서 에러들을 좀 더 빨리 잡아낼 수 있습니다.
델파이 2007 IDE는 개발자들이 기존의 코드 라이브러리에 대해 빠르고 쉽게 유닛 테스트를 할 수 있게 해주는 위저드들을 제공합니다.
|
클래스 및 UML 모델링 |
개발자들은 델파이 2007로 전체 UML 및 클래스 모델링을 할 수 있습니다.
여기에는 투-웨이(two-way) 클래스 모델링도 포함됩니다.
|