Lets get started in Chapter by learning everything you can about the NetBeans 8.1 JSON integrated development environment (IDE), because that is the primary piece of software you use in this book to create JSON projects. I chose the NetBeans 8.1 IDE to use for the book, even though I cover all the major IDE software in the appendixes, because it has native JSON project-creation workflows that you see in this chapter. The other IDEs currently require plug-ins to support JSON development. You start by learning about the NetBeans 8 IDE is because it is the front end, or window, through which you look at JSON development projects. Each chapter builds on information from previous chapters, so a logical progression is from how an IDE works, to JSON concepts and terminology, to objects, data structures, applications, and so forth.
NetBeans 8.1 is the official IDE for the Java 8 JDK, and its rapidly growing in popularity for HTML5, CSS3, and JavaScript development as well; as such, this is the IDE you should use for this book. Also, a major player (Oracle) is behind the software, and it is freely available for commercial usage (open source). That is not to say you cannot use another IDE, such as Eclipse or IntelliJ. These are the official IDEs for Android 4.x (32-bit) and Android 6.x (64-bit), respectively; but I prefer to use NetBeans 8.1 for my new media apps and game development for Java, JavaFX, HTML5, CSS3, and JavaScript software development, as well as for HTML5, XML, JSON markup, and JS programming.
The first thing you do in this chapter is look at what has been added in NetBeans 8.1. Next you examine the various attributes of the NetBeans 8.1 IDE that make it an invaluable tool for JSON Development. You'll see all the cool things JSON will do for you during the course of this book. Finally, you learn how to create JSON projects by using the NetBeans 8.1 New Project dialogs, which specifically support the creation of JSON projects in NetBeans.
NetBeans 8.1: The Intelligent JSON IDE
I assume that you already have a professional-level workstation in place for new media content development and JSON development, as outlined in detail in Appendix A. IDE installations are covered in the appendixes, including each of the three open source IDEs. I also assume that you have removed all your outdated JDKs and IDEs and made sure you have the latest Java and IDE software installed on your PC.
If youre new to coding and do not have the appropriate workstation, go to Walmart or PriceWatch.com, and purchase an affordable multicore (4-, 6-, or 8-core) 64-bit computer running Windows 10. It should have 4, 6, or 8 GB of DDR3 (1333 or 1600 memory-access speeds) system memory at the very least, and at least a 500 GB or even 1 TB hard disk drive.
NetBeans 8.1 Is Smart: Code Editing in Hyper-Drive
Although it is true that an IDE is essentially like a word processor, it is geared toward writing text for coding or markup rather than business documents. IDEs such as NetBeans 8.1 can lend a lot more power to your programming work process than a word processor brings to the document-authoring work process.
For instance, a word processor does not make suggestions in real time regarding the content youre writing for your business, whereas the NetBeans 8 IDE actually looks at what you are coding while youre actually writing the code and helps you write programming statements and constructs. One of the things NetBeans 8.1 will do is finish lines of code for you, as well as apply colors to your code statements to highlight different types of constructs.
NetBeans 8 also applies industry standards to your code, indenting the code to make it easier to read for both you and for the members of your JSON application development team.
NetBeans 8 can provide matching code -structure brackets, colons, and semicolons, so you dont get lost when you are creating complex, deeply nested, or dense programming constructs found in modern programming languages, such as those supported by NetBeans 8.1. You create such constructs as this book progresses in complexity and you go from JSON beginner to JSON developer; I point out JSON code that is dense, complex, or deeply nested as you encounter it.
NetBeans 8.1 can also provide bootstrap code such as the JSON application bootstrap code you create a bit later in the chapter. (I know youre eager to get started creating JSON projects and structures as soon as possible.)
As your code becomes more complex, it also becomes a far better candidate for code refactoring , which can make your code easier to understand, easier to upgrade, and far more efficient. NetBeans 8 can refactor your programs code automatically. Code refactoring is the process of changing the structure of existing computer code so it is more efficient or scalable without changing its external behaviorthat is, what the programming logic (your code) accomplishes. For instance, you could take Java 6 or Java 7 code and make it more efficient by implementing lambda expressions using Java 8, or even Java 9 when it is released later this year.
NetBeans includes pop-up helper dialogs containing methods, constants, asset references, and suggestions regarding how to construct programming statements. For instance, NetBeans 8.1 can suggest when it might be appropriate to use the powerful new Java 8 lambda expression features to make your code more streamlined and multithread compatible.
NetBeans 8.1 Is Extensible: Coding in All Languages
Another thing a word processor doesnt do is allow you to add features to it. NetBeans does, using its plug-in architecture. This type of architecture is said to be extensible , which means if needed, it can be extended to include additional features. For instance, if you wanted to extend NetBeans 8.1 to allow you to program using Python, you could. NetBeans 8.1 also supports older languages such as COBOL and BASIC in this fashion, although the majority of popular consumer electronic devices today use Java, XML, JavaScript, and HTML5. I googled this to be sure, and there are people coding in both Python and COBOL in NetBeans 8; this is real-world proof that the NetBeans 8.1 IDE is indeed completely extensible .
Probably due to its extensibility, the NetBeans 8.1 IDE supports a number of powerful 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 runs on the device the end user is holding or using (in the case of an iTV set), and server-side software runs remotely on a server somewhere and talks to the end user over the Internet or similar network. Client-side software is more efficient, because it is local to the device it is running on and thus is more scalable: no server is involved that might experience overload as more people use the software at any given point in time.
NetBeans 8.1 Is Efficient: Project-Management Tool
Your programming IDE needs to be able to manage projects that can grow to become massive, involving over a million lines of code, contained in hundreds of folders in the project folder hierarchy, and involving thousands of files or new media assets. Clearly, project-management features should be extremely robust for any mainstream IDE, and NetBeans 8.1 contains a plethora of project-management features. These allow you to look at JSON development projects and the corresponding files and their interrelationships in several different ways.