User forums > General (but related to Code::Blocks)

dev student in distress...

<< < (2/5) > >>

ouch:
well I've used VC++ 6.0 profesional edition for years, it's compiler is showing it's age though so I went to find something better. I found Visual Studio express 9.0, and codeblocks.

here is my review of each:

VC++ 6.0: probably the "tank" of the software developer. It's old, slow, but will pound out working code in relative (well at least mild ;) ) comfort to the programmer every time. It's debugger while being very nice, is lacking the features of the newer v9.0 counterparts. It's form builder is in classic microsoft fation very well designed. your imagination is the limit and it allows you to hook code up to controls fairly quickly. It's compiler is very unoptimized. It's slow, insecure, and was made before multiple cores were all the rage. The compiler also has some anoying bugs in it if you push the compiler to it's limits.

Visual Studio express 9.0: From old run down "tank" to high performance luxury ferrari... the IDE has more comeforts to the programmer than 6.0. It does this by automateing a lot of the tedius stuff. the compiler is lightning fast, very optimized, and from what I can see is at least relatively secure. The express edition doesn't come with form builder but I suspect it is very, very, good. However what takes the cake here is the debugger. I don't think you will find a better one for any environment.

Microsoft stuff however only runs on microsoft stuff... In todays world with vista scaring people into ubuntu (linux) world, this is a huge problem.

Codeblocks: The IDE that tries to be everything for everybody. It seems it prefers you to use mingw along with the GDB debugger and wxWidgets for the GUI so I'll rate it with that configuration as it's also what I'm currently useing. the IDE has quite a few features. it seems to take features from an assortment of IDE's and throws them all together in one. As such, it usually has some feature to allow you to do what you want. Once you figure out all these features you move around in your code fairly fast with relative ease and actually code a bit faster in codeblocks than either microsoft products. It however has one problem assoiciated with all wxWidget apps... it consumes CPU cysles just being open. it takes 20-25% of my processor to just sit there. I can't help but feel this effects comiple time and my projects performance. wxSmith's form builder while very easy to use but doesn't support all the wxWidget controls, and tries to automate things you wish it wouldn't... However for programmers like me just starting out with wxWidgets it's a real life saver in understanding how wxWidgets controls function in comparison to microsoft's controls. mingw is well... it's free I guess... If 6.0 is a tank, and 9.0 is a ferrari, mingw is some old broken down rust mobile held together with bungie cords, tie straps, and old extension cords used as rope... It's painfully slow (slowest compiler I've ever come across actually) what takes minuates in mingw compiles instantly in the 9.0 compiler and seconds in the 6.0 compiler. It's horribly optimized, allowing for some very slow, large file sizes being outputed. You also have to take great care in knowing which build has what switches enabled. 1 switch can mean the difference between a 1 min compile and a 1 hour compile. the GDB debugger is well... it's free too... ;) I often find myself altering my code just so I can better see what is going on in the debugger. It's gotten so bad that now I debug my programs with a series of status bar messages and opt to avoid the debugger if at all possible...

So what am I useing for main dev work now? Codeblocks with mingw, gdb, and wxWidgets. Why is that considering mingw and GDB suck so horrible it boggles the human mind? well Codeblocks has a few features the others do not.

1: designed to support cross platforming so well the IDE itself is cross platform capable.

2: it can use practically any compiler out there. So I'm not suck with mingw forever. (I seriously don't know how much longer I can put up with it. I just hate it so much... but that little voice in my head says: "But... but, It's free man! FREEEEE!" :lol:)

3: it's interface is more laid back, better organized and friendlier. I don't have remember what 3 submenus I have to go too to configure the second submenu of the first submenu of that 2nd menu item... (classic microsoft visual studio problem right there :) )

If real estate ever picks up again I think I might try hooking codeblocks up to intels compiler and giving that a shot. But till then I'll just have to keep waiting for that freaking mingw to compile such simple code structures...

Alexis:

--- Quote ---It's horribly optimized, allowing for some very slow, large file sizes being outputed. You also have to take great care in knowing which build has what switches enabled. 1 switch can mean the difference between a 1 min compile and a 1 hour compile. the GDB debugger is well...
--- End quote ---
Well, with the last MingGW version and using precompiled headers, the compilation/link process has a very decent speed compared to VC 8.0's one. I don't see the huge difference you depict.

troels:

--- Quote from: Alexis on April 22, 2008, 10:21:03 am ---MingGW ...using precompiled headers...decent speed compared to VC 8.0's one. I don't see the huge difference you depict.

--- End quote ---
I see it here, absolutely, all the time. Sadly, ouch is right on all [speed] points.
Using pch changes little, and besides, MS has had much better (fast) pch support for 10+ years. AFAIK MinGW supports batch compilation (more than one source file as parameter to gcc.exe) as MS does, if CB utilized this speed would probably improve somewhat.

Edit:

--- Quote from: ouch on April 22, 2008, 12:20:01 am ---It's form builder [resource editor] is in classic microsoft fation very well designed.

--- End quote ---
Eh? Windows 'resources' is basically a Windows 3.1 thing. You only get a real 'form builder' if you take the dotnet route, for regular C++ development MS is offering nothing comparable to say DialogBlocks, just the old primitive resource editor (MFC people are stuck with this).

Regards

thomas:

--- Quote ---If 6.0 is a tank, and 9.0 is a ferrari, mingw is some old broken down rust mobile held together with bungie cords, tie straps, and old extension cords used as rope... It's painfully slow (slowest compiler I've ever come across actually) what takes minuates in mingw compiles instantly in the 9.0 compiler and seconds in the 6.0 compiler. It's horribly optimized, allowing for some very slow, large file sizes being outputed.
--- End quote ---
I have to object to this. Sorry, but I'm really soooooo fed up with those unfounded, biased Microsoft-vs-gcc comparisons.
All these have in common that people find Microsoft's compiler being superior because they compare a 5 year old gcc with a latest-development-line Microsoft compiler, and in addtion to that fail to even properly use gcc.

You're the one who recompiled wxprec.h for every source file in the project last week, aren't you? I'm sorry, of course this will take hours, but how is that MinGW's fault? While it is true that even recent versions of gcc still compile somewhat slower overall, it is by no means a problem, even for large projects.

Unless you enforce code bloat by abusing the programming language (such as in wxWidgets), file sizes are not significantly larger (on the order of 20-90 kB fixed overhead, depending on what you use) for reasonably sized projects with any recent versions of gcc. A few dozen kilobytes fixed overhead should not really matter for programs that are normally several megabytes in size.
But still, we're comparing apples and oranges here. You can tell gcc to link to the runtime dynamically (which MSVC always does) to remove that overhead alltogether. Of course, if you do that, then gcc will have the same portability problems as MSVC.

Regarding optimizations, it has to be said that recent versions of MinGW/gcc used correctly not only compete with Microsoft's compilers, but indeed optimizes better in many situations.

I'm not saying everyone should use gcc. If you like the Microsoft compiler, then please go ahead and use it. Just don't spread stories about gcc/MinGW that belong to the realm of myths and legends and are most unfair.

troels:
You yourself spread compiler FUD. Remember this


--- Quote from: thomas on October 19, 2007, 09:03:52 am ---The Express version is not usable (for anything serious)

--- End quote ---
(http://forums.codeblocks.org/index.php/topic,7113.0.html)

Did you ever try it? No?

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version