// 
//     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[+数百のアプリケーションの1つ+]です。NetBeansプラットフォームは、ウィンドウ、アクション、ファイル、およびアプリケーションに一般的なその他の多くの処理を容易にするAPIを含んでいます。

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開発者のFAQ+]
* 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プラットフォームの初心者ですか。初心者の場合は、前述の開始の項にあるドキュメントに従った後に、次のドキュメントを読んで学習パスを続行してください。特に、次にリストされている4つの「セレクション管理シリーズ」では、NetBeansプラットフォームの様々な部分を統合する方法が示されます。

* link:http://platform.netbeans.org/tutorials/nbm-runtime-container.html[+実行時コンテナのチュートリアル+]
* link:http://platform.netbeans.org/tutorials/nbm-10-top-apis.html[+NetBeans APIのトップ10 (ビデオ)+]
* link:http://wiki.netbeans.org/NbmIdioms[+Nutshellでの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[+フィード・リーダーのチュートリアル+]
* 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を拡張する5つの簡単な方法

image::../../images_www/screenshots/platform/five-easy-extend.png[role="left", link="http://www.youtube.com/watch?v=h4k5JpluJM8"]image::https://netbeans.org/images_www/v6/trails/trails-box-br.png[] image::https://netbeans.org/images_www/v6/trails/trails-box-bl.png[]image::https://netbeans.org/images_www/v6/trails/trails-box-tr.png[] image::https://netbeans.org/images_www/v6/trails/trails-box-tl.png[]

== MavenとNetBeansプラットフォームの使用

=== 一般的な紹介

* 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[+Mavenを使用したNetBeansプラットフォームのクイック・スタート+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesingle.html[+Mavenを使用したNetBeansプラットフォームのファイル・タイプのチュートリアル+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesuite.html[+Mavenを使用したNetBeansプラットフォームの選択のチュートリアル+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-crud.html[+Mavenを使用したNetBeansプラットフォームのCRUDのチュートリアル+]

==== その他

* link:http://blogs.oracle.com/geertjan/entry/mavenized_netbeans_platform_runtime_container[+Mavenized 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プラットフォームのジェスチャー収集インフラストラクチャのチュートリアル+]

== OSGiとNetBeansプラットフォームの使用

* link:http://platform.netbeans.org/tutorials/nbm-osgi-quickstart.html[+OSGiを使用したNetBeansプラットフォーム・クイック・スタート+]
* 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[+ビデオ: NetBeans APIのトップ10+]

== サンプル・アプリケーション

* link:http://apress.com/book/downloadfile/4393[+書籍『The Definitive Guide to NetBeans Platform』のサンプル+]
* link:https://netbeans.org/kb/samples/feedreader.html?me=6&su=1[+RSSフィード・リーダー+]
* 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表示機能: NetBeansを使用したSQLスクリプトの視覚化+]、Damir Tesanovic著
* link:http://blogs.kiyut.com/tonny/2007/10/18/customize-netbeans-platform-splash-screen-and-about-dialog/[+スプラッシュ画面と「製品について」ダイアログのカスタマイズ+]、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[+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+]
