• Post Reply Bookmark Topic Watch Topic
  • New Topic

Command Line VS IDE  RSS feed

 
justin smythhe
Ranch Hand
Posts: 107
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Some of my developer friends say that it is best to use the command line (cmd) instead of an IDE for "small" to "medium size" projects instead of an IDE.
They say that the IDE hides a "lot of things" from the developer & one can learn more by using the cmd.

What is the advantage of using cmd over an IDE ? When should we choose one over the other ?
 
Paul Clapham
Sheriff
Posts: 22841
43
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The advantage of using the command line is that you learn how things work in the real world. You learn what the classpath is, and how to set it up. You learn how to run applications from the command line, which is how they are normally run. You learn about basic things like the current working directory.

So, in my opinion, a new Java developer should work with the command line to compile and run applications for a little while, until they have learned those basic concepts. Once that phase is complete, then moving to the IDE is the next step. But frankly I don't see that the command line has any advantage over the IDE for even small or medium projects. When I write a small project, even if it's one class with a hundred lines of code, I still use the IDE.
 
Campbell Ritchie
Marshal
Posts: 56593
172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The problem with an IDE is that it has a “learning curve”. If you have so much to learn, you go down with information overload and your brain goes into meltdown
 
Rajdeep Biswas
Ranch Hand
Posts: 231
1
Eclipse IDE Java Opera
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I believe that the cmd teaches you nuances of programming, making you understand each step of programming fundamentally. When you are well acquainted with the basics and know the foundation bricks of the language, then you can go with IDE, that simplifies code writing, bug detection and testing of your code.
 
James Boswell
Bartender
Posts: 1051
5
Chrome Eclipse IDE Hibernate
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Paul has already mentioned it but using the command line is so important for learning how to compile and run Java applications.

Quite often you will see someone post 'my program won't compile' or 'jar file isn't found when running program'. This is usually asked when using the command line and it is this knowledge that an IDE prevents a developer from understanding as everything is done for you under the hood.
 
Mahesh Kedari
Ranch Hand
Posts: 111
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am not sure why people say that IDE hides most of the things from developers? I work for a team developing E2Studio (Eclipse flavor for Embedded developers) IDE.
And we give maximum possible flexibility to developers to configure their custom settings. IDE saves lot of time developing a program with some default settings.
A curios developer will always go and dig out features of IDE where upon he can learn many things and customize an environment as per his needs.
Off-course you should know some basics before jumping into an IDE but I dont think one should use command line for a whole life. IDE saves lots of time.
 
Campbell Ritchie
Marshal
Posts: 56593
172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mahesh Kedari wrote: . . . Off-course you should know some basics before jumping into an IDE but I dont think one should use command line for a whole life. IDE saves lots of time.
I think everybody who warns against using IDEs would agree with you 100%.
As you said, start with the command line and move on to IDEs when you are more experienced.
 
justin smythhe
Ranch Hand
Posts: 107
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
So, what kind of things should i do with cmd and for how much time ? when should i stop using cmd and start using an IDE instead ?
Can someone show me some examples where a developer would learn less by using an IDE ?
 
Jesper de Jong
Java Cowboy
Sheriff
Posts: 16060
88
Android IntelliJ IDE Java Scala Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you're brand new to Java, you'll want to learn the language itself first. In that case it would be better to use a simple text editor (I wouldn't use Notepad which is included with Windows, but for example Notepad++ is very good), so that you don't have to worry about learning a completely new programming language and also how the IDE works at the same time.

Eclipse, for example, is not a simple program if you've never seen it before. To use it well, you'll have to understand that it is organized in perspectives, you'll have to learn Eclipse's UI, you'll have to learn how it organizes your source files into projects and what all the different settings and options mean. If you just use a simple text editor, you can concentrate on learning programming in Java first and you won't be distracted by the complications of the IDE.

When you just use a text editor and the command line, you'll also learn the mechanics of the classpath, how the Java compiler and runtime environment find class files, how to organize your source code etc. This is very useful knowledge. When you use an IDE, you usually don't set up the classpath yourself - the IDE takes care of all of that for you. But when you someday need to run your program outside the IDE, you'll have to know how to set up the classpath yourself anyway.

So, first learn Java using a text editor that doesn't get in your way. If you feel you are comfortable using the language and with compiling and running small to medium-sized programs from the command line, you can try using an IDE such as Eclipse.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!