5.3.1 An Overview of the Apache NetBeans IDE 12 GUI
When you first launch the Apache NetBeans IDE 12, a main menu and some default windows are displayed, as shown in Figure 5.3.

FIGURE 5.3 The opened Apache NetBeans IDE 12.
The first window or pane located at the upper-left corner is the Projects|Files|Services window and contains three different kinds of items:
1) All opened projects
2) All created files
3) All database services
These three different items can be displayed and switched between by clicking on the corre-sponding tab at the top of this window.
The second window, located at the lower-left corner, which is currently hidden, is the Navigator window that contains all components to enable users to scan and go through all the different objects or parts of a file. In fact, the Navigator window provides structured views of the file you are working with and lets you quickly navigate between different parts of the file.
The Tasks window, which is also hidden, is located at the bottom, and it is mainly used to list all the methods in your projects and allow you to enter code into those methods at any time when you are building your project.
The Start Page is the main window when the IDE is opened and displays all the recent proj-ects you have developed. All updated news and tutorials related to NetBeans will also be displayed in this window.
Refer to Figure 5.3; among all the menu items, the following are special items with specific func-tionalities in the NetBeans IDE:
- Navigate: the NetBeans Navigator is used to navigate to any object, file, type of object or symbol you have created and built in your projects. With the name of each object or file, you can navigate to any of them at the development stage. Another important property of using the Navigate menu item is to enable you to inspect any member and hierarchy of those members defined in your project. The Inspect submenu item is used to inspect the members and hierarchy of any Java class in a convenient popup window that displays base classes, derived classes and interfaces. Use filters to control the level of detail that is displayed.
- Source: the NetBeans Source is used to facilitate your source code development by allowing you to insert code, fix code, fix imports, show method parameters and shift and move code in your projects.
- Refactor: NetBeans Refactor allows you to restructure code in your project without breaking it. For example, when you rename an identifier or move a class to another pack-age, you do not need to use Search and Replace; instead, the IDE can identify and update all occurrences instantly.
- Profile: the NetBeans Profiler is a tool for the monitoring of Java applications. It helps you find memory leaks and optimize speed. The Profiler is based on a Sun Laboratories research project that was named JFluid. That research uncovered specific techniques that can be used to lower the overhead of profiling a Java application. One of those techniques is dynamic bytecode instrumentation, which is particularly useful for profiling large Java applications. Using dynamic bytecode instrumentation and additional algorithms, the NetBeans Profiler is able to obtain runtime information on applications that are too large or complex for other profilers. NetBeans also supports Profiling Points that let you profile precise points of execution and measure execution time.
- Team: the NetBeans Team provides source code management and connected developer services to enable developers to perform the following functions:
- Source code management (Subversion, Mercurial, CVS)
- Local file history
- Integrated Connected Developer features for projects hosted on Kenai.com:
- Source code management (Subversion, Mercurial, and Git)
- Issue tracking (Jira and Bugzilla)
- Team wiki, forums, mailing lists
- Document and download hosting
In the NetBeans IDE, you always work inside of a project. In addition to source files, an IDE project contains metadata about what belongs on the Classpath, how to build and run the project and so on. The IDE stores project information in a project folder, which includes an Ant build script and properties file that control the building and running settings and a project.xml file that maps Ant targets to IDE commands.
Apache Ant is a Java-based building tool used to standardize and automate building and running
environments for development. The IDE’s project system is based directly on Ant. All of the project commands, like Cleanand Build Project and Debug, call targets in the project’s Ant script. You can therefore build and run your project outside the IDE exactly as it is built and run inside the IDE.
It is not necessary to know Ant to work with the IDE. You can set all the basic compilation and runtime options in the project’s Project Properties wizard, and the IDE automatically updates your project’s Ant script. If you are familiar with Ant, you can customize a standard proj-ect’s Ant script or write your own Ant script for a project.
The Apache NetBeans 12 IDE categorizes all Java-related applications into different groups based on the related template, such as Java with Ant, Java with Maven, HTML5/JavaScript and PHP. Under Java with Ant, there are another four subgroups:
1) JavaFX
2) Java Web
3) Java Enterprise
4) NetBeans Modules
Let’s start with a new Java with Ant project, since this is a popular type of Java application.