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

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[3129] Re:빌더에 대한 짧은 생각 ...
박지훈.임프 [cbuilder] 2552 읽음    2002-01-09 09:54
"갑자기 어제 읽은 말에서 " RAD & 표준 " 이라는 문제에 봉착하다 보니"
이런 글을 봤는데... 어디서 보신 건지요. 제목으로봐선 내용을 짐작하기가 어렵네요.
RAD에도 표준이 있다? RAD는 표준과 거리가 멀다? 아니면 RAD를 쓰면서도 표준을 지켜야 하느냐 마느냐?
어느쪽이죠?

머리를 긁적거리다가... 제 맘대로, 머리에 떠오르는대로 써보겠습니다.
일단.. 하나 짚고 넘어가면, C++Builder가 ANSI/ISO C++ 표준을 가장 잘 준수하는 C++ 컴파일러로 정평이
나있다는 건 잘 아시겠죠.

일반적으로 RAD 프로그래밍은 순수한 코딩 기반 프로그래밍에 비해 "표준"의 개념에서는 좀 거리가 있는데,
RAD의 개념상 빠른 구현이 최고의 지상목표이기 때문이겠죠.
물론 이론적인 베이스와 새로 나오는 여러 설계 방법들이 있겠지만,
그런 것들이 구현 자체의 속도와는 좀 무관한 면이 있습니다.
설계 방법론들은 대체로 디버깅 혹은 유지/보수에 치중하는 면이 있지요. (당연한간가? --;;)

C++Builder(그리고 델파이와 JBuilder도 마찬가지로)는 Two-way-tool이라는 컨셉으로 만들어진 것입니다.
C++Builder(지금부터는 델파이와 JBuilder를 뭉뚱그려 말하겠음)는 비주얼베이직이나 파워빌더처럼
처음부터 RAD에서 시작한 개발툴이 아니라, 순수한 코딩기반 개발툴인 볼랜드C++(볼랜드파스칼, 자바)에서
출발해서 RAD 프로그래밍 기법이 추가된 것입니다.
Two-way-tool이라는 개념은 이렇게 순수 코딩기반 프로그래밍과 RAD 프로그래밍을 동시에 할 수 있고,
더욱이 한 모듈 내에서조차 섞어가며 작업을 할 수 있다는 것이죠.

그런데 이런 Two-way-tool의 특성 때문에, 사용자에게는 가끔은 불필요할 수도 있는 선택권이 주어지게 됩니다.
비주얼베이직 프로그래머나 비주얼C++ 프로그래머의 경우, API로 코딩할 것인지 아니면 컴퍼넌트만 가지고
코딩할 것인지 고민할 일이 그리 많지 않습니다.

비주얼베이직에서 API 코딩을 한다고 하더라도 대단히 한정적이고 원리 그대로 구현하는 것은 거의 불가능에
가깝겠구요. 비주얼C++의 경우에는 RAD 프로그래밍 방법이 거의 지원되지 않지요.

그러니 이런 MS 툴을 쓰려고 한다면, 먼저 개발툴을 선택했다면 프로그래밍 방법이 거의 결정되어버리고,
프로그래밍 방법을 바꾸려고 한다면 개발툴을 바꾸어야 하니 고민할 일이 오히려 적어지죠.

그런데 C++Builder(역시 델파이와 JBuilder를 포함해서)를 쓰게 되면, 거의 모든 작업을 하는 데 있어서
구현하는 방법을 선택하는 폭이 엄청나게 넓어집니다.
개발자가 쉽게, 그리고 빠르게 구현하려면 다소 코딩은 무식하게 하더라도 RAD 방법으로 일관하여 만들 수도
있겠고, 퍼포먼스나 기타 수준을 높이겠다고 맘먹으면 얼마든지 복잡한 기법과 이론을 써먹을 수 있습니다.

C++Builder는 RAD 기법과 코딩기법을 반반씩 섞어놓은 개발툴이 아니란 것을 잊지 마시기 바랍니다.
섞어놓은 것이 아니라, C++Builder는 그 자체로서 완전한 RAD 툴이기도 하고, 완전한 코딩기반 툴이기도 합니다.
기호와 필요에 따라, 완전히 RAD로 개발할 수도, 코딩만으로 개발할 수도 있는 거지요.

이전에 제가, "C++Builder를 비주얼베이직처럼 사용하지 말라" 라고 했다고 하셨지요.
지금 찾아볼 수도 없을 만큼 꽤 오래된 글인 거 같은데, 어쨌든 제가 그런 말을 했던 것은 기억이 나네요.
그때 주변 설명을 어떻게 했는지는 잘 기억이 안납니다만, 아마도 이런 생각에서 말했던 것일 겁니다.
비주얼베이직처럼 C++Builder를 쓸 것 같으면 차라리 비주얼베이직을 쓰는 것이 낫다는 것입니다.

비주얼베이직은 그 능력내에서는 최적화된 RAD 툴입니다.
성능이나 기타 문제로 코딩으로 해결해야만 하는 문제를 거의 겪지 않는 분야에 계시다면,
(혹은 그런 분야를 꿈꾸신다면) 비주얼베이직이 최고의 툴입니다.
또 그 중에서도 몇몇 특정한 데이터베이스 작업을 목적으로는 파워빌더가 단연 뛰어납니다.

먼저번에 제가 비주얼베이직과 C++Builder를 들어서 했던 말을 너무 과대 해석하지는 마십시오.
C++Builder를 쓴다면 당연히 비주얼베이직보다 나은 기법을 써야 한다는 것이 절대 아닙니다.
C++Builder를 쓰면서 복잡한 코딩과 이론만으로 무장해야 한다면 그또한 C++Builder를 비주얼C++의 격으로
떨어뜨리는 꼴이지요.

어떻게 코딩하든 모든 것은 철저하게 개발자의 몫입니다.
C++Builder로 비주얼베이직 코딩을 하더라도 제가 "앗! 그거 아니야!" 할 꺼리가 아닙니다.
저는 제 경험과 지식을 기반으로 글을 썼던 것이고, 그것을 어떻게 받아들이냐 하는 것도 역시 여러분의 몫이랍니다.

단순히 개인적으로 좋아서, 업무의 성격에 따라서, 혹은 회사에서 요구해서,
등등 장광우님께서 비주얼베이직이 아닌 C++Builder를 선택해서 여기까지 오신 데는 이유가 있을 겁니다.
한번쯤 그 이유를 돌아보시는 것도 도움이 되리라는 생각이 듭니다.

앗~ 넘 딱딱하게 글이 맺어지네요. 이럼 안되는데.

프로그래밍이란 것이 원래, 할수록 어려워지는 것입니다. 빌더라고 해서 다르지는 않지요.
장광우님께 지금 필요한 것은 잠시 가쁜 숨을 고르면서 뒤를 돌아볼 잠깐의 여유일 것 같습니다.

참 그리고...
빌더1을 만들기전에 볼랜드에서 했던 설문조사 얘기를 하셨는데요.
뭐 비슷한 말로 들리실 수도 있겠습니다만, 그때의 설문내용은 좀 달랐지요.

"표준을 지키는 것이 중요하냐?"
  -> "아냐 안중요해"

이랬던 것이 아니라...

"RAD C++을 만들어내기 위해 최소의 키워드를 추가해서 C++을 더 확장해도 되겠냐?"
  -> "오케바리~"

이랬던 것입니다. (제 기억이 맞다면.. 가물가물)
그리고 실제로 그 이후에 발표되었던 C++Builder 1 버전부터 현재의 5버전, 그리고 곧 발표될 6버전에서도
이런 관념(C++을 바꾸지 않고 키워드를 추가한다)은 변함이 없답니다.


역쉬 빌더 & 볼랜드를 이빠이 좋아하는 또 한넘이...



허접.indio 님이 쓰신 글 :
: 안녕하세요.. 이제 한 2달만 더 빌더를 사용하면.. 1년째 빌더를 사용하게 되는군요... ^^;
: 지난 1년 가까운 시간동안 빌더를 참으로 잘(?) 사용했습니다...
: 하면 할수록 어려워지는 것이 빌더인 것 같아서 좀 맘이 아프기도 합니다.. -.-;
:
: 어제 평소에 보지도 않던 빌더 책을 다시 한번 찬찬히 읽어보았습니다... 전에는 보이지 않던 말들이 왜 이제는 이렇게 잘보이는지... --;
: 그 중에 이런 말이 있었습니다.. 저에게는 이말이 가장 생각해볼만한 문제였던것 같습니다...
:
: C++ Builder 1 을 만들때 빌더사용자에게 설문조사를 했다고 했습니다.. 어플리케이션을 개발할때 뭐가 중요한지.. 표준 C++ 를 지켜나가는 것이 중요한지 RAD 가 중요한지..
: 설문조사에 응한 사람중 80%가 이제는 더 이상 표준 C++ 을 지키는 것은 중요하지 않다고 대답을 했다고 하더군요...
:
: 많은 사람들의 의견이니까.. 뭔가가 있겠죠... --; ( 정말 RAD 가 중요한지.... 전 여기에 별로 동의하지 않습니다... )
: 전 요즘에 다시 학교에서 배우던 C++ 책들을 보고 있습니다... C++ 에 대해서 아주 기초적인 내용들을 다루던 책들이죠... 그리고 그것과 같이 해서 Effective C++ 이라는 책을 같이 보고 있습니다...
: 학교에서 배우던 C++ 이라는 책에서조차 제가 잊고 있었던... 제가 모르고 있었던.. 제가 잘못알고 있었던 것들이 많더군요... 그리고 Effective C++ 이라는 책은 좋다는 소릴 많이 들을만큼 정말 내용이 기가 막히더군요..
:
: 이런 책들을 지금 접하고 있는 이유는 C++ Builder 를 1년 가까이 해 오고 있는데도 불구하고.. Ansi C++ 에 대해서는 그렇게 잘 알지 못하고 있다는 느낌과... 제가 C++을 하고 있는건지.. VCL과 컴포넌트들을 사용하는 법을 배우고 있는건지 구분이 잘 안가서 였습니다...
:
: 언젠가 BCBDN 에서 임프님의 글을 읽어보니... 빌더를 비주얼 베이직처럼 사용하는 사람이 되지 말라는 말이 있더군요... 그런데.. 솔직히 여기 질문을 올리는 분들 거의 대부분과 답변하는 분들의 많은 분들은 정말 빌더를 비주얼베이직처럼 사용하지 않고 빌더답게 사용하고 있을까 하는 의문이 듭니다... 과연 여기에서 답변을 올리고 질문을 올리시는 분들 중에서 얼마나 많은 분들이 흔히 말하는 C++ 이라는 특성을 살려가면서 프로그래밍을 하는지...
:
: 베이스클래스를 만들고 이를 상속받고... 순수가상함수를 만들고 자손에서 이를 재정의 하고... 어떤 특성들을 인터페이스로 빼야할지... 이런것들을 정말 생각하면서... 프로그래밍을 하시는 분들이 얼마나 되는지...
:
: 여기에 그런분들이 많이 없다는 말은 "절대" 아닙니다... 다만 제가 실력이 없고... 아직은 빌더에 대한 특성을 많이 알지 못해... 이런 생각이 들고 있는 것 같습니다....
:
: 전 빌더포럼에 계속되는 반복 질문과 답변도 좋지만.. 빌더를 어떻게 사용해야 효율적으로 사용할 수 있을지... 클래스는 어떻게 설계를 해야 유지, 보수에 좋을지... 클래스들간의 관계를 어떤식으로 맺어야 할지 등등의 원론적인 얘기를 할 수 있는 곳이 있었으면 좋겠다는 생각을 많이 했습니다... 그냥 "어떤 컴포넌트에 어떤 속성을 바꾸면 어떻게 된다..." 라는 얘기보다는 말입니다...
:
: 빌더가 컴포넌트 위주의 툴이다보니... 클래스 설계부터 시작해서 표준 C++ 의 개념을 적용시키려니 참으로 난감한게 많습니다... 제가 아직은 많이 부족해서겠죠... 빌더가 좋은 툴이라는 것은 저도 잘 알고 있습니다...
: 다만 갑자기 어제 읽은 말에서 " RAD & 표준 " 이라는 문제에 봉착하다 보니 여기까지 생각이 왔습니다...
:
: 고수님들께서.. 이런 딜레마(?)에 빠진 저에게 도움을 좀 주십시요... 빌더를 사용해서도 RAD 뿐만 아니라 클래스 설계부터 해서 C++ 의 특성들을 충분히 살릴 수 있다고 얘기를 좀 해 주십시요...ㅜ.ㅜ
:
: 빌더 & 볼랜드를 이빠이 좋아하는 한 넘이... --;

+ -

관련 글 리스트
3117 빌더에 대한 짧은 생각 ... 허접.indio 2598 2002/01/08
3145     Re: 다른 허접이의 생각... 타락천사 2449 2002/01/11
3129     Re:빌더에 대한 짧은 생각 ... 박지훈.임프 2552 2002/01/09
3118     Re:빌더에 대한 짧은 생각 ... 최보현.U&I 2541 2002/01/08
3119         Re:Re:빌더에 대한 짧은 생각 ... 서영재 2536 2002/01/08
3120             Re:Re:Re:빌더에 대한 짧은 생각 ... 돈데크만 2582 2002/01/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.