NetBeans

NetBeans is an integrated development environment (IDE) for Java. NetBeans allows applications to be developed from a set of modular software components called modules. NetBeans runs on Windows, macOS, Linux and Solaris. In addition to Java development, it has extensions for other languages like PHP, C, C++, HTML5,[4] and JavaScript. Applications based on NetBeans, including the NetBeans IDE, can be extended by third party developers.[5]

NetBeans
Screenshot
Apache NetBeans 11 On JDK 12.0.1 in Arch Linux
Original author(s)Roman Staněk
Developer(s)
Stable release11.2 Update 1 (December 3, 2019 (2019-12-03)) [±][1]
Preview release
11.3 Beta 2[2] / February 3, 2020 (2020-02-03)
RepositoryNetBeans Repository
Written inJava
Operating systemWindows, macOS, Linux, Solaris; feature-limited OS independent version available
PlatformJava SE, Java EE, JavaFX
Available in28 languages
List of languages
TypeIDE
LicenseApache License 2.0 (previously CDDL or GPLv2 with classpath exception)[3]
Websitenetbeans.apache.org

History

NetBeans began in 1996 as Xelfi (word play on Delphi),[6][7] a Java IDE student project under the guidance of the Faculty of Mathematics and Physics at Charles University in Prague. In 1997, Roman Staněk formed a company around the project and produced commercial versions of the NetBeans IDE until it was bought by Sun Microsystems in 1999. Sun open-sourced the NetBeans IDE in June of the following year. Since then, the NetBeans community has continued to grow.[8] In 2010, Sun (and thus NetBeans) was acquired by Oracle Corporation. Under Oracle, NetBeans competed with JDeveloper, a freeware IDE that has historically been a product of the company. In September 2016, Oracle submitted a proposal to donate the NetBeans project to the Apache Software Foundation, stating that it was "opening up the NetBeans governance model to give NetBeans constituents a greater voice in the project's direction and future success through the upcoming release of Java 9 and NetBeans 9 and beyond". The move was endorsed by Java creator James Gosling.[9] The project entered the Apache Incubator in October 2016.[10]

NetBeans IDE releases[11]

NetBeans IDE 6.0 introduced support for developing IDE modules and rich client applications based on the NetBeans platform, a Java Swing GUI builder (formerly known as "Project Matisse"), improved CVS support, WebLogic 9 and JBoss 4 support, and many editor enhancements. NetBeans 6 is available in official repositories of major Linux distributions.

NetBeans IDE 6.5, released in November 2008, extended the existing Java EE features (including Java Persistence support, EJB 3 and JAX-WS). Additionally, the NetBeans Enterprise Pack supports the development of Java EE 5 enterprise applications, including SOA visual design tools, XML schema tools, web services orchestration (for BPEL), and UML modeling. The NetBeans IDE Bundle for C/C++ supports C/C++ and FORTRAN development.

NetBeans IDE 6.8 is the first IDE to provide complete support of Java EE 6 and the GlassFish Enterprise Server v3. Developers hosting their open-source projects on kenai.com additionally benefit from instant messaging and issue tracking integration and navigation right in the IDE, support for web application development with PHP 5.3 and the Symfony framework, and improved code completion, layouts, hints and navigation in JavaFX projects.

NetBeans IDE 6.9, released in June 2010, added support for OSGi, Spring Framework 3.0, Java EE dependency injection (JSR-299), Zend Framework for PHP, and easier code navigation (such as "Is Overridden/Implemented" annotations), formatting, hints, and refactoring across several languages.

NetBeans IDE 7.0 was released in April 2011. On August 1, 2011, the NetBeans Team released NetBeans IDE 7.0.1, which has full support for the official release of the Java SE 7 platform.[12]

NetBeans IDE 7.3 was released in February 2013 which added support for HTML5 and web technologies.[13]

NetBeans IDE 7.4 was released on 15 October 2013.

NetBeans IDE 8.0 was released on 18 March 2014.

NetBeans IDE 8.1 was released on 4 November 2015.

NetBeans IDE 8.2 was released on 3 October 2016.

Netbeans 9.0, which adds support for Java 9 and 10, was released on 29 July 2018, by the Apache Incubator project.[10][11][14][15]

NetBeans 10.0 was released on 27 December 2018. It brings support for Java 11 and improved support for PHP (7.0–7.3).

NetBeans 11.0 was released on 4 April 2019.

NetBeans 11.1 was released on 22 July 2019.

NetBeans platform

The NetBeans Platform is a framework for simplifying the development of Swing desktop applications. The NetBeans IDE bundle for Java SE contains what is needed to start developing NetBeans plugins and NetBeans Platform based applications; no additional SDK is required.

Applications can install modules dynamically. Any application can include the Update Center module to allow users of the application to download digitally signed upgrades and new features directly into the running application. Reinstalling an upgrade or a new release does not force users to download the entire application again.

The platform offers reusable services common to desktop applications, allowing developers to focus on the logic specific to their application. Among the features of the platform are:

  • User interface management (e.g. menus and toolbars)
  • User settings management
  • Storage management (carries out efficient storage)
  • Window management
  • Wizard framework (supports step-by-step dialogs)
  • NetBeans Visual Library
  • Integrated development tools

A showcase of applications developed on top of NetBeans Platform is available at https://netbeans.org/features/platform/showcase.html

NetBeans IDE

NetBeans IDE is an open-source integrated development environment. NetBeans IDE supports development of all Java application types (Java SE (including JavaFX), Java ME, web, EJB and mobile applications) out of the box. Among other features are an Ant-based project system, Maven support, refactorings, version control (supporting CVS, Subversion, Git, Mercurial and Clearcase).

Modularity: All the functions of the IDE are provided by modules. Each module provides a well-defined function, such as support for the Java language, editing, or support for the CVS versioning system, and SVN. NetBeans contains all the modules needed for Java development in a single download, allowing the user to start working immediately. Modules also allow NetBeans to be extended. New features, such as support for other programming languages, can be added by installing additional modules. For instance, Sun Studio, Sun Java Studio Enterprise, and Sun Java Studio Creator from Sun Microsystems are all based on the NetBeans IDE.

License: The IDE is licensed under the Apache License 2.0. Previously, from July 2006 through 2007, NetBeans IDE was licensed under Sun's Common Development and Distribution License (CDDL), a license based on the Mozilla Public License (MPL). In October 2007, Sun announced that NetBeans would henceforth be offered under a dual license of the CDDL and the GPL version 2 licenses, with the GPL linking exception for GNU Classpath.[16] Oracle has donated NetBeans Platform and IDE to the Apache Foundation where it underwent incubation and graduated as a top level project in April 2019.[17]

Other products

In an October 2016 interview with Gabriela Motroc, Oracle Vice President Bill Pataky stated that Oracle has a number of products that depend on NetBeans.[18]

  • Oracle Developer Studio, a commercial C, C++, Fortran and Java development environment is 100% based on NetBeans[18]
  • Oracle JDeveloper, an end-to-end development for Oracle's technology stack takes major subsystems from NetBeans[18]
  • Oracle JavaScript Extension Toolkit, a modular, open source toolkit based on modern JavaScript, CSS3 and HTML5 design and development principles uses NetBeans as its preferred IDE[18]

Alternative distributions

CoolBeans

In 2018, while NetBeans was still in the Apache incubator, an alternative NetBeans distribution, called CoolBeans[19] was independently launched.[20] CoolBeans offered an installer for Windows, native application for macOS, included a Java Development Kit, native modules for system notifications as well as some Java Enterprise modules.

Integrated Modules

These modules are part of the NetBeans IDE:

NetBeans Profiler

The NetBeans Profiler[21] is a tool for the monitoring of Java applications: It helps developers find memory leaks and optimize speed. Formerly downloaded separately, it is integrated into the core IDE since version 6.0. 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 support Profiling Points that let you profile precise points of execution and measure execution time.

GUI design tool

NetBeans GUI Builder

Formerly known as project Matisse, the GUI design-tool enables developers to prototype and design Swing GUIs by dragging and positioning GUI components.[22]

The GUI builder has built-in support for JSR 295 (Beans Binding technology), but the support for JSR 296 (Swing Application Framework) was removed in 7.1.

NetBeans JavaScript editor

The NetBeans JavaScript editor provides extended support for JavaScript, Ajax, and CSS.[23][24]

JavaScript editor features comprise syntax highlighting, refactoring, code completion for native objects and functions, generation of JavaScript class skeletons, generation of Ajax callbacks from a template; and automatic browser compatibility checks.

CSS editor features comprise code completion for styles names, quick navigation through the navigator panel, displaying the CSS rule declaration in a List View and file structure in a Tree View, sorting the outline view by name, type or declaration order (List & Tree), creating rule declarations (Tree only), refactoring a part of a rule name (Tree only).

The NetBeans 7.4 and later uses the new Nashorn JavaScript engine developed by Oracle.

NetBeans IDE Download Bundles

Users can choose to download NetBeans IDE bundles tailored to specific development needs. Users can also download and install all other features at a later date directly through the NetBeans IDE.

NetBeans IDE Bundle for Web and Java EE

The NetBeans IDE Bundle for Web & Java EE[25] provides complete tools for all the latest Java EE 6 standards, including the new Java EE 6 Web Profile, Enterprise Java Beans (EJBs), servlets, Java Persistence API, web services, and annotations. NetBeans also supports the JSF 2.0 (Facelets), JavaServer Pages (JSP), Hibernate, Spring, and Struts frameworks, and the Java EE 5 and J2EE 1.4 platforms. It includes GlassFish and Apache Tomcat.

Some of its features with Java EE include:

  • Improved support for CDI, REST services and Java Persistence
  • New support for Bean Validation
  • Support for JSF component libraries, including bundled PrimeFaces library
  • Improved editing for Expression Language in JSF, including code completion, refactoring and hints

NetBeans IDE Bundle for PHP

NetBeans supports PHP since version 6.5. The bundle for PHP includes:

  • syntax highlighting, code completion, occurrence highlighting, error highlighting, CVS version control
  • semantic analysis with highlighting of parameters and unused local variables
  • PHP code debugging with xdebug
  • PHP Unit testing with PHPUnit and Selenium
  • Code coverage
  • Symfony framework support (since version 6.8)
  • Zend Framework support (since version 6.9)
  • Yii Framework support (since version 7.3)
  • PHP 5.3 namespace and closure support (since version 6.8)
  • Code Folding for Control Structures (since version 7.2 dev)[26]

NetBeans IDE Complete Bundle

Oracle also releases a version of NetBeans that includes all of the features of the above bundles. This bundle includes:

  • NetBeans Base IDE
  • Java SE, JavaFX
  • Web and Java EE
  • Java ME
  • C/C++
  • PHP (Version 5.5 and later)
  • asd
  • Apache Groovy
  • GlassFish
  • Apache Tomcat

Official Ruby support was removed with the release of 7.0.

Localization

NetBeans IDE is translated into the following languages:

Community translations of the IDE are also available in the following languages:

Community translations[27]
LanguagePlatformJava SE
(IDE)
All
AfrikaansAs of 6.9NoNo
AlbanianAs of 5.5NoNo
AzerbaijaniNoNoNo
CatalanAs of 6.7.1As of 6.7.1As of 6.9.1[28]
CzechAs of 6.0NoNo
DutchYesYesNo
FilipinoAs of 6.9NoNo
FrenchYesYesNo
GalicianYesYesAs of 6.8
GermanAs of 5.5As of 5.5[29]No
GreekAs of 6.9NoNo
HindiAs of 6.9NoNo
IndonesianAs of 5.5NoNo
ItalianYesYesNo
KoreanAs of 5.0As of 5.0[30]No
LithuanianAs of 6.9NoNo
RomanianAs of 6.8NoNo
RussianAs of 5.0As of 6.9.1
SerbianAs of 6.9NoNo
SpanishAs of 5.5As of 5.5No
SwedishYesYesNo
Traditional ChineseYesYesNo
TurkishYesYesNo
VietnameseAs of 6.9NoNo

See also

  • Oracle JDeveloper
  • Oracle Developer Studio
  • JetBrains IntelliJ
  • Eclipse IDE
  • Sun Microsystems
  • Comparison of integrated development environments

References

  1. https://blogs.apache.org/netbeans/entry/released-netbeans-11-2-update
  2. "Apache NetBeans 11.3-beta2 is Ready for Testing!". Apache NetBeans Blog. February 3, 2020. Retrieved 2020-02-29.
  3. "NetBeans IDE Dual License Header and License Notice". Netbeans.org. April 1, 1989. Retrieved 2013-07-18.
  4. "HTML5 Web Development Support". netbeans.org. Retrieved August 2, 2017.
  5. "NetBeans MOVED". platform.netbeans.org. Retrieved August 2, 2017.
  6. "original Xelfi homepage". Archived from the original on April 24, 2012. Retrieved May 17, 2008.
  7. "Happy Birthday NetBeans - interview with Jaroslav "Yarda" Tulach". Netbeans.org. Retrieved May 17, 2008.
  8. "A Brief History of NetBeans". Netbeans.org. Retrieved May 17, 2008.
  9. "Java founder James Gosling endorses Apache takeover of NetBeans Java IDE". InfoWorld. Retrieved September 19, 2016.
  10. "NetBeans Incubation Status". Retrieved August 4, 2017.
  11. "Roadmap". Oracle. Retrieved February 13, 2018.
  12. "NetBeans IDE 7.0.1 Now Available for Download". Oracle. Archived from the original on October 26, 2011. Retrieved September 11, 2011.
  13. "NetBeans IDE 7.3 Details". Oracle. Retrieved September 13, 2013.
  14. Wielenga, Geertjan. "Using Apache NetBeans (incubating) with JDK 9". Jaxenter. Retrieved February 13, 2018.
  15. https://cwiki.apache.org/confluence/display/NETBEANS/Apache+NetBeans+9.0+New+and+Noteworthy
  16. "Why GPL v2 Frequently Asked Questions". netbeans.org. Retrieved August 2, 2017.
  17. "The Apache Software Foundation Announces Apache® NetBeans™ as a Top-Level Project". blogs.apache.org. Retrieved July 12, 2019.
  18. Motroc, Gabriela (October 5, 2016). "Oracle developers will be involved in at least two Apache NetBeans releases". Jaxenter. Retrieved 2016-10-07.
  19. "CoolBeans - Code to your heart". coolbeans.xyz. Retrieved July 12, 2019.
  20. Motroc, Gabriela (December 5, 2018). "I hope to make CoolBeans more polished than NetBeans with native notifications and retina icons". Jaxenter. Retrieved 2019-07-12.
  21. "Profiler". Netbeans.org. Retrieved May 17, 2008.
  22. "Swing GUI Builder (formerly Project Matisse)". Netbeans.org. Retrieved May 17, 2008.
  23. "Javascript". Netbeans wiki. March 31, 2007. Retrieved 2008-04-19.
  24. "Java Web Applications". Netbeans.org. Retrieved April 19, 2008.
  25. "Web & Java EE". Netbeans.org. Retrieved May 17, 2008.
  26. "Netbeans Bugzilla - Bug 186731". Retrieved May 23, 2012.
  27. "TFL10nCommunityStatus - NetBeans Wiki". Wiki.netbeans.org. Retrieved July 18, 2013.
  28. "Catalan localization group at OpenSolaris". Archived from the original on July 16, 2011. Retrieved August 2, 2017.
  29. "NetBeans.org Community News: Go Multilingual with NetBeans IDE 5.5.1!". Retrieved August 2, 2017.
  30. "NetBeans Community News". netbeans.org. Retrieved August 2, 2017.

Further reading

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.