볼랜드가 제시하고 있는 개발 방향은 적어도 저에게 만큼은 개념조차 도입되지 않은것이 많습니다.
define - design - develop - test - deploy - manage
영세적인 개발환경도 이유가 되겠지만 소프트웨어 엔지니어링쪽의 이론은 받아들이는 입장이지, 만들어나가는 입장이 아닌 것도 주된 원인이 될것입니다. 게다가 보아왔듯이 볼랜드가 제시한 ALM은 현존하는 이론을 충실히 적용해 왔었던 툴들의 통합환경입니다. 어떤 방식으로든 개별적으로 사용되어 왔었고, 사용될 것들이었다는 겁니다. 이러한 ALM 을 진행하기 위해 볼랜드는 기존의 볼랜드를 벗어나려는 노력을 하고 있는 것 같습니다. 마치 큰집으로 이사가기 위해 집과 가구는 구해놓고, 전에 살던 집의 물건은 아무리 애지중지하던 것이라도 창고에 정리해놓던지, 아니면 작은 방하나를 마련해 줄까 말까 고민하는 집주인처럼 말입니다.
이러한 과정에서 저에게 다가오는 부분은 design과 develop 부분의 변화입니다.
먼저 design 부분은 작년에 볼랜드가 투게더사를 인수했을 당시, 투게더와 BCB6, 즉 UML+VCL을 꿈꾸며 투게더를 사용하기 시작했습니다. UML도 습득하고, 실제 프로젝트는 임베디드 쪽이었지만 열심히 적용을 해서 design을 체계적으로 했습니다. 해서 현재 진행되고 있는 design 부분에 대해서는 별불만은 없습니다. UML로 design하고 투게더의 기술인 live source로 C++ 소스가 동기적으로 생성 및 연결이 되고, 문서화까지 될 것이니까 말입니다. (현재되고 있는지는 확인은 못해봤고, 그런 버젼-Together Edition for C++BuilderX-이 있다는 것은 봤습니다.)
하지만 develop 부분에 있어서는 불만이 있습니다. 즉 VCL을 지원하지 않는 바람에, UI를 꾸미기가 난감해졌다는 겁니다. C++BuilderX 를 사용해보고 깜짝 놀랐습니다. 왜 이렇게 다양한 크로스 플랫폼을 지원하는데, 제대로 사용할 만 한것이 없을까하고 말입니다. 제가 원하는 것은 SUN도 Linux도 아닙니다. 다만 Windows환경에서 클라이언트와 저를 위한 툴을 강력하고 빠르게 만들기를 원하는 것입니다. 현재 지원을 해주지 않을뿐더러 앞으로도 지원을 하지 않을 것 같다는게 이해가 되지 않습니다. 이미 완성해놓은 플랫폼을 왜 애써서 버릴려고 하는가하는 부분입니다. 작은방이라도 만들어서 필요한 사람은 그방을 이용할 수 있게 해야할 겁니다. 이것이 가능해져야만, 바라던 투게더와 BCB6의 결합이 이루어 집니다. 어떤 형태로 나오게 될까 인수 당시부터 기대했었고, Together Edition for C++BuilderX 형태로 나오고 나서 VCL을 지원하지 않는다는 것을 보고 안타까워했습니다.
또한 다양한 크로스 플랫폼을 지원하면서, 많은 컴파일러에 대한 확장과 프로세서에 대한 포용을 동시에 할수있게 된것 같습니다. 하지만 이부분도 당연히 불만이 있습니다. 주로 많이 사용하는 것에 대한 확장이라는 겁니다. 현재 임베디드용으로 다른 크로스 컴파일러를 사용하고 있습니다만, 그것을 C++BuilderX에서 사용할 수는 없을것입니다. 모바일 환경을 지원하듯이 마이크로 컨트롤러에 대한 지원을 해주면 얼마나 좋을 까요. 개발은 힘들테니 확장할 수 있는 여지만 있다면 꽁수를 부려볼텐데요.
확장성은 있지만 모든 부분을 포용할 수는 없을 것이라는 겁니다. 그렇다면 최소한 기존의 개발자가 흡족해하며 사용해왔던 부분에 대한 포용을 바랍니다. 그렇지않다면 최소한 저는 BCB6를 사용할 수 있을때까지 사용할 것 같습니다. 그 이상의 질을 보장해주는 툴이 없기 때문입니다. 그 외의 부분에 대해서는 ALM의 일부를 수용할 수도 있겠지요. 계속적으로 불편하긴하겠지만요. 하지만 전체적인 이전을 할 의사는 없습니다. 볼랜드가 바라는것은 이런 부분적인 이동이 아닐 것 입니다.
마지막으로 저의 바램을 정리하겠습니다.
1. C++BuilderX의 차기 버젼에서 VCL 지원.
>> New -> Project -> New Application with VCL 형태로...
2. Together와 C++BuilderX의 완전 통합.
>> 따로 버젼이 있는 것으로 알고 있지만, 따로 두지 않고 한 버젼으로 갔으면 합니다.
3. 프로세서 개발사와 연계하여, 프로세서 라이브러리를 확장할 수 있게 지원.
>> 이왕 크로스 플랫폼을 지향한다면, 프로세서 라이브러리를 Add-on 할 수 있게 지원
>> 개발자가 프로세서 환경 파일을 만들어서 Add-on할 수 있게 지원
|