C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[8128] 제가 생각한 C++ Builder 에디터
계동원 [keidw] 2343 읽음    2003-11-17 18:20

우선, C++ Builder 도 텝 4로 조정 가능합니다.-_-;;
4로 맞춰 놓으면 VC++ 코드 가져오면 그대로 가져와집니다. 맞출필요도 없죠-_-;
(전 빌더 설치하면 가장 먼저 텝부터 4 로 맞춥니다)

게다가 블럭 인덴트도 손에 익으면 아주 편합니다. CTRL + K + I, CTRL + K + U
(뭐 VC 모드로 바꾸면 6.0 부터는 Shift+Tab 도 먹힙니다.
대신 Ctrl + K + I 가 안먹히죠-_-;;;;;;
전, 이제는 빌더쪽 단축키가 익숙해져서 빌더 기본으로 사용합니다.
VC++ 에서도 저 단축키도 동시에 지원해줬으면 할 정도죠 ^^)


정작 불편한 것은 "미치도록 느린" 코드 인사이트 기능이죠.
마우스 잘 못 갔다대면 버벅 거리는 컴퓨터 때문에 아예 꺼놓을 때도 많습니다.
VC++ 의 경우 기본 기능도 괜찮지만 , 비주얼 어시스턴스 깔면 진짜 장난 아니죠-_-;
다행인 것은, C# Builder 에서는 이 속도가 어마어마하게 향상됐다는 점입니다.
(향후 볼랜드의 IDE 가 C# Builder 처럼 바뀐다고 가정하면...)


그 외에도 불편한 것은 백워드,포워드 방향으로 지정해서 검색하는 Search 기능입니다.
이것은 어떻게 보면 코드에서의 검색에 대한 개발사들의 철학의 차이이기는 합니다만,
적어도 검색 기능에 대해서는 볼랜드의 철학이 제게는 맞지 않습니다.
코드 하단부를 보고 있다가, 앞 부분에 있는 코드를 보기 위해 백워드 설정을 해주고
검색을 하는 것 보다는 그냥 F3 눌러주면 되는게 더 편합니다.
제가 최근 2년간 C++ Builder 만을 사용해서 이제는 VC++ 이 더 어색할 정도이지만,
이건 제게는 너무도 불편한 부분이었습니다.
(안타깝게도 이 부분은 C# Builder 에서도 C++ Builder 와 동일합니다. 안바뀌었더군요)
코드 인사이트 느린건 얼마든지 참겠으나, 이 부분 만큼은 너무 불편했습니다.

그리고 find 에 이은 replace 쪽도 철학차이입니다만 제겐 불편해요.
edit1->Text = "abc";
edit2->Text = "def";

여기서 edit1 을 ctrl+c 로 저장하고,
edit2 를 find 해서(블럭 선택 되어있는 상태) ctrl + v 를 누르면

edit1->Text = "abc";
edit2edit1->Text = "def";
가 되죠.

일반적인 에디터는 블럭 지정되어 있는 부분에서 ctrl + v 로 paste 하면,
인서트 모드나 오버라이트 모드에 상관없이 오버라이트를 하는 반면에...
C++ Builder 에서는 무조건 인서트를 하죠. 음-_-;
(아, 블럭을 별도로 지정한 경우에는 오버라이트 합니다만,
검색해서 선택된 블럭을 paste 할 때에만 인서트 합니다.
에디터 옵션에서 Overwrite blocks 체크해도 마찬가지죠.)

또, edit1->Text = "abc";
이 코드에서 Ctrl + Shift + 화살표로 변수를 선택할 때,
일반적인 에디터에서는 edit1 만 선택되는 반면,
C++ Builder 에서는 edit1-> 까지 선택이 됩니다.

array[i] 경우에도, Ctrl + Shift + 화살표로 선택하면
array[ 가 선택됩니다.-_-;;;;;;;;;;;
{ data1, data2, data3 } 의 경우에도 data1, 까지 선택되죠.

이쯤되면 볼랜드 나름대로의 배려라고 볼 수도 있는데...
아무리 생각해봐도 누르던 화살표 키를 한번 더 눌러서 나머지를 선택하는게 더 편합니다.
매번 다시 반대 방향 화살표 눌러서 취소해줘야 되는게 정말 불편하더군요.
이 부분은 사람마다 다 취향이 다를 것 같기는 하지만요.



edit1->Text = "a";
edit2->Text = "a";
edit3->Text = "a";
블럭 인덴트로 Ctrl + K + I 를 3번 눌러서
        edit1->Text = "a";
        edit2->Text = "a";
        edit3->Text = "a";
이렇게 조정했을 때,
edit1->Text 줄에 가서 Delete 키를 눌러 당기면 한칸씩 당겨집니다.

그러나 3줄을 모두 별도로 Tab 3번씩 눌러서 띄워줬을 경우에는
Delete 키로 Ctrl + K + U (Shift+Tab) 를 한 효과를 낼 수 있습니다.
(이 경우도, Use tab charactor 체크했을 경우에만입니다.
만약 이게 체크되어 있지 않으면 텝은 모조리 공백으로 들어가죠.)



UNDO 기능도 불편합니다.
이것 저것 조작해서 맞춰봤지만, 언도하다가 코드 날린적 여러번 있습니다.-_-;

그리고... 폼 윈도우는 UNDO가 안됩니다.-_-;
클릭 실수로 위치 맞춰 놓은거 옮겨 버리면 눈물나죠;;
(이 부분은 C# Builder 에서 바뀐 것으로 보아, UNDO 안되는게 볼랜드의 철학은 아니었을 듯-_-)


물론 C++ Builder 6.0 쪽이 압도적으로 편한 부분도 있습니다.
F12 눌렀을 때, Form 화면으로 전환되는 것,
F11 눌렀을 때, 오브젝트 인스펙터 뜨는거
(이 두가지 단축키는 예술이라고 밖에...)

Ctrl + F6 눌렀을 때, Source 와 Header 가 전환되는거...
이것도 정말 믿을 수 없게 편합니다.

VC++ 에서 폼 에디터 찾으려면 Resource 로 들어가서 해당 윈도우 찾아야 되는데 정말 짜증나죠-_-;
(혹시 VC++ 에도 단축키 기능이 있는지는 모르겠습니다. 제발 좀 있었으면 좋겠습니다-_-;)
그리고 해더 파일도  소스의 초기 부분에 #incldue 부분에서 우측 버튼 누르고 오픈하던가,
ClassView, FileView 등에서 오픈해야 되는데 이것도 정말 불편합니다.
이 부분은 C++ Builder 인터페이스 설계의 섬세함에 상이라도 주고 싶은 부분입니다.
Ctrl + F6 써보면 진짜 편해요. C++ 개발자만을 위한 설계죠.

또 다른 편리함은 Desktop 환경을 저장할 수 있다는겁니다.
더불어 Action Item 기능이 훌륭합니다. (Action Item 꺼내놓고 Desktop 환경 저장하면 되죠)
길어진 소스에서 함수 찾을 때, 클레스에서 직접 찾을 수도 있고,
소스의 맨 처음에 가서 Find 기능으로 :함수이름으로 찾을 수도 있겠으나...
Action Item 덕분에,
함수 내부에 //todo: Function Name
이렇게 해두면 Action Item 을 더블 클릭하는 것만으로 해당 함수로 직행하죠.
(어떤 소스 코드에 있던지 상관없습니다)
이것도 감동먹은 부분 중 하나죠. (물론, .net 에서도 지원하는 기능이긴 합니다만)


빌더 사용자 대부분은 빌더(또는 볼랜드) 광팬일겁니다.
이 사이트에 오는 사람들 배부분 그럴거에요. VC++ 자랑하러 여기까지 오는 사람은 없겠죠-_-;

전 VC++ 을 기준으로 비교한 것이 아니라,
그냥 평범한 에디터를 기준으로 비교했습니다. (물론, 그 에디터들도 VC++ 의 영향을 받았을 수도 있지만요)

빌더 자체의 강력함이 에디터의 단점을 커버하고도 남지만, 제게는 참 불편한 부분이었습니다.
취향에 따라서 제가 얘기한 모든 부분이 다 편하시다는 분들도 계실테지만요^^



박지훈.임프 [cbuilder]   2003-11-17 18:28 X
'상이라도 주고 싶은' 멋진 글이군요. ^^
김태선 [jsdkts]   2003-11-17 18:31 X
좋은 글이네요..
코드 컴플리션 기능은 소스가 몇천라인(토탈 수십만라인)을 넘어가기 시작하면 좀 버벅되고,
차리리 그냥 코드를 입력하는게 더 빠를때도 있지요.
그래도 머리가 한계가 있어 코드 컴플리션 없이 코딩하기는 이제 어렵습니다.
그래서 한쪽에 소스를 몰기 보다는 객체로 소스를 분리하여 해결하고 있습니다.
원래 설계 철학이 객체별로 소스를 유지하는게 좋기도 하지만...
최보현.U&I [uriduri]   2003-11-17 20:38 X
요즘은 VI 도 좋아졌지만 옛날 유닉스의 VI 를 생각 하세요~~
빌더면 어떻고 VC 면 어떠리~~
화살표 먹는것만 해도 어딘데~~
이궁~~ 그때그때 ... 편집기에 익숙해 지지 않나보죠~~
전 반나절이면 .. 금방 ...익숙해지는데~~
돈데크만 [dontechman]   2003-11-17 22:47 X
개인적인 경헙으로 에디터로서는(RAD말구) VC6 + Visual Assist 6 + WndTabs 가 거의 최고의 조합이지 않을까 싶습니다.
사용자 의도에 맞는 코드 컴플리션과, cpp + header 동시에 띄워주는 wndtabs의 간편함은 코딩하기에 너무 편하더군요.
요새는 Eclipse CDT환경에서 작업하고 있는데, 이게 또 굉장한 물건이군요. 다만, RAD도 아닌것이 배워야할게 많은지 그게 좀 불만입니다만.. 하여간 UNIX에서 c++ 작업하시는 분들. emacs도 좋지만 eclipse -CDT 강추입니다.
물탄찬밥 [moolbob]   2003-11-18 00:14 X
Booster도 까세요 더 좋아져염. Cpp <-> Header <-> Dialog 변환이 더 쉬워집니다.
조해진 [mastercho]   2003-11-19 02:14 X
이클립스 C++도 지원하나요?
돈데크만 [dontechman]   2003-11-19 15:00 X
이클립스를 깐후 CDT라는 플러그인을 깔면 됩니다.

+ -

관련 글 리스트
8125 왜 C++Builder IDE 에디터가 불만스러울까요? 김태선 1189 2003/11/17
8128     제가 생각한 C++ Builder 에디터 계동원 2343 2003/11/17
8127     Re:왜 C++Builder IDE 에디터가 불만스러울까요? 박지훈.임프 1248 2003/11/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.