问题
I didn't find a question on this while searching SO but if anyone does please tell me.
There are alot of questing on the pros and cons of IDE's and what IDE to use for this and that language, like "Why should I use an ide?" and "Are we too dependent on our IDE's?".
But as a beginner just starting to understand how to build GUI's with Swing and getting a grip on the workings of event handlers and whatnot I started to wonder, when should you actually start using an IDE to further productivity and not stifle the learning experience?
The intellisense function is really helpful but sometimes makes me feel lazy for not thinking that extra bit and looking things up in the book im reading or the api documentation. However the ability to set flags in the code to step trough to find logical errors and actually go into the parent method are sometimes useful to get a better understanding about what goes on in the code.
I read somewhere that you should have a good grasp on the basics of a language before using the IDE, but what is the basics? And what is good?
回答1:
The only downside to using an IDE would be using its tools and wizards and not understanding how the code they generate works. If you are using an IDE for code completion, syntax highlighting and debugging then that's great. If you are using it to generate GUIs that you can't build by hand or generate Web Service code that you don't know how it works, then that's bad. But that's bad regardless of whether you're a beginner or not.
Your instincts are right. Understand how things work and how to code things by hand before just trusting the tool blindly.
回答2:
An IDE is a tool you should use from the start. Understanding how languages work is important but memorising every little detail, not so much. A builder would no more learn how to make a mud hut with his barehands before building something with power tools than you should learn to program without using an IDE.
That said, you should be aware of what the IDE is doing for you so that in circumstances where you are faced without one, you know the things you need to make up for. An IDE can't write good code for you, it can't even tell you how to write good code, or suggest good code, it can only supplement your own skillset (at least right now, in 2009 - I can't speak for our robot IDE overlords of 3452).
回答3:
Don't start with an IDE. Here's why:
I learned Java using Notepad and the command line. If I needed to know what methods a particular class had, I looked at the APIs online.
I did that for about half of a semester. Then we switched to Eclipse.
Doing it that way, I became very familiar with the Java syntax, lots of the core libs, and how the Java 'compilation' and running process works.
People should never develop this way long term as it is terribly unproductive. But I feel it is the correct/best way to begin learning a language.
Don't start with an IDE.
回答4:
I would suggest using an IDE right off the bat...but not worrying about most of the functionality. As you learn the language and become more familiar with processes, aspects of the IDE will suddenly become obvious at the right times.
回答5:
I don't think you should get too hung up on delaying using an IDE. Let's face it, in the real world, you'll be using that IDE pretty much all the time.
When you're initially learning, I think the most important thing is to use the IDE, but know what it's doing.
For example, when Visual Studio.NET first came out, and I played with it and wrote my first "Hello World" app, then clicked the "green go button" (!), I watched the output window with all of it's information. I then looked at the help documentation to see that this is really just calling out to csc.exe and piping it's text output back into an IDE window. So I went off and started invoking csc.exe myself from the command line and saw it's parameters that it would accept. Then I jumped back into the IDE and saw how GUI checkboxes related to the csc.exe parameters.
This way, I started using the IDE straight away, but also learnt what the IDE is doing with regards to "shelling out" to command line based utilities.
From here, I even tried typing my first C# program in Notepad and compiling it from the command line. But I wouldn't get too hung up on it, though. Let's face it, in the "real world" you're very unlikely to need to do it. I was good to scratch the itch of my curiosity, though!
回答6:
IDE saves you time and energy. I have no problem of using IDE even as beginner. It only helps.
回答7:
If you know the ide well, it will help you explore a new language/technology that it supports.
If you don't know the ide, better don't use one at first. Use a simple text editor (notepad++ on windows), command line, and the official reference.
回答8:
I think that you should be able to manually do anything that the Intellisense is doing for you automatically. For example, you should know what function you want to type before hitting Intellisense.
回答9:
Well, if you're expirienced in other languages or just might have worked with them, then use IDE right away.
But for complete beginners, I wouldn't suggest it.
回答10:
It doesn't have to be one or the other - try both. Life's short enough ;-)
来源:https://stackoverflow.com/questions/1109678/when-should-you-start-using-an-ide-when-learning-a-language