Microsoft offers Visual Studio Code, an open source text editor that supports code editing, debugging, IntelliSense syntax highlighting, and other features.
$0
Oracle Java SE
Score 8.0 out of 10
N/A
Oracle Java SE is a programming language and gives customers enterprise features that minimize the costs of deployment and maintenance of their Java-based IT environment.
The other IDE that I use is Eclipse. Comparing both, Microsoft Visual Studio Code it clearly wins in resource consuming. I can have open many instances of Microsoft Visual Studio Code and the memory ram usage it doesn't go very high. Another point where I prefer Microsoft …
Many other languages could be used for initial programming. However, simplicity of concepts, static type system and available tool support in combination made Java come out top for us. Especially Python has become very popular recently. I think this is a step backwards, due to …
As a general workhorse IDE, Microsoft Visual Studio Codee is unmatched. Building on the early success of applications such as Atom, it has long been the standard for electron based IDEs. It can be outshone using IDEs that are dedicated to particular platforms, such as Microsoft Visual Studio Code for .net and the Jetbrains IDEs for Java, Python and others. For remote collaborative development, something like Zed is ahead of VSCode live share, which can be quite flakey.
Oracle Java SE is well suited to long-running applications (e.g. servers). Java Swing (UI toolkit) is now rather outdated, lacking support for modern UI features. JavaFX, the potential replacement for Swing, has now been separated out of Java core. Ideally, there would be a path to migrate a large application incrementally from Swing to JavaFX, but due to different threading models and other aspects, it is difficult. At this point, it is probably better to use an embedded web browser (e.g. JxBrowser) to provide a modern UI in HTML/Javascript and keep just the business logic in Java.
The customization of key combinations should be more accessible and easier to change
The auxiliary panels could be minimized or as floating tabs which are displayed when you click on them
A monitoring panel of resources used by Microsoft Visual Studio Code or plugins and extensions would help a lot to be able to detect any malfunction of these
Commercial Licensing in 2019. Oracle will charge commercial organizations using Java SE for upgrading to the latest bug fixes and updates. Organizations will now need to either limit their implementation of Java SE or may need to drop it altogether.
Slow Performance. Due to the all of the abstraction of the JVM, Java SE programs take much more resources to compile and run compared to Python.
Poor UI appearance on all of the major GUI libraries (Swing, SWT, etc.). Through Android Studio, it is easy to get a native look/feel for Java apps, but when it comes to desktops, the UI is far from acceptable (does not mimic the native OS's look/feel at all).
Solid tool that provides everything you need to develop most types of applications. The only reason not a 10 is that if you are doing large distributed teams on Enterprise level, Professional does provide more tools to support that and would be worth the cost.
Microsoft Visual Studio Code earns a 10 for its exceptional balance of power and simplicity. Its intuitive interface, robust extension ecosystem, and integrated terminal streamline development. With seamless Git integration and highly customizable settings, it adapts perfectly to any workflow, making complex coding tasks feel effortless for beginners and experts alike.
Oracle Java SE provides the new features along with timely security patches. New features like Record patterns and pattern matching for switches are very useful. With every new release of Java, it is getting better. Sequenced collections are also an interesting feature added to Java. With all these new features, backward compatibility is also maintained.
Overall, Microsoft Visual Studio Code is pretty reliable. Every so often, though, the app will experience an unexplained crash. Since it is a stand-alone app, connectivity or service issues don't occur in my experience. Restarting the app seems to always get around the problem, but I do make sure to save and backup current work.
Microsoft Visual Studio Code is pretty snappy in performance terms. It launches quickly, and tasks are performed quickly. I don't have a lot of integrations other than CoPilot, but I suspect that if the integration partner is provisioned appropriately that any performance impact would be pretty minimal. It doesn't have a lot of bells and whistles (unless you start adding plugins left and right).
Active development means filing a bug on the GitHub repo typically gets you a response within 4 days. There are plugins for almost everything you need, whether it be linting, Vim emulation, even language servers (which I use to code in Scala). There is well-maintained official documentation. The only thing missing is forums. The closest thing is GitHub issues, which typically has the answers but is hard to sift through -- there are currently 78k issues.
Java is such a mature product at this point that there is little support from the vendor that is needed. Various sources on the internet, and especially StackOverflow, provide a wealth of knowledge and advice. Areas that may benefit from support is when dealing with complex multithreading issues and security libraries.
Visual Studio Code stacks up nicely against Visual Studio because of the price and because it can be installed without admin rights. We don't exclusively use Visual Studio Code, but rather use Visual Studio and Visual Studio code depending on the project and which version of source control the given project is wired up to.
Chose to go with Java instead of Python or C++ due to the expertise on the ground with the technology, for its ease of integration with our heterogeneous setup of production servers, and for the third party library support which we've found was able to address some challenging aspects of our business problem.
It is easily deployed with our Jamf Pro instance. There is actually very little setup involved in getting the app deployed, and it is fairly well self-contained and does not deploy a large amount of associated files. However, it is not particularly conducive to large project, multi-developer/department projects that involve some form of central integration.
The different versions make it harder to work with other companies where some use newer versions while some use older versions, costing time to make them compatible.
Licenses are getting to be costly, forcing us to consider OpenJDK as an alternative.
New features take time to learn. When someone starts using them, everyone has to take time to learn.