// 
//     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 平台学习资源
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: NetBeans 平台学习资源 - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, NetBeans 平台学习资源


== 什么是 NetBeans 平台？

NetBeans 平台是一个广泛使用的 Java 框架，您可以以此为基础开发大型桌面应用程序。NetBeans IDE 本身也是以 NetBeans 平台为基础的link:http://platform.netbeans.org/screenshots.html[+数百个应用程序之一+]。NetBeans 平台包含了许多 API，可以简化窗口、操作、文件以及其他应用程序中常见内容的处理。

NetBeans 平台应用程序中每种功能都由一个 NetBeans 模块提供，NetBeans 模块类似于插件。NetBeans 模块是一组 Java 类，提供具有特定功能的应用程序。

您也可以为 NetBeans IDE 本身创建新的模块。例如，您可以编写模块，使 NetBeans IDE 的用户能够使用您所喜欢的一些前沿技术。此外，您也可以创建模块提供额外的编辑器功能。

== 入门指南

* link:http://bits.netbeans.org/dev/javadoc/[+NetBeans API Javadoc+]（link:https://netbeans.org/downloads/zip.html[+下载 javadoc.zip 脱机查看+]）
* link:https://netbeans.org/projects/platform/lists/dev/archive[+NetBeans 开发者邮件列表+]
* link:http://wiki.netbeans.org/NetBeansDeveloperFAQ[+NetBeans 开发者常见问题解答+]
* link:http://platform.netbeans.org/tutorials/nbm-google.html[+NetBeans 插件快速入门+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-start.html[+NetBeans 平台快速入门+]
* NetBeans 平台 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://platform.netbeans.org/tutorials/nbm-porting-basic.html[+传送 Swing 组件+]
* link:http://platform.netbeans.org/tutorials/nbm-javafx.html[+传送 JavaFX 组件+]

== 使用 NetBeans API

=== NetBeans 平台基础知识

您不熟悉 NetBeans 平台？如果是这样，请先学习上述“入门”部分中的文档，然后再阅读下面的文档，继续您的学习历程。尤其应该阅读下面列出的“选择管理系列”的四个部分，您可以从中了解 NetBeans 平台的各个部分是如何融合在一起的！

* link:http://platform.netbeans.org/tutorials/nbm-runtime-container.html[+运行时容器教程+]
* link:http://platform.netbeans.org/tutorials/nbm-10-top-apis.html[+最主要的 10 个 NetBeans API（视频）+]
* link:http://wiki.netbeans.org/NbmIdioms[+NetBeans API 概述+]

==== 基本 NetBeans 平台参考卡

image::../../images_www/screenshots/platform/refcard70.png[role="left", link="http://refcardz.dzone.com/refcardz/netbeans-platform-70"]

==== 总览
* link:http://netbeans.dzone.com/articles/netbeans-lookups-explained[+介绍了 NetBeans 查阅功能！+]
* link:http://netbeans.dzone.com/news/netbeans-extension-points[+NetBeans 扩展点的工作原理+]

==== 选择管理系列

* link:http://platform.netbeans.org/tutorials/nbm-selection-1.html[+第 1 部分：选择管理教程+]
* link:http://platform.netbeans.org/tutorials/nbm-selection-2.html[+第 2 部分：选择管理教程 II - 使用节点+]。
* link:http://platform.netbeans.org/tutorials/nbm-nodesapi2.html[+第 3 部分：节点 API 教程+]
* link:http://platform.netbeans.org/tutorials/nbm-property-editors.html[+第 4 部分：属性编辑器 API 教程+]

=== 在 NetBeans 平台上构建应用程序

==== 应用程序

* link:http://platform.netbeans.org/tutorials/nbm-paintapp.html[+绘图应用程序教程+]
* link:http://platform.netbeans.org/tutorials/nbm-feedreader.html[+Feed 阅读器教程+]
* link:http://platform.netbeans.org/tutorials/nbm-htmleditor.html[+HTML 编辑器教程+]
* link:http://platform.netbeans.org/tutorials/nbm-povray-1.html[+POV-Ray 呈现器教程+]

==== 常见方案

* link:http://platform.netbeans.org/tutorials/nbm-crud.html[+创建/读取/更新/删除 (CRUD)+]
* link:http://platform.netbeans.org/tutorials/nbm-geospatial.html[+地理空间+]
* link:http://platform.netbeans.org/tutorials/nbm-workflow.html[+工作流+]
* link:http://platform.netbeans.org/tutorials/nbm-3d.html[+3D 建模+]
* link:http://platform.netbeans.org/tutorials/nbm-ide.html[+开发环境+]

=== 用于开发代码编辑器的 NetBeans API

* link:http://platform.netbeans.org/tutorials/nbm-filetype.html[+文件类型集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-javacc-lexer.html[+JavaCC 词法分析器生成器集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-javacc-parser.html[+JavaCC 解析器生成器集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-copyfqn.html[+Java 语言基础结构教程+]
* link:http://platform.netbeans.org/tutorials/nbm-code-generator.html[+代码生成器集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-code-completion.html[+代码完成集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-mark-occurrences.html[+标记实例模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-palette-api1.html[+代码片段教程+]
* link:http://platform.netbeans.org/tutorials/nbm-palette-api2.html[+编辑器组件面板模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-xmleditor.html[+XML 编辑器扩展模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-hyperlink.html[+超链接导航教程+]
* link:http://platform.netbeans.org/tutorials/nbm-java-hint.html[+Java 提示教程+]
* link:http://platform.netbeans.org/tutorials/nbm-code-template.html[+代码模板教程+]

=== 用于可视化数据的 NetBeans API

* link:http://platform.netbeans.org/tutorials/nbm-visual_library.html[+可视库教程+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-start-visual.html[+针对 Java 应用程序的可视库教程+]
* link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[+在 NetBeans 平台中直观设计 SQL 脚本+]
* link:http://wiki.netbeans.org/VisualDatabaseExplorer[+用于 NetBeans 的可视数据库资源管理器+]
* link:http://java.dzone.com/news/how-create-visual-applications[+如何使用 Java 创建可视化应用程序？+]
* link:http://java.dzone.com/news/how-add-resize-functionality-v[+如何使用 Java 将调整大小功能添加到可视化应用程序？+]
* link:https://netbeans.org/community/magazine/html/04/visuallibrary.html[+可视化库的妙用+]

=== 其他 NetBeans 平台教程

_（按字母数字顺序排序）_

* link:http://platform.netbeans.org/tutorials/nbm-filetemplates.html[+文件模板模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-nbi.html[+安装程序集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-options.html[+选项窗口模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-projectsamples.html[+项目样例模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-projectextension.html[+项目类型扩展模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-projecttype.html[+项目类型模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-propertyeditors-integration.html[+属性编辑器集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-search.html[+快速搜索集成教程+]
* link:http://platform.netbeans.org/tutorials/nbm-ribbonbar.html[+功能区栏教程+]
* link:http://platform.netbeans.org/tutorials/nbm-nodesapi.html[+系统属性模块教程+]
* link:http://platform.netbeans.org/tutorials/nbm-wizard.html[+向导模块教程+]

=== 命令行

* link:http://platform.netbeans.org/tutorials/nbm-ant.html[+Ant+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-commandline.html[+Maven+]

== YouTube：五种简单的 NetBeans IDE 扩展方法

image::../../images_www/screenshots/platform/five-easy-extend.png[role="left", link="http://www.youtube.com/watch?v=h4k5JpluJM8"]

== 在 NetBeans 平台中使用 Maven

=== 简介

* link:http://wiki.netbeans.org/MavenBestPractices[+NetBeans IDE 中的 Maven 最佳做法+]
* link:http://mojo.codehaus.org/nbm-maven-plugin/[+关于 NetBeans 模块 Maven 插件+]

=== NetBeans 平台教程

* link:http://platform.netbeans.org/tutorials/nbm-maven-commandline.html[+NetBeans 平台 Maven 命令行教程+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-quickstart.html[+在 NetBeans 平台中使用 Maven 的快速入门+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesingle.html[+在 NetBeans 平台中使用 Maven 的文件类型教程+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesuite.html[+在 NetBeans 平台中使用 Maven 的选择教程+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-crud.html[+在 NetBeans 平台中使用 Maven 的 CRUD 教程+]

==== 其他

* link:http://blogs.oracle.com/geertjan/entry/mavenized_netbeans_platform_runtime_container[+在 Maven 中使用的 NetBeans 平台运行时容器+]
* link:http://netbeans.dzone.com/how-create-maven-nb-project-type[+使用 Maven 和 NetBeans 平台创建定制项目类型+]
* link:http://netbeans.dzone.com/nb-how-create-javahelp-mavenized[+使用 Maven 和 NetBeans 平台创建 JavaHelp+]
* link:http://netbeans.dzone.com/videos/screencast-maven-and-netbeans[+截屏视频：Maven 和 NetBeans 平台+]

== 诊断

* link:http://platform.netbeans.org/tutorials/nbm-test.html[+NetBeans 平台测试基础结构教程+]
* link:http://platform.netbeans.org/tutorials/nbm-gesture.html[+NetBeans 平台操作集合基础结构教程+]

== 在 NetBeans 平台中使用 OSGi

* link:http://platform.netbeans.org/tutorials/nbm-osgi-quickstart.html[+在 NetBeans 平台中使用 OSGi 的快速入门+]
* link:http://platform.netbeans.org/tutorials/nbm-emf.html[+NetBeans 平台 EMF 集成教程+]

== 截屏视频

* link:http://netbeans.dzone.com/videos/free-netbeans-platform-crash[+视频：NetBeans 平台免费速成课程+]
* link:http://platform.netbeans.org/tutorials/nbm-10-top-apis.html[+视频：最主要的 10 个 NetBeans API+]

image:::https://netbeans.org/images_www/v6/arrow-button1.gif[role="left", link="https://netbeans.org/kb/docs/screencasts.html"]

== 样例应用程序

* link:http://apress.com/book/downloadfile/4393[+《NetBeans 平台权威指南》文章样例+]
* link:https://netbeans.org/kb/samples/feedreader.html?me=6&su=1[+RSS Feed 阅读器+]
* link:https://netbeans.org/kb/samples/paint-application.html?me=6&su=2[+绘图+]

== 社区提供的文档

* link:http://wiki.netbeans.org/wiki/view/VisualDatabaseExplorer[+用于 NetBeans 的可视数据库资源管理器+]，作者：Toni Epple
* link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[+DDL Visualizer：使用 NetBeans 可视化 SQL 脚本+]，作者：Damir Tesanovic
* link:http://blogs.kiyut.com/tonny/2007/10/18/customize-netbeans-platform-splash-screen-and-about-dialog/[+定制闪屏和 About 对话框+]，作者：Tonny Kohar
* link:http://wiki.netbeans.org/wiki/view/AddingMRUList[+创建“最近使用的文件”列表+]，作者：Tonny Kohar
* link:http://wiki.netbeans.org/wiki/view/TranslateNetbeansModule[+翻译您的 NetBeans 模块+]，作者：Michel Graciano
* link:http://netbeans.dzone.com/tips/quickstart-guide-language-supp[+快速入门：在 NetBeans IDE 中创建语言工具+]，作者：Jordi R.Cardona

== 参考资料

=== 官方 NetBeans 平台参考资料

* 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[+模块系统 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-windows/org/openide/windows/doc-files/api.html[+窗口系统 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-filesystems/org/openide/filesystems/doc-files/api.html[+文件系统 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-loaders/org/openide/loaders/doc-files/api.html[+数据系统 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/doc-files/api.html[+节点 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/api.html[+资源管理器 API+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/propertyViewCustomization.html[+属性表单定制+]
* link:http://bits.netbeans.org/dev/javadoc/org-netbeans-api-visual/org/netbeans/api/visual/widget/doc-files/documentation.html[+可视库 API+]
* link:http://bits.netbeans.org/netbeans/trunk/javadoc/org-openide-util/org/openide/util/doc-files/api.html[+实用程序 API+]
* link:http://bits.netbeans.org/dev/javadoc/layers.html[+NetBeans API 中层注册的描述+]
* link:http://bits.netbeans.org/dev/javadoc/apichanges.html[+最近的 NetBeans API 更改+]

== 其他资源

=== 在线期刊文章

* link:http://java.sun.com/developer/technicalArticles/javase/extensible/index.html[+使用 Java 平台创建可扩展应用程序+]
* link:http://java.dzone.com/news/how-create-pluggable-photo-alb[+如何使用 Java 创建可插入的相册+]
* link:https://netbeans.org/community/magazine/html/04/maven.html[+使用 Maven 和 Mevenide 进行 NetBeans 平台开发+]

=== NetBeans 平台博客

* link:http://blogs.oracle.com/geertjan[+Geertjan Wielenga+]、link:http://eppleton.com/blog/[+Toni Epple+]、link:http://www.aljoscha-rittner.de/blog/[+Aljoscha Rittner（德国）+]、link:http://blogs.oracle.com/scblog[+Sandip Chitale+]、link:http://blogs.oracle.com/jglick[+Jesse Glick+]、link:http://weblogs.java.net/blog/timboudreau/[+Tim Boudreau+]、link:http://blogs.kiyut.com/tonny/[+Tonny Kohar+]。

=== NetBeans 平台文章

* 《link:http://www.apress.com/9781430241010[+NetBeans 平台 7 权威指南+]》
* 《link:https://www.packtpub.com/netbeans-platform-6-9-developers-guide/book[+NetBeans 平台 6.9 开发者指南+]》
* 《link:http://www.apress.com/9781430224174[+NetBeans 平台 6.5 权威指南+]》
* link:http://www.amazon.com/Rich-Client-Programming-Plugging-NetBeans/dp/0132354802[+富客户端编程：插入到 NetBeans 平台+]
