C++Builder 6와 VC 6를 비교하시는 거죠?
C++Builder의 다음버전의 로드맵은 아직 명확하지 않고, VC도 닷넷으로 넘어가면서 다시 IDE가 달라지구요.
또 현재 대부분의 개발자들이 사용하는 버전은 역시 둘다 6 버전이니까요.
저도 둘다 6 버전의 상태라고 보고 말을 하겠습니다.
뭐 C++Builder의 에디터(델파이 것도 마찬가지죠)가 VC에 비해 기능이 떨어지는 것은 분명한 사실입니다.
그래서 VC에 익숙한 많은 분들이 C++Builder로 넘어오면 가장 불편해하는 부분이 바로 에디터입니다.
물론 상당부분은 핫키가 다르거나 몰라서 그런 경우도 있습니다.
가장 많이 지적되는 블럭 인덴트 기능입니다. 여러 라인을 블럭으로 설정하고 탭키를 치면 몽땅 인덴트가
추가되는 기능이죠. (김태선님은 아마도 좀 잘못 이해하신 듯 하네요)
공식적으로 언급된 곳이 없어서 C++Builder의 IDE에서 그런 기능이 있다는 걸 모르시는 분들이 많은데,
사실 블럭 인덴트 기능은 C++Builder 에디터에도 있습니다. 사실 많은 분들이 사용하고 있구요.
블럭 인덴트는 컨트롤+시프트+I 키를 치면 되고, 블럭 언인덴트는 컨트롤+시프트+U 키입니다.
기능이 있어도 키가 달라서 맘에 안된다면, 에디터 환경설정에서 키 매핑을 비주얼 스튜디오 에뮬레이션으로
설정하면 됩니다. 블럭 인덴트 기능을 포함해서 모든 에디터 핫키가 VC 스타일로 바뀝니다.
하지만 실제로 이렇게 많이 알려지지 않은 기능 뿐만 아니라 실제로도 C++Builder의 에디터가 VC 등 MS의
에디터보다 기능이 떨어지는 것도 사실입니다. 그런데 여기에는 이유가 있지요.
C++Builder 개발자의 입장에서 보면, VC는 한마디로 코딩 노가다 툴입니다. C++Builder의 RAD 지원으로 많은
코딩을 줄일 수 있는 것은 물론이고, MFC 프레임워크 자체가 좀 덜떨어지게 만들어져 있어서 매번 프로젝트를
생성할 때마다 실제로 필요한 것보다 많은 코드가 필요하게 됩니다. 뭐 위저드들로 직접 입력을 줄여준다고
해도 개발자가 관리해야 할 코드의 절대량이 많아지는 것은 분명한 사실이지요.
자동 생성된 코드 외에도, C++Builder에서는 너무나 간단히 코드 몇줄로 해결될 문제(가끔은 한줄의 코드조차
필요없는 경우도 있죠)도 VC에서는 수십줄 이상의 코드로 노가다를 해야 합니다.
이것이 VC의 에디터가 계속 발전하지 않을 수가 없는 이유입니다. 대단히 단순하고 반복적인 작업들조차도
개발의 모든 작업에 있어 전적으로 에디터상의 코드에 의존하기 때문이죠. VC와 같은 코드만의 개발툴에서는
아주 조금이라도 개선의 여지가 있다면 채용하지 않을 수가 없습니다. 코딩 노가다의 스트레스가 엄청나기
때문이죠.
거꾸로 보면, VC라는 개발툴에서는 사실 IDE라는 것 자체의 기능이 반 이상이 에디터와 관련되어 있습니다.
애플리케이션 위저드 등의 다양한 위저드들도 모두 에디터 직접 입력을 조금이나마 줄여주려는 시도일 뿐이구요.
그런 위저드들이 없더라도 기본 프로젝트를 만들어놓고 복사해다 쓰면 되지 않겠습니까? 그러니 VC에서는
매번 IDE를 업그레이드할 때마다 그 대부분이 에디터와 관련이 없을 수가 없습니다.
수차 말하지만, IDE라는 개념 자체는 볼랜드에서 만든 것이고, MS의 VC나 VB, 사이베이스의 파워빌더 등
다른 모든 개발툴들은 볼랜드의 IDE를 모방한 것입니다. 따라서 에디터와 컴파일러, 디버거 등을 통합한
IDE의 개념은 볼랜드가 표준이죠. (MS의 개발툴 중 처음으로 IDE를 채용했던 것이 MS C/C++ 7.0인데, 볼랜드의
냄새가 나는 IDE라는 용어를 쓰기 싫어서 PWB라는 웃기는 이름을 붙였었죠. 프로그래머 워크벤치라던가?)
사용하는 사람의 관점에 따라 다를 수 있는 문제이지만, 제 관점에서는 볼랜드의 IDE는 이미 충분한 완성도를
가지고 있다고 생각되고, 에디터에 신경쓸 여력이 있다면 다른 더 중요한 기능들에 신경을 써야 할 것입니다.
뭐, VC 6의 IDE야 에디터를 제외하면 그다지 기능이랄 것이 없으니 다른 어디를 업그레이드하겠습니까. ^^
김태선 님이 쓰신 글 :
: 가장 많은 불만은 Tab 기능 때문인 것 같습니다.
: 보통 VC는 4칸 탭이 기본이고, 이것으로 Indent를 하는데,
: 써 보면 편리하긴 합니다.
:
: 이 4칸 탭을 씨빌더에서 하려고 하면 조금 짜증나는 감이 있죠..
: 다른 소스를 붙여 넣기 하려면 표준 탭크기를 써야 하는데,
: 4칸을 억지로 맞추려면 스페이스 누르는게 불편하죠..
:
: 그렇지만, 볼랜드 개발자들처럼 2칸을 기본 탭으로 하면,
: 에디팅하는데 전혀 불편함을 못 느낍니다.
: 저는 씨빌더 이전 모든 툴에서도 4칸을 Indent의 기본으로 썼지만,
: 씨빌더에서는 스페이스를 누르는 수고가 많고,
: 소스를 한눈에 보기에는 아무래도 2칸 탭이 훨씬 좋아
: 2칸을 기본으로 삼은 이후는 전혀 불편한 것을 느끼지 못하고 있습니다.
:
: VC가 손에 익은 분들은 너무 불편하다고 하지만, 진짜 불편했다면
: 어렵지도 않은 기능을 볼랜드 개발자들이 개선하지 않았을리가 없지 않겠습니까?
:
: 막강한 빌더이지만 에디터는 엉망이더라.. 가 아닙니다.
: 빌더 스타일로 코딩 습관을 조금 바꾸면 전혀 불편함이 없어집니다.
: 오히려 불편할때는 VC의 소스를 붙일때, 제 멋대로?인 탭을 맞추느라 수고스러울때가 많답니다.
:
|
그런데, 블럭 인덴트 기능은 제가 잘 쓰는 기능입니다.
그걸 잘 모르기 때문에 불편함을 느끼는 사람이 많은 것 같습니다.