there are many IDEs around for C\C++, afew include
Visual C++, DevC++, and Code::Blocks. so the
question is what IDE do you use and why do you use
that IDE?
i use VisualC++ (previous was DevC++) because it
provides an Overall good Debugger.
there are many IDEs around for C\C++, afew include
Visual C++, DevC++, and Code::Blocks. so the
question is what IDE do you use and why do you use
that IDE?
i use VisualC++ (previous was DevC++) because it
provides an Overall good Debugger.
I don't use an IDE anymore, I used to use Dev-C++ while at work but its version of mingw is very old. I just use Notepad++ and compile manually when I get home.
For me it depends on the project.
If I am coding in C#, I use Visual Studio. Overall I think Visual Studio is an excellent IDE and I love its feature set.
However, I only use Visual Studio for C# projects, because when coding in C++ I like to compile with gcc/g++.
So, when coding in C++, I normally use Code::Blocks (for larger projects) on Windows, and Notepad++ (for smaller things). On Linux I'll use one of the several editors out there: VIM, KDevelop/Kate, etc. I usually combine that with makefiles and gcc.
For languages such as Python and PHP, I'll use a standard text editor.
For Java, I normally use Eclipse, although I must admit I really dislike both Java and Eclipse.
I don't like IDE's, altho I've barely used them. The few times I did (eclipse) it just seemed pointless and silly.
Mostly I think this is because I love VIM and command line tools. When I need a GUI debugger I'll use DDD, which is okay. I also use a source code viewer that I wrote myself. I prefer different apps for different tasks, esp. since I tend to have different sets of material in the editor (5 or 6 tabs of my code) than in the viewer (maybe 4-8 tabs of lib sources or whatever), an exectuable in DDD, and then a terminal window for compiling, testing, running stuff like gdb or valgrind or whatever. I kind of think this is less cluttered and easier to keep organized, but probably if I used an IDE long enough I'd develop skills there and it would amount to the same thing. The reason I'm not interested in doing that, tho, is that I consider developing command line skils more generally useful. Bash has a lot going on. Eg, "for x in *; do [........]; done", etc, is handy stuff.
Another great thing is that I have like 10000 lines of history or something in the terminal, and valgrind and gdb output remains after you run them. Sometimes I can work all day and still scroll back and see 6 hours worth of output without having to save it or anything.
I'm "telecommuting" right now via ssh and openvpn, and while I don't have to write code remotely those CLI skills are pretty nice to have, the job would be a tremendous headache without them.
People have said eclipse is actually a bad example, but to me the concept itself has no appeal -- the only way I would bother with an IDE would be if it telepathically perceived my intentions and wrote code for me.
Last edited by MK27; 03-02-2010 at 04:19 PM.
C programming resources:
GNU C Function and Macro Index -- glibc reference manual
The C Book -- nice online learner guide
Current ISO draft standard
CCAN -- new CPAN like open source library repository
3 (different) GNU debugger tutorials: #1 -- #2 -- #3
cpwiki -- our wiki on sourceforge
When I'm on Windows, I use Visual Studio TFS (essentially, I only write C++ on windows,) which is the best IDE I've ever used. Not saying a ton considering for just about everything else I use Emacs (and for just about everything else I'm on Linux/OS X, too.)
Exception: When I do java, I use eclipse, although eclipse is pretty much the most annoying damn IDE on the planet. But it works. If I could have VS + Java integration I would pretty much immediately toss Eclipse away like a used rag.
Everything else is Emacs.
operating systems: mac os 10.6, debian 5.0, windows 7
editor: back to emacs because it's more awesomer!!
version control: git
website: http://0xff.ath.cx/~as/
For C++ I use either Visual Studio or Code::Blocks.
For web programming I use Notepad++.
Maybe one day I will check what's all the fuss about vim and Emacs and why they compete with graphical IDEs, but right now I prefer to stick to graphical stuff.
"The Internet treats censorship as damage and routes around it." - John Gilmore
I program on a Mac and I used Xcode.
I use Visual Studio for all Win32 x86 development. Why? Because it has the richest feature set and it is easiest to integrate and interface with existing Microsoft technologies. As of right now I develop exclusively on Windows and embedded Windows so I have no need for other compilers or IDEs.
The most annoying part of MSVS is the plethora of options available per project per build target. They need to simplify this or make it easier to use. Merging project and solution files, while possible since they are in XML, is a PITA.
Windows: Visual Studio
Linux: Eclipse
"I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008
"the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010
Visual Studio
- Starting with the 2008 version, all the gripes with IntelliSense were mostly gone, making it -- finally and after so many years -- a truly useful feature that doesn't break around every corner.
- While the Express editions are mostly featureless, starting with the Professional editions and up is where Visual Studio really shines. Too many features to name, making this probably the most complete suit in existence and capable of serving all types of projects.
- It's a fair bet any working place I intend to put my application in, uses Visual Studio. Thus it makes sense to stick to it. This is not "just" some IDE. It takes time to explore, to understand the overall architecture, and because of this I would be at a disadvantage when applying for a job. And the reverse is also true; Being that I plan to start a busi8ness sometime this Fall, it's a safer bet to require Visual Studio from possible candidates.
- It supports both languages I currently use for coding (C++ and C#). And its compiler is standard and allows me to create C++ code that I can compile on other platforms.
- Its development cycle is long enough (2-3 years) that allows me to stick to an IDE that is not constantly worrying me about upgrades and introducing new features that take me away from coding time (the thing that most matters to me).
SlickEdit
- The most feature-rich editor in existence in my opinion. More than Visual Studio when it comes to features directly related to the editor.
- Excellent support for GCC (linux or MinGW) and GDB. Puts to shame everything else. The debugger frontend deserves special mention since it simply has no rival.
- Its ContextTagging was already near perfect and Microsoft was still trying to make IntelliSense behave as it was supposed to. Long before VS, SlickEdit was already displaying symbols, declarations and definitions on mouse-click context and auto-displaying parameter lists. Too many features to name.
- It also supports Visual C++, although I'm unsure how useful that can be since VS debugger is better supported in Visual Studio.
- I use it every time i need GCC/MinGW, and as my editor on Linux. Today I use it much less. But for any windows or Linux programmer interested on GCC and GDB, this is my tool of choice.
Last edited by Mario F.; 03-03-2010 at 07:43 AM.
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.
I've used Dev C++ untill i saw Code::Blocks! That IDE is a heaven on earth!!
I like the way it handles errors, messages, files and everything else!! I can honestly
say that it's the best IDE I have worked with, made for the best programming language
i've ever learned!! ( i know BASIC, PASCAL, DELPHI, C and C++ ). Guess what's the best!!
Something more:
Microsoft Visual Studio is the worst IDE i've ever seen!
(1) Nonportable code
(2) DX8 and 9 unsupported
(3) ISO code problems : min, max, asm, mod etc
(4) You want more??
Seriously? It breaks on me ALL THE TIME at work, and it's highly frusterating (combinations of CPP macros + boost + templates make it go haywire and nigh impossible to use in some instances.) We've found some pretty simple stuff at work that can make it break sometimes.Starting with the 2008 version, all the gripes with IntelliSense were mostly gone, making it -- finally and after so many years -- a truly useful feature that doesn't break around every corner.
FWIW, VS 2010 has amazing intellisense and paring support for C++. I've been using the RC for a little while now and it hasn't broken on me yet. I believe it goes stable in March.
addendum:
Wrong, mostly. Just don't use the MS-only extensions/functions. I use Visual Studio every day on a C++ code base that build cleanly on linux.Microsoft Visual Studio is the worst IDE i've ever seen!
(1) Nonportable code
Just install the DirectX SDK and set your linker/include paths? I've built plenty of DX11 applications with VS2008 (and more recently VS2010.)(2) DX8 and 9 unsupported
Can you elaborate? Visual C++ used to be HORRIBLE way back when (it wouldn't even appreciate the rules of proper lexical scoping!) but these days it is stable and tested. I don't doubt there are discrepancies w.r.t. the standards, but I've never heard of these in particular and would like to hear more.(3) ISO code problems : min, max, asm, mod etc
Last edited by Mad_guy; 03-03-2010 at 12:46 PM.
operating systems: mac os 10.6, debian 5.0, windows 7
editor: back to emacs because it's more awesomer!!
version control: git
website: http://0xff.ath.cx/~as/
Untrue.
Untrue. But you need the DX SDK.(2) DX8 and 9 unsupported
min and max are known problems when developing Windows apps. Not specific to the IDE.(3) ISO code problems : min, max, asm, mod etc
Oh yes, and the asm keyword... well, the compiler supports inline assembly, so obviously using this keyword is bad.
Yes, please. Something concrete.(4) You want more??