Pro Java 9 Games Development Leveraging the JavaFX APIs

(Michael S) #1

Chapter 6 ■ Setting Up YoUr Java 9 iDe: an introDUCtion to netBeanS 9


NetBeans 9 Is Extensible: Code Editing with Many Languages


Another thing that your word processor can’t do is allow you to add features to it, which NetBeans 9 can do
with its plug-in architecture. The term that describes this type of architecture is extensible, which means
that, if needed, it can be extended to include additional features. So if you wanted to extend NetBeans 9 to
allow you to program in Python, for instance, you could. NetBeans 9 can also support older languages such
as COBOL or BASIC in this fashion as well, although since the majority of popular consumer electronics
devices use Java, XML, JavaScript, SVG, and HTML5 these days, I’m not really sure why anyone would want
to take the time do this. I Googled it and found there are people coding in Python and COBOL in NetBeans,
so there’s real-world proof that this IDE is indeed extensible.
Probably because of its extensibility, the NetBeans 9 IDE supports a number of popular programming
languages, including C, C++, Java SE, Javadoc, JavaScript, XML, HTML5 and CSS on the client side, and
PHP, Groovy, Java EE, and Java Server Pages (JSP) on the server side. Client-side software is run on the
device that the end user is holding or using (in the case of an iTV set), and server-side software is running
remotely on a server somewhere and talking to the end user over the Internet or similar network while the
software is running on the server.
Client-side software will be more efficient, as it is local to the hardware device that it is running on,
and thus it is more scalable, as there is no server involved to experience any overload. Server overload will
always occur as more and more people use the server-side software at any given point in time. The Java SE
9 and JavaFX games or IoT deliverables you create will tend to be on the client side, delivered in and using
a web site, but also downloadable for use on the client side via JNLP or downloading a JAR or a compiled
executable file for a given operating system platform.


NetBeans 9 Is Efficient: Organized Project Management Tools


Clearly, project management features must be extremely robust in any mainstream IDE, and NetBeans
9 contains a plethora of project management features that allow you to look at your pro Java game
development projects, and their corresponding files and the interrelationships between those files, in a
number of different analytical ways for this very reason. There are six primary project management views,
or panes, that you can use to observe the various types of interrelationships within your project. Figure 6-2
shows the bootstrap pro Java 9 games development JavaFX project that we will be creating a bit later during
this chapter.
Figure 6-2 shows the six primary project management panes or windows opened up for this new project
so that you can see exactly what they will show you. A great programming IDE needs to be able to manage
projects that can grow to become quite massive, involving well over a million lines of code and contained
in hundreds of folders in your project folder hierarchy. This can potentially involve thousands of text (Java
9 code) files, along with hundreds of new media assets in the form of files, some text-based (SVG, XML) and
some in binary data format (JPEG, MPEG).
The Projects pane shows the Java Source Packages, Libraries, and Modules that make up your Java 9
game project. This can be seen on the bottom left in Figure 6-2. The pane at the top is the Files pane and
shows the project folder and its file hierarchy on your hard disk drive.
The Services pane underneath that shows Databases, Servers, Repositories, Docker, and Build Hosts so
that these can be used in a project. These are primarily server-side technologies, and these technologies are
generally used with a large development team, so we’re not going to get into these in detail as this is a book
for solo game designers.
The Projects pane should always be left open, on the left side of your IDE, as you will see in all of the
figures in this chapter from Figure 6-7 onward. The Projects pane, or window, provides you with a primary
access point for all of the project source code and assets (content) in your Java 9 game project. The Files
pane not only shows the project folder and file hierarchy but also shows the data, JavaFX new media assets,
and Java 9 code hierarchy inside each file.

Free download pdf