Why should I teach Java out of Visual Studio Code instead of out of Eclipse or NetBeans?

Why should I teach Java out of Visual Studio Code instead of out of Eclipse or NetBeans?

1. Easier File Mapping 

In Visual Studio, we can add a file from a path to a project located in a workspace, and Visual Studio records the reference to a new file and opens it like any other file. But, in Eclipse and Netbeans, the structure of a project's elements must correspond to their layout in the underlying file system. (Note: The Eclipse IDE can open an individual file out of an existing project, using File > Open File… it works as expected and well titled. We're verifying this with follow up discussions on this blog post. Please help us verify it on that blog post or by replying directly below on this page. Thanks for your help! Also, for any Java application that goes beyond a single file, the layout NetBeans and Eclipse enforce is what’s expected by the compiler in the JDK. The compiler can’t find classes declared within packages otherwise, so Eclipse and NetBeans are saving the user from maintaining that layout by hand. They don't have solutions that work around the compiler complication.)


2. File Size & Download Speed - 3X Better!

Eclipse is 166 MB to download for Java. Even more for the other versions! To download the Java EE version of NetBeans, it's 186 MB. And it's 205 MB for all four languages. Now compare that to Visual Studio Code, which is only 58 MB for all 34 languages! Imagine having to wait three times longer per download/install on each computer in your school! And then downloading and installing the new versions for each of those machines!


3. More Languages Out of the Box

Java is important, but it should just be one language on the road to learning computer science! Eclipse only has Java (out of the box), and NetBeans only has 4 languages out of the box (Java, C++, HTML5, and PHP). Visual Studio has even more languages. You can transition much faster to other languages! (Note that there's another version of Eclipse with more languages and a bigger file size, but if you click the big download button, you're getting the one language.)


4. Exposure to Other Languages - 849 Programming Languages!

Visual Studio Code primarily features 34 languages! (Java, C#, C++, HTML5, PHP, VB, CSS, XML, JavaScript, Python, Ruby, Go, Perl, R, SQL, JSON, F#, PowerShell, and more!)  Eclipse primarily features 25 languages as extensions, in addition to the one language you get out of the box (Ada, ABAP, C, C++, COBOL, D, Fortran, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, Clojure, Groovy, Scheme, and Erlang). Including extensions, Eclipse supports 181 total languages. NetBeans seems to support only 8 languages with extensions (Java, HTML5, C/C++, PHP, Apache Groovy, GlassFish, and Apache Tomcat). In the Visual Studio Code Marketplace, you get to browse between 849 programming languages! What??? Yes, go get started: https://marketplace.visualstudio.com/search?target=vscode&category=Languages&sortBy=Downloads


5. Find Your Languages & Tools in a Marketplace of over 2K Tools!

Nowadays, we're used to slick web stores where we can shop around and find apps. That's the experience you get with Visual Studio Code! Find your languages, extensions and tools in a fun, online marketplace! Browse 2K+ tools right now: https://marketplace.visualstudio.com/vscode. That's a lot more options than the Eclipse marketplace and NetBeans plugin portal, and the VSC Marketplace feels more like an app store.


6. 787 Themes!

Wow! Talk about options! You can make the IDE your own, when you select the right theme for you from the Marketplace: https://marketplace.visualstudio.com/search?target=VSCode&category=Themes&sortBy=Downloads


7. Easy to Deploy to App Stores

Visual Studio gives you a simple interface to publish your game or application in an app store! The biggest and best validation (and way to push improvement in your app) is when others like your work, people download it, and people use it. That includes deploying to Windows Store, Amazon, iOS, and Google Play!


8. VS Code Gets Git!!

Do you ever feel like someone doesn't get you? Well, VS Code gets you by getting how you need Git! We're talking full Git Support: Commits, Diffs, Pulls, Pushes, Status Bar Actions, Branches, Tags, Handling Merge Conflicts, Remotes, Credentials, and more!

Get the Git details here: Visual Studio Code  - All the Git Features!!!. And also, see Using Version Control in Visual Studio Code. (Note that Eclipse also has some good Git features.)


9. Substancial Sustainability and Growth Rate

Like Eclipse and NetBeans, Visual Studio Code is also open source. It's managed by people who get paid to manage it, and it is also contributed to by a community involving more than a hundred serious corporate members. And because it's backed by a corporation who can fund it, accessibility and competitive feature improvements come into play. This makes it more sustainable and likely to grow at a more substantial rate!




Languages Out of the Box

  • Eclipse: 1 (Java)
  • NetBeans: 4 (C++, HTML5, Java, PHP)
  • Visual Studio Code: 34 (Batch, C#, C++, Clojure, CoffeeScript, CSS, DockerFile, F#, Go, HandleBars, HTML5, Ini, Jade, Java, JavaScript, JSON, Less, Lua, Makefile, Markdown, Objective-C, Perl, PHP, PowerShell, Python, R, Razor, Ruby, Rust, Sass, SQL, TypeScript, Visual Basic, XML)

File Size

  • Eclipse: At least 166 MB
  • Netbeans: 205 MB
  • Visual Studio Code: 58 MB


Questions for You

  1. Did I get everything accurate? If anything isn't 100% accurate, please reply and explain why!
  2. Could any of the reasons use better clarifications or explanations/details? Please reply with the info!
  3. Are there any reasons to teach Java in Visual Studio Code that I missed? Reply with the reasons!
  4. Any reasons not to teach Java on Visual Studio Code?


Thank you for reading! Please reply with your answers to any of the four questions above!


Have a day! Not just any day! Have this one!

- Ninja Ed