What is NetBeans? - for beginner
- Details
- Written by Nam Ha Minh
- Last Updated on 16 February 2020   |   Print Email
NetBeans is a popular and widely-used IDE for developing Java applications - favored by millions of developers around the world.
The NetBeans IDE is free, open source, cross-platform, feature-rich, easy to use and as powerful as Eclipse IDE. It is widely used in schools, universities, enterprises and large organizations like NASA and NATO, with a vibrant community.
Besides Java, NetBeans also supports development for other languages like PHP, C/C++, HTML5, Javascript… with different bundles for different languages. Therefore, you can use NetBeans for full-stack development, as stated in its tagline: “Quickly and easily develop desktop, mobile and web applications with Java, JavaScript, HTML5, PHP, C/C++ and more.”
1. History of NetBeans
Like Eclipse, NetBeans also has a long history. It began in 1996 as a student project at Charles University in Prague, Czech Republic. The project was for creating a Java IDE.
In 1997, Roman Stanek formed a company to produce a commercial version of NetBeans IDE.
In 1999, NetBeans was bought by Sun Microsystems and it was open-sourced in 2000. Since then, the NetBeans community has continued to grow.
In 2010, Oracle acquired Sun and continued developing the IDE further.
Recently, in 2016, Oracle donated the NetBeans project to Apache Software Foundation and the IDE has a new brand name: Apache NetBeans.
The homepage of NetBeans was https://netbeans.org/, but it is now a project under the governance of the Apache Software Foundation: https://netbeans.apache.org/
2. Key Features of NetBeans IDE
For Java development, you can use NetBeans to develop almost any kind of Java applications, from Java desktop apps (Swing & JavaFX) to Java web apps (Servlet, JSP, and EJB). However, NetBeans doesn’t support developing Android mobile apps - You have to use Android Studio from Google. Before Android becomes popular, NetBeans has great support for developing mobile applications with JavaME. But since Android has dominated the market, JavaME became obsolete.
For Swing development, the GUI Builder helps you visually design layout and drag and drop user interface components. Likewise, the SceneBuilder helps you design JavaFX applications quickly and easily. For developing Java web applications, NetBeans supports two types of servers: GlassFish and Apache Tomcat.
By default, NetBeans uses Ant build for projects, and you can also create Maven ones.
For version control, NetBeans is integrated with CVS, Subversion (SVN) and Mercurial.
The IDE also comes with powerful refactoring capability which facilitates code restructuring. The visual debugger helps you debug running Java applications, and the Profiler tool helps you monitor Java applications to find memory leaks and optimize speed.
For unit testing, NetBeans is integrated with JUnit and TestNG frameworks.
And you can extend the features of NetBeans by installing plugins available in NetBeans Plugin Portal.
3. NetBeans Platform
The NetBeans Platform is a generic framework for simplifying the development of Java Swing desktop applications. It provides reusable services and components that are common to desktop applications, such as user interface management (windows, menus, toolbars…), settings management, storage management, etc - allowing developers to focus on coding business logic specific to their applications, without having to code the “plumbing”. Therefore, it reduces a lot of development time and increase productivity.
And NetBeans allows you to develop applications based on NetBeans Platform right inside the IDE.
4. NetBeans vs. Eclipse
In my opinion, Eclipse and NetBeans are similar in functionalities: code completion, code refactoring, run, debug,.. But NetBeans is easier to use and less complex than Eclipse. NetBeans doesn’t have concepts like Workspace and Perspectives like Eclipse, but it provides better support for Java Swing and JavaFX with built-in GUI Builder and ScenceBuilder, whereas you have to install WindowBuilder plugin to use a visual designer in Eclipse.
In my experience, NetBeans runs a little bit faster than Eclipse and I got “not responding” problem with Eclipse more often than NetBeans. The Profiler tool in NetBeans is also a plus point, as it allows you to monitor Java applications right inside the IDE to find memory leaks and optimize speed.
Both NetBeans and Eclipse are free, open-source and cross-platform. They are both developed by the two famous non-profit organizations: The Apache Software Foundation and the Eclipse Foundation, and they are the two most popular Java IDEs nowadays.
NetBeans is easier to learn, whereas Eclipse has steeper learning curve. Both support non-Java languages like C/C++ and PHP.
I recommend you to use both of these IDEs to have your own feeling and experience, and which one to choose depends on the nature of your projects and preferences.
What's next for a beginner? I recommend you to follow these 2 tutorials next:
Other NetBeans Tutorials:
- How to Update License Header for Java files in NetBeans
- 10 NetBeans Shortcut Keys for Code Refactoring
- 16 NetBeans Shortcut Keys for Code Editing
Comments