MSVC vs BCB
Yes, I was a fan of BCB for a long time with just about everything I did in windows. I neved had used MSVC, though I had some bad experiences with some 80''s MS compilers. I couldn''t understand why people insisted that MSVC is better. Now, I have been using MSVC6 for six months, at work, learning it.
And guess what?
I *still* prefer BCB.
It seems that most start to use MSVC just because it is ''de facto'' standard. No problem there. But when presented an option - BCB - they try it once, never bothering to really find out it''s capabilities. Now that I''ve been using MSVC for a while, let me share some of my experiences.
First, the IDE. Yes, it''s neat. But it simply isn''t effective. When I code, I rarely have less than ten source/header files open. Because of MDI-structure, it is hopeless to try to track all those open windows. Yes, there is file view. Tried to use that when you have dozens of files in project? It''s hopeless. What I want is static (on-screen, not in menu) list that shows all open windows and lets me pick one I want to edit, just like BCB does it. Okay, some might complain that having only one window open (BCB-way) isn''t effective. There''s two problems with that: 1) BCB *does* let you have multiple source windows open, and 2) 99% of time you don''t *need* to see two source files at once.
Another thing I missed with MSVC''s editor was BCB''s key shortcut to switch between source and header file with single key press. This reduces even more the need to have multiple windows open.
Granted, however, that MSVC''s editor has it''s strengths, and in overall is at par with BCB.
Okay, I managed to write severan kloc of code. Now I need to find the bugs... Then it hit me. MSVC''s debugger simply sucks.
Let''s see, there was an exception? Any nice debugger would stop *at the point where exception was thrown* (if it is uncaught). But no, not MSVC. I recently spent an hour tracing back one exception I could have found in a minute with BCB. Talking about unnecessary work...
Now, I found out that in a DLL something goes wrong after some 20 iterations. So, I set breakpoint, set breakpoint properties to stop when certain variable has certain value... No, wait, MSVC can''t do that! (again, points to BCB...)
Another trip to coffee pot to recharge my supply of swear words. How am I supposed to get anything done with IDE like this...?
Finally, however that problem, too, was solved.
Then the next problem. With optimizations my program crashes when it''s being shut down. I spent two whole days tracing that bug, and finally found out that it''s either compiler or standard library bug, I''m not sure which one. Now, if only MSVC would be ANSI compliant, I could try the code in a Real C++ compiler (say, GCC or even BCB), and find out exactly where the problem is. Unfortunately, brainless MS "extensions" make this kind of trivial task next to impossible.
Oh, how I miss the trouble-free days of BCB programming, when everything worked so smoothly...
...
It seems that I was unable to control myself and results seems more like a rant than fair comparation. Sorry about that, but I still can''t understand why some religiously worship MSVC as "best" environment without even bothering to seriously check the alternatives.
~~~ "'impossible' is a word in the dictonary of fools" --Napoleon
May 11, 2001 06:48 AM
There''s just ONE thing wrong with BCB : EDITOR It is a superb program, but the editor simply sucks compared to Visual C++''s editor....
Its true... the editor in MSVC is better. I now put forth a idea...
lets write an IDE extension in BCB to MIMIC the MSCV editor... specifally the ''box'' with the members and such. What do you think?
------------------------------
BCB DX Library - RAD C++ Game development for BCB
lets write an IDE extension in BCB to MIMIC the MSCV editor... specifally the ''box'' with the members and such. What do you think?
------------------------------
BCB DX Library - RAD C++ Game development for BCB
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement