| // |
| // Licensed to the Apache Software Foundation (ASF) under one |
| // or more contributor license agreements. See the NOTICE file |
| // distributed with this work for additional information |
| // regarding copyright ownership. The ASF licenses this file |
| // to you under the Apache License, Version 2.0 (the |
| // "License"); you may not use this file except in compliance |
| // with the License. You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, |
| // software distributed under the License is distributed on an |
| // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| // KIND, either express or implied. See the License for the |
| // specific language governing permissions and limitations |
| // under the License. |
| // |
| |
| = NetBeans Platform Learning Trail |
| :jbake-type: platform-tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :icons: font |
| :experimental: |
| :description: NetBeans Platform Learning Trail - Apache NetBeans |
| :keywords: Apache NetBeans Platform, Platform Tutorials, NetBeans Platform Learning Trail |
| |
| |
| == What is the NetBeans Platform? |
| |
| The NetBeans Platform is a broad Java framework on which you can base large |
| desktop applications. NetBeans IDE itself is |
| link:http://platform.netbeans.org/screenshots.html[one of the hundreds of |
| applications] based on the NetBeans Platform. The NetBeans Platform contains |
| APIs that simplify the handling of windows, actions, files, and many other |
| things typical in applications. |
| |
| Each distinct feature in a NetBeans Platform application can be provided by a |
| distinct NetBeans module, which is comparable to a plugin. A NetBeans module is |
| a group of Java classes that provides an application with a specific feature. |
| |
| You can also create new modules for NetBeans IDE itself. For example, you can |
| write modules that make your favorite cutting-edge technologies available to |
| users of NetBeans IDE. Alternatively, you might create a module to provide an |
| additional editor feature. |
| |
| == Getting Started |
| |
| * link:http://bits.netbeans.org/dev/javadoc/[NetBeans API Javadoc] ( link:https://netbeans.apache.org/download/index.html[download javadoc.zip for offline viewing]) |
| * link:https://netbeans.org/projects/platform/lists/dev/archive[NetBeans Developer Mailing List] |
| * link:https://netbeans.apache.org/wiki/[NetBeans Developer FAQ] |
| * link:https://netbeans.apache.org/tutorials/nbm-google.html[NetBeans Plugin Quick Start] |
| * link:https://netbeans.apache.org/tutorials/nbm-quick-start.html[NetBeans Platform Quick Start] |
| * link:https://netbeans.apache.org/tutorials/nbm-dukescript.html[NetBeans Platform Plugins with DukeScript] |
| // * What's New in NetBeans Platform link:http://platform.netbeans.org/whatsnew/65.html[6.5], link:http://platform.netbeans.org/whatsnew/67.html[6.7], link:http://platform.netbeans.org/whatsnew/68.html[6.8], link:http://platform.netbeans.org/whatsnew/69.html[6.9], link:http://platform.netbeans.org/whatsnew/70.html[7.0], link:http://platform.netbeans.org/whatsnew/71.html[7.1], link:http://platform.netbeans.org/whatsnew/72.html[7.2], link:http://bits.netbeans.org/7.2.1/javadoc/apichanges.html[7.2.1], link:http://bits.netbeans.org/7.3/javadoc/apichanges.html[7.3], link:http://bits.netbeans.org/7.3.1/javadoc/apichanges.html[7.3.1], link:http://bits.netbeans.org/7.4/javadoc/apichanges.html[7.4], link:http://bits.netbeans.org/8.0/javadoc/apichanges.html[8.0]? link:http://bits.netbeans.org/8.1/javadoc/apichanges.html[8.1]? |
| |
| == Porting |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-porting-basic.html[Porting Swing Components] |
| * link:https://netbeans.apache.org/tutorials/nbm-javafx.html[Porting JavaFX Components] |
| |
| == Using the NetBeans APIs |
| |
| === NetBeans Platform Fundamentals |
| |
| Are you new to the NetBeans Platform? If so, after following the documents in |
| the "Getting Started" section above, please continue your learning path by |
| reading the documents below. In particular, the book, published in 2014, |
| "NetBeans Platform for Beginners", is very highly recommended! |
| |
| === NetBeans Platform for Beginners |
| |
| [.feature] |
| -- |
| image::images/nbp4beginners.jpg[role="left", link="https://leanpub.com/nbp4beginners"] |
| -- |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-runtime-container.html[Runtime Container Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-10-top-apis.html[Top 10 NetBeans APIs (Video)] |
| * link:http://wiki.netbeans.org/NbmIdioms[NetBeans APIs in a Nutshell] |
| |
| |
| [.feature] |
| -- |
| image::images/refcard70.png[role="left", link="http://refcardz.dzone.com/refcardz/netbeans-platform-70"] |
| -- |
| |
| ==== Quick Overviews |
| * link:http://netbeans.dzone.com/articles/netbeans-lookups-explained[NetBeans Lookups Explained!] |
| * link:http://netbeans.dzone.com/news/netbeans-extension-points[How Do NetBeans Extension Points Work?] |
| |
| ==== Selection Management Series |
| * link:https://netbeans.apache.org/tutorials/nbm-selection-1.html[Part 1: Selection Management Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-selection-2.html[Part 2: Selection Management Tutorial IIāUsing Nodes] |
| * link:https://netbeans.apache.org/tutorials/nbm-nodesapi2.html[Part 3: Nodes API Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-property-editors.html[Part 4: Property Editor API Tutorial] |
| |
| === Applications Built on the NetBeans Platform |
| |
| ==== Applications |
| * link:https://netbeans.apache.org/tutorials/nbm-paintapp.html[Paint Application Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-feedreader.html[Feed Reader Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-htmleditor.html[HTML Editor Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-povray-1.html[POV-Ray Renderer Tutorial] |
| |
| ==== Common Scenarios |
| * link:https://netbeans.apache.org/tutorials/nbm-crud.html[Create/Read/Update/Delete (CRUD)] |
| * link:https://netbeans.apache.org/tutorials/nbm-geospatial.html[Geospatial] |
| * link:https://netbeans.apache.org/tutorials/nbm-workflow.html[Workflow] |
| * link:https://netbeans.apache.org/tutorials/nbm-ide.html[Development Environment] |
| |
| == NetBeans APIs for Developing Code Editors |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-filetype.html[File Type Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-javacc-lexer.html[JavaCC Lexer Generator Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-javacc-parser.html[JavaCC Parser Generator Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-copyfqn.html[Java Language Infrastructure Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-code-generator.html[Code Generator Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-code-completion.html[Code Completion Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-mark-occurrences.html[Mark Occurrences Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-palette-api1.html[Code Snippet Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-palette-api2.html[Editor Component Palette Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-xmleditor.html[XML Editor Extension Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-hyperlink.html[Hyperlink Navigation Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-java-hint.html[Java Hints Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-code-template.html[Code Templates Tutorial] |
| |
| == NetBeans APIs for Visualizing Data |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-visual_library.html[Visual Library Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-quick-start-visual.html[Visual Library Tutorial for Java Applications] |
| * link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[Visualize SQL Scripts with the NetBeans Platform] |
| * link:http://wiki.netbeans.org/VisualDatabaseExplorer[A Visual Database Explorer for NetBeans] |
| * link:http://java.dzone.com/news/how-create-visual-applications[How to Create Visual Applications in Java?] |
| * link:http://java.dzone.com/news/how-add-resize-functionality-v[How to Add Resize Functionality to Visual Applications in Java?] |
| * link:https://netbeans.org/community/magazine/html/04/visuallibrary.html[Creative Uses of the Visual Library] |
| |
| == Miscellaneous NetBeans Platform Tutorials |
| |
| NOTE: These tutorials are alphabetically ordered. |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-filetemplates.html[File Template Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-nbi.html[Installer Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-options.html[Options Window Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-projectsamples.html[Project Sample Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-projectextension.html[Project Type Extension Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-projecttype.html[Project Type Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-propertyeditors-integration.html[Property Editor Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-quick-search.html[Quick Search Integration Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-ribbonbar.html[Ribbon Bar Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-nodesapi.html[System Properties Module Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-wizard.html[Wizard Module Tutorial] |
| |
| == Command Line |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-ant.html[Ant] |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-commandline.html[Maven] |
| |
| == YouTube: Five Simple Ways to Extend NetBeans IDE |
| |
| [.feature] |
| -- |
| image::images/five-easy-extend.png[role="left", link="http://www.youtube.com/watch?v=h4k5JpluJM8"] |
| -- |
| |
| == Using Maven with the NetBeans Platform |
| |
| === General Introductions |
| * link:http://wiki.netbeans.org/MavenBestPractices[Maven Best Practices in NetBeans IDE] |
| * link:http://bits.netbeans.org/mavenutilities/nbm-maven-plugin/[About the NetBeans Module Maven Plugin] |
| |
| === NetBeans Platform Tutorials |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-commandline.html[NetBeans Platform Maven Command Line Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-quickstart.html[NetBeans Platform Quick Start Using Maven] |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-modulesingle.html[NetBeans Platform File Type Tutorial Using Maven] |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-modulesuite.html[NetBeans Platform Selection Tutorial Using Maven] |
| * link:https://netbeans.apache.org/tutorials/nbm-maven-crud.html[NetBeans Platform CRUD Tutorial Using Maven] |
| |
| === Miscellaneous |
| * link:http://blogs.oracle.com/geertjan/entry/mavenized_netbeans_platform_runtime_container[Mavenized NetBeans Platform Runtime Container] |
| * link:http://netbeans.dzone.com/how-create-maven-nb-project-type[Creating Custom Project Types with Maven and the NetBeans Platform] |
| * link:http://netbeans.dzone.com/nb-how-create-javahelp-mavenized[Creating JavaHelp with Maven and the NetBeans Platform] |
| * link:http://netbeans.dzone.com/videos/screencast-maven-and-netbeans[Screencast: Maven and the NetBeans Platform] |
| |
| == Diagnostics |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-test.html[NetBeans Platform Test Infrastructure Tutorial] |
| * link:https://netbeans.apache.org/tutorials/nbm-gesture.html[NetBeans Platform Gesture Collection Infrastructure Tutorial] |
| |
| == Using OSGi with the NetBeans Platform |
| |
| * link:https://netbeans.apache.org/tutorials/nbm-osgi-quickstart.html[NetBeans Platform Quick Start Using OSGi] |
| * link:https://netbeans.apache.org/tutorials/nbm-emf.html[NetBeans Platform EMF Integration Tutorial] |
| |
| == Screencasts |
| |
| * link:http://prezi.com/b5ntwnpvu9j8/free-netbeans-platform-crash-course/[Slides: Free NetBeans Platform Crash Course] |
| * link:https://netbeans.apache.org/tutorials/nbm-10-top-apis.html[Video: Top 10 NetBeans APIs] |
| * link:https://netbeans.apache.org/kb/docs/screencasts.html[NetBeans Screencasts] |
| |
| == Community-Contributed Docs |
| |
| * link:http://wiki.netbeans.org/wiki/view/VisualDatabaseExplorer[A Visual Database Explorer for NetBeans], by Toni Epple |
| * link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[DDL Visualizer: Visualize SQL Script with NetBeans], by Damir Tesanovic |
| * link:http://blogs.kiyut.com/tonny/2007/10/18/customize-netbeans-platform-splash-screen-and-about-dialog/[Customize the Splash Screen and About Dialog], by Tonny Kohar |
| * link:http://wiki.netbeans.org/wiki/view/AddingMRUList[Create the 'Most Recently Used Files' List], by Tonny Kohar |
| * link:http://wiki.netbeans.org/wiki/view/TranslateNetbeansModule[Translate Your NetBeans Module], by Michel Graciano |
| * link:http://netbeans.dzone.com/tips/quickstart-guide-language-supp[Quick Start: Creating Language Tools In NetBeans IDE], by Jordi R. Cardona |
| |
| == Reference Material |
| |
| === Official NetBeans Platform Reference Material |
| |
| * link:http://bits.netbeans.org/dev/javadoc/index.html[NetBeans API Javadoc] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-modules/org/openide/modules/doc-files/api.html[Module System API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-windows/org/openide/windows/doc-files/api.html[Window System API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-filesystems/org/openide/filesystems/doc-files/api.html[Filesystems API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-loaders/org/openide/loaders/doc-files/api.html[Datasystems API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/doc-files/api.html[Nodes API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/api.html[Explorer API] |
| * link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/propertyViewCustomization.html[Property Sheet Customization] |
| * link:http://bits.netbeans.org/dev/javadoc/org-netbeans-api-visual/org/netbeans/api/visual/widget/doc-files/documentation.html[Visual Library API] |
| * link:http://bits.netbeans.org/netbeans/trunk/javadoc/org-openide-util/org/openide/util/doc-files/api.html[Utilities API] |
| * link:http://bits.netbeans.org/dev/javadoc/branding.html[Branding] |
| * link:http://bits.netbeans.org/dev/javadoc/layers.html[Description of Layer Registrations in NetBeans APIs] |
| * link:http://bits.netbeans.org/dev/javadoc/apichanges.html[Latest NetBeans API Changes] |
| |
| == Other Resources |
| |
| === Online Magazine Articles |
| |
| * link:http://java.sun.com/developer/technicalArticles/javase/extensible/index.html[Creating Extensible Applications With the Java Platform] |
| * link:http://java.dzone.com/news/how-create-pluggable-photo-alb[How to Create a Pluggable Photo Album in Java] |
| * link:https://netbeans.org/community/magazine/html/04/maven.html[NetBeans Platform Development with Maven and Mevenide] |
| |
| === NetBeans Platform Blogs |
| |
| * link:http://blogs.oracle.com/geertjan[Geertjan Wielenga], link:http://eppleton.de[Toni Epple], link:http://www.aljoscha-rittner.de/blog/[Aljoscha Rittner (German)], link:http://blogs.oracle.com/scblog[Sandip Chitale], link:http://blogs.oracle.com/jglick[Jesse Glick], link:https://www.java.net/blogs/timboudreau[Tim Boudreau], link:http://blogs.kiyut.com/tonny/[Tonny Kohar]. |
| |
| === NetBeans Platform Books |
| |
| * link:https://leanpub.com/nbp4beginners["NetBeans Platform for Beginners"] |
| |
| [.feature] |
| -- |
| image::images/nbp4beginners.jpg[role="left", link="https://leanpub.com/nbp4beginners"] |
| -- |
| |
| * link:http://www.apress.com/9781430241010["The Definitive Guide to NetBeans Platform 7"] |
| * link:https://www.packtpub.com/netbeans-platform-6-9-developers-guide/book["NetBeans Platform 6.9 Developer's Guide"] |
| * link:http://www.apress.com/9781430224174["The Definitive Guide to NetBeans Platform 6.5"] |
| * link:http://www.amazon.com/Rich-Client-Programming-Plugging-NetBeans/dp/0132354802["Rich Client Programming: Plugging into the NetBeans Platform"] |
| |
| |