| <html> |
| <head> |
| <title>NetBeans Platform Description</title> |
| </head> |
| <body> |
| <h1>NetBeans Platform Features</h1> |
| <p><b>Why would you use the NetBeans Platform? |
| What does the NetBeans Platform give you? Many |
| out-of-the-box components and |
| much else besides.</b> |
| |
| <p>The main reusable features and components comprising |
| the NetBeans Platform are outlined below.</p> |
| |
| <h2>Module System</h2> |
| <p><img align="left" src="https://platform.netbeans.org/images/features/puzzle-0.jpg"/></p> |
| <p>The modular nature of a NetBeans |
| Platform application gives you the power to meet complex |
| requirements by combining several small, simple, and easily tested |
| modules encapsulating coarsely-grained application features.</p> |
| <p>Powerful versioning support helps give you confidence that |
| your modules will work together, while strict control over the public APIs |
| your modules expose will help you create a more flexible application |
| that's easier to maintain.</p> |
| <p>Since your application can use either standard NetBeans Platform |
| modules or OSGi bundles, you'll be able to integrate third-party |
| modules or develop your own. </p> |
| |
| <h2>Lifecycle Management</h2> |
| <p><img align="left" src="https://platform.netbeans.org/images/features/puzzle-2.jpg"/></p> |
| <p>Just as application servers, such as GlassFish or WebLogic, provide lifecycle services |
| to web applications, the NetBeans runtime container provide lifecycle |
| services to Java desktop applications.</p> |
| <p>Application servers understand how to |
| compose web modules, EJB modules, and related artifacts, into a single web |
| application. In a comparable manner, the NetBeans runtime container understands how to |
| compose NetBeans modules into a single Java desktop application. |
| </p> |
| <p>There is no need to write a main method for your application because |
| the NetBeans Platform already contains one. Also, support is provided |
| for persisting user settings across restart of the application, such as, |
| by default, the size and positions of the windows in the application.</p> |
| |
| <h2>Pluggability, Service Infrastructure, and File System</h2> |
| <p><img align="left" src="https://platform.netbeans.org/images/features/puzzle-1.jpg"/></p> |
| <p>End users of the application benefit from pluggable applications |
| because these enable them to install modules into their running |
| applications.</p><p> NetBeans modules can be installed, uninstalled, |
| activated, and deactivated at runtime, thanks to the runtime container. |
| <p>The NetBeans Platform provides an infrastructure for registering and |
| retrieving service implementations, enabling you to minimize direct |
| dependencies between individual modules and enabling a loosely |
| coupled architecture (high cohesion and low coupling). |
| <p>The NetBeans Platform provides a virtual file system, which is a hierarchical registry |
| for storing user settings, comparable to the Windows Registry on |
| Microsoft Windows systems. It also includes a unified API providing |
| stream-oriented access to flat and hierarchical |
| structures, such as disk-based files on local or remote servers, |
| memory-based files, and even XML documents. |
| </p> |
| |
| <h2>Window System, Standardized UI Toolkit, and Advanced Data-Oriented Components</h2> |
| <p><img align="left" src="https://platform.netbeans.org/images/features/puzzle-3.jpg"/></p> |
| <p>Most serious applications need more than one window. Coding |
| good interaction between multiple windows is not a trivial task. The |
| NetBeans window system lets you maximize/minimize, dock/undock, |
| and drag-and-drop windows, without you providing any code at all. |
| </p> |
| <p>Swing and JavaFX are the standard UI toolkits on the Java desktop and can be used |
| throughout the NetBeans Platform. Related benefits include the ability to change |
| the look and feel easily via "Look and Feel" support in Swing and CSS integration |
| in JavaFX, as well as the portability of GUI components across all operating |
| systems and the easy incorporation of many free and commercial |
| third-party Swing and JavaFX components. |
| </p> |
| <p>With the NetBeans Platform you're not constrained by one of the |
| typical pain points in Swing: the JTree model is completely different |
| to the JList model, even though they present the same data. |
| Switching between them means rewriting the model. The NetBeans |
| Nodes API provides a generic model for presenting your data. The |
| NetBeans Explorer & Property Sheet API provides several advanced |
| Swing components for displaying nodes. |
| <p>In addition to a window system, the NetBeans Platform provides |
| many other UI-related components, such as a property sheet, a |
| palette, complex Swing components for presenting data, a Plugin |
| Manager, and an Output window. |
| </p> |
| |
| <h2>Miscellaneous Features, Documentation, and Tooling Support</h2> |
| <p>The NetBeans IDE, which is the software development kit (SDK) of the NetBeans Platform, |
| provides many templates and tools, such as the award winning Matisse GUI Builder |
| that enables you to very easily design your application's |
| layout.</p> |
| |
| <p>The NetBeans Platform exposes <a href="http://bits.netbeans.org/dev/javadoc/index.html">a rich set of APIs</a>, which |
| are <a href="https://platform.netbeans.org/screenshots.html">tried</a>, <a href="http://qa.netbeans.org/">tested</a>, |
| and <a href="https://platform.netbeans.org/whatsnew/index.html">continually being improved</a>.</p> |
| <p>The |
| <a href="http://forums.netbeans.org/platform-users.html">community is helpful and diverse</a>, while a |
| vast library of |
| <a href="http://planets.sun.com/nbplatform/group/Prague/">blogs</a>, |
| <a href="https://platform.netbeans.org/articles/books.html">books</a>, |
| <a href="https://platform.netbeans.org/tutorials/">tutorials</a>, and <a href="http://edu.netbeans.org/contrib/slides/netbeans-platform/">training materials</a> |
| are continually being developed and updated in multiple languages by many different people |
| around the world.</p> |
| <!-- <p>The JavaHelp API is an integral part of the NetBeans Platform. You |
| can create help sets in each of your modules, and the NetBeans |
| Platform will automatically resolve them into a single helpset. You |
| can also bind help topics to UI components to create a context- |
| sensitive help system for your application. |
| </p>--> |
| <!-- |
| <p><h2>Other Benefits</h2> |
| |
| <p><p>Other factors that have persuaded developers to use the NetBeans Platform include |
| the fact that the NetBeans Platform uses Swing, which is the official standard UI toolkit, |
| that it enables applications to have a consistent look and feel, |
| that the Matisse GUI Builder enables you to very easily design your application's |
| layout, that <a href="http://bits.netbeans.org/dev/javadoc/index.html">the NetBeans Platform provides a rich set of APIs</a>, and that the |
| NetBeans Platform is <a href="https://platform.netbeans.org/screenshots.html">tried</a>, <a href="http://qa.netbeans.org/">tested</a>, and <a href="https://platform.netbeans.org/whatsnew/65.html">continually being improved</a>. Finally, |
| <a href="http://forums.netbeans.org/platform-users.html">the community is helpful and diverse</a>, while <a href="http://planets.sun.com/nbplatform/group/Prague/">blogs</a>, |
| <a href="https://platform.netbeans.org/articles/books.html">books</a>, |
| <a href="https://platform.netbeans.org/tutorials/">tutorials</a>, and <a href="http://edu.netbeans.org/contrib/slides/netbeans-platform/">training materials</a> |
| are continually being developed in multiple languages by many different people |
| around the world.--> |
| </body> |
| </html> |