...or anything else? I use Dev-C++ 5, despite some bugs and a mysterious debugger and a class browser that acts funny*.
I'm starting a programming class in the autumn and thought of putting together a package with an IDE, mingw and allegro. So, goods and bads about Relo and Dev-C++, please.
F.i. clicking on a member brings me to the .cpp file, clicking on another member brings me to the .h file, usually to the file that I don't want.
cough*SciTE*cough
If you're going to teach people about programming, please teach them what a compiler is and how it works. We don't need more people who believe in the magical power of the IDE ...
So SciTE is a pure text editor? How does it deal with projects and multiple source files in this case?
EDIT: Check out Easy Allegro by Spellcaster, Installs Allegro, Relo and sets it all up to work 'out of the box' for you.
SciTE is a text editor with some programming helpers, such as syntax highlighting for a whole bunch of languages, automatic indenting, code folding, intellisense, and such. If you have a makefile, compiling is just one press of F11 away.
SciTE sadly has no project support, something I'd much like to see myself, but it does have multi-file support. Files are easily accessible through a tab bar.
Actually I'm a little suprised that aren't more free text editors and IDE's being used. With all the programmers out there I thought there would be a lot of choice but it seems there is not too many free alternatives. I.e. for free IDE everyone here seems to suggest Dev-C or Relo.
Programmers don't want to reinvent the wheel and duplicate effort ... if there's one good, free editor, why make another when you can just contribute to that one?
Programmers don't want to reinvent the wheel and duplicate effort
I don't neccessarily agree with that. Judging by the images of the day on Flipcode I would say there must be thousands of Terrain and other 3D engines built from scratch.
We could have an IDE competition though, everyone makes their own ideal IDE. Shame most of us here are too lazy to even do a two day compo..
Relo is a pretty nice IDE.
SciTe is a pretty nice texteditor.
If you want an IDE, use RELO. It comes with allegro support (even has a built-in allegro project) and gives you API help inside the editor.
For all your other textfile needs - SciTE will get the job done.
I wonder if anyone would notice if I turned in the source to MSVC....
...or anything else? I use Dev-C++ 5, despite some bugs and a mysterious debugger and a class browser that acts funny*.
The class browser in Dev-C++ is admittedly buggy. Fortunately, I don't tend to use this feature when coding (I use CTRL-F instead).
I have found Dev-C++'s built in GDB debugger support to be quite good. If you intend to use the debugger, you will need to rebuild your project and libraries with debug information. From there, its just a matter of setting break points and highlighting variables to see their values. The debugger doesn't seem to work well with STL containers and it bloats executable and library size to astronomical levels (33+ megs for my current project!!!). Beyond these issues, the debugger works quite well and I have no complaints. You might want to google for a tutorial on GDB and/or the Dev-C++ debugger so that they cease to be such a mystery.
I tend to use Dev-C++ for all my C++ coding and Eclipse for Java/Python/Lua. Eclipse also supports GCC, so it might not be a bad all around generic IDE to look at.
The things I really like about Dev-C++ are project templates and the fact that it is highly customizable (I tend to use a really strange code coloring scheme). I also like the built in CVS support and the ability to add personal help menus.
I've tried Relo and don't really care for it, but this may be because I'm so used to Dev-C++. That said, you should definately give Spellcaster's "Easy Allegro" a close look. It might be what you're after. I'll stick with Dev-C++ though:)
If you're going to teach people about programming, please teach them what a compiler is and how it works. We don't need more people who believe in the magical power of the IDE ...
This is microsofts fault. I started programming with microsoft and since they totaly hide the actual compiler within the IDE, you think the IDE is the compiler. First it's good, because you don't have to deal with command line (god I hate command line), but of course it's bad because you don't really know what's going on. Did I mention I hate command line tools?
The young programmers just aren't used to the command line. They prefer (as do I) the GUI.
To be fair Microsoft didn't make the first IDE in the world ... but like I said, if this is for a course, you should teach people about the compiler and how things actually work; that's part of the point IMO.
The young programmers just aren't used to the command line. They prefer (as do I) the GUI.
I think exactly the oppersit.
When I was a noob and even now i think a commandoline is just lovely and 10 times easier to use then an ide.
think of
gcc source1.cpp source2.cpp ... -llib1 -llib2 -o name -O
instead of going to project settings, libs, project options, further objects, figuring out where to set optimizations and if you change something in the whole ide mess you have to search for the bit you want to change hanging about in menus for 5 minutes.
in commando line you just have to change a few words.
Now I use makefiles (of course I don't type all stuff in every time)
when I was a noob I used batch files
In Visual C++ 6, I setup my libs once, and press 1 button to compile, and run. Plus I can place breakpoints on any line of code, and step through line by line (very very helpful). Are you a linux person? Linux people seem to be more inclined to use command line, than straight windows people.
Am I the only one who doesn't find breakpoints or stepping through line-by-line useful at all?
Maybe you're the only one writing bug-free code?
How can you not? I would much rather do that then write to any kind of log.
Then how do you debug? I find annoying having to add printf's all over the place. Breakpoints + line-by-line are useful when solving some kind of logic bugs (More than once these have helped me a lot in problems that would had took me much more time).
While I agree with you that starting with command line is a better learning exercise, when you're experienced using an IDE helps, specially with large projects.
Are you a linux person?
I am multiplatform
when you're experienced using an IDE helps, specially with large projects.
I agree fully. But these are not experienced people, there are noobs, and they need to be taught how things work first of all, then they can advance to using tools to make things faster.
I agree let's frustrate them to the point that they decide to use Dark Basic...
Ashteth, has a point. You have to have a nice balance. I don't know much about compilers, but I can still program. Alot of people might quit to soon if you slam them with certain topics. Teaching well is probably the hardest thing to do.
You can search for Visual Mingw
But these are not experienced people, there are noobs, and they need to be taught how things work first of all, then they can advance to using tools to make things faster.
So you want them not to use IDE? So they should begin with machine code. And they absolutely cannot use allegro because it's too hight level.
Have you ever tought someone? Have you ever tought a group of people that didn't know anything about programming?
Have you ever tought someone? Have you ever tought a group of people that didn't know anything about programming?
I guess that includes most people in first year CE. Here java is teached, using command line to compile, in linux, and with emacs as the editor. It seems to give pretty good results.
[edit]
Then they teach c++, now in a Solaris computer. Again no IDE. But now you pick between emacs or vi. Lately they installed nedit, but I still prefered to use emacs.
Here java is teached, using command line to compile, in linux, and with emacs as the editor
yuck
taught is the word instead of teached you are looking for
just trying to help
Am I the only one who doesn't find breakpoints or stepping through line-by-line useful at all?
You're not the only one. I don't use breakpoints nor stepping too. I'm used to printfs and think they are quite powerful tool since they allow you to log specific points of execution and state in that point. Knowing how to use printfs also helps when you don't have any debugging tool at hand. And well, if you are running in graphics mode then you can output graphic debugging info like vectors, bounding boxes and nodes of some strange 3D structured (although it's not execution log anymore).
Anyway, I think it's just a personal choice of what you can use better.
Speaking about IDEs, I use DevC++, but if somebody knew good free C++ IDE which allows working with class diagrams and have some kind of code generation, I'd really appreciate it.
Ah, the IDE wars come by once again.
I really just use whatever is availiable at the time. Aside from an ugly few, most IDEs (Relo, Dev-C++...) are pretty much the same with just a few minor differences. Each have a slightly different feel to them, but they are for the most part, very very similar.
Using a text editor and the command line is fine too. Even though I will rather use an IDE because it can offer a slightly faster means of development, and project management is more "visual". Not saying that the command line is a bad thing or anything. Its just my preference since I mostly develop with an IDE.
Just try out some IDEs, and stick with whatever you feel most comfortable with.
yuck
taught is the word instead of teached you are looking for
just trying to help
(AFAIK) English is his second language. And it's not like he's using l33tsp32k.
My third, actually
But I think the yuck was not because of this
btw, I know the correct form is taught, but it's one of the (few, I think) irregular verbs I usually forget about.
The yuck wasn't because of his english. It was because of the other think he said. I was just trying to help him out.
It's ok
btw, this was the first time I said teached, in two other occasions I said it correctly
Now really, my English is becoming better since I come here (specially since the spell check feature )
Not sure if anyone mentioned it but SciTE has an externion for project support.
my English is becoming better since I come here ...
ahh...nevermind
Am I the only one who can't see the connection between good tools and missing education?
If a newb uses a CLI compiler he will just repeat what he was told - w/o knowing what he's doing. Same with the IDE.
Just with the difference, that if the IDE has a fitting project, he doesn't even have to worry about linking
Is this a good thing? For the beginning coder it is. He can learn one step at a time.
The big problem today is that the PCs don't come with a progrmming tutorial like my ZX-81 and C64 back then. If "they" would start to pack windows PCs with relo and gcc and a nice programming tutorial / book - well, we'd have more coding kids then.
If "they" would start to pack windows PCs with relo and gcc...
That'll be the day!
Just ship with Linux - that always includes gcc.
What I always liked about DOS was that it came with BASIC. Of course, those were teh days where a computer user needed to know something about programming to be able to use the thing properly in the first place. I still think it'd be nice if Windows shipped with a version of... well, some programming language. Could be C, could be VB for all I care. It would make it easier for people to try out programming.
Until windows 95, windows included Qbasic, IIRC... Well, I know it is perhaps not the best example
Just ship with Linux - that always includes gcc.
The "personal" edition (30 or so) of Suse Linux doesn't include any compiler or any other "development" tool.
The "personal" edition (30 or so) of Suse Linux doesn't include any compiler or any other "development" tool.
Personal editions suck then . I was wondering why I never bothered with it, now I remember.
Anyway, note that it wasn't a serious suggestion
Mandrake, by default, does not include gcc Which can be a good or bad thing.
The "personal" edition (30 or so) of Suse Linux doesn't include any compiler or any other "development" tool.
No? I have the SuSE 8.2 Personal Edition and have gcc!
Now I don't see any gcc. And here neither.
Of course you can download and install a rpm with gcc for it, but it isn't included on the disks in the box. Maybe it was in earlier versions, but I don't think so.
Just ship with Linux - that always includes gcc.
Remember that it always includes vim/vi too. There will be even more programming kids.
I don't think any good and easy to use IDE is included in Linux.
Until windows 95, windows included Qbasic, IIRC... Well, I know it is perhaps not the best example
I believe that you can still find QBasic on Windows 95 and 98 CDs if you dig around.
I don't think any good and easy to use IDE is included in Linux.
I don't know what "included in linux" means, but knoppix comes with kdevelop.
I found at http://www.devzoo.com//index.php?tooltype=WindowsEditor a list of text editors. It seems a nice place for getting some stuff for programming. From the given list, I have installed Eclipse (extremely good, but needs Java, thus it is very heavy) and NetBeans (useful if you are using Java, and if you don't have to go to the options, that screen is all messed up
Aside from an ugly few, most IDEs (Relo, Dev-C++...) are pretty much the same with just a few minor differences. Each have a slightly different feel to them, but they are for the most part, very very similar.
Well, that is actually all I wanted to know. Guess I stick with Dev-C++. There's a new update.