// 
//     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.
//

= Trilha do Aprendizado da Plataforma NetBeans
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Trilha do Aprendizado da Plataforma NetBeans - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Trilha do Aprendizado da Plataforma NetBeans


== O que é a Plataforma NetBeans?

A Plataforma NetBeans é uma ampla framework Java em que você pode basear grandes aplicações desktop. O NetBeans IDE é, em si, link:http://platform.netbeans.org/screenshots.html[+uma das centenas de aplicações+] baseadas na Plataforma NetBeans. A Plataforma NetBeans contém APIs que simplificam o tratamento de janelas, ações, arquivos e muitos outros itens típicos em aplicações.

Cada funcionalidade distinta em uma aplicação da Plataforma NetBeans pode ser fornecida por um módulo distinto do NetBeans, que é comparável a um plug-in. Um módulo NetBeans é um grupo de classes Java que fornece uma aplicação com uma funcionalidade específica.

Você também pode criar novos módulos para o próprio NetBeans IDE. Por exemplo, você pode escrever módulos que disponibilizem suas tecnologias de última geração favoritas para usuários do NetBeans IDE. Como alternativa, você pode criar um módulo para fornecer uma funcionalidade de editor adicional.

== Introdução

* link:http://bits.netbeans.org/dev/javadoc/[+Javadoc da API do NetBeans+] (link:https://netbeans.org/downloads/zip.html[+faça download de javadoc.zip para obter uma exibição off-line+])
* link:https://netbeans.org/projects/platform/lists/dev/archive[+Lista de Correspondências do Desenvolvedor do NetBeans+]
* link:http://wiki.netbeans.org/NetBeansDeveloperFAQ[+Perguntas Frequentes do Desenvolvedor do NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-google.html[+Início Rápido do Plug-in do NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-start.html[+Início Rápido da Plataforma NetBeans+]
* Novidades na Plataforma 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+]?

== Portabilidade

* link:http://platform.netbeans.org/tutorials/nbm-porting-basic.html[+Portabilidade de Componentes de Swing+]
* link:http://platform.netbeans.org/tutorials/nbm-javafx.html[+Portabilidade de Componentes JavaFX+]

== Usando as APIs do NetBeans

=== Princípios Básicos da Plataforma NetBeans

Você é novato na Plataforma NetBeans? Se sim, depois de seguir os documentos na seção "Introdução" acima, continue o caminho do aprendizado lento os documentos a seguir. Especificamente, a "Série de Gerenciamento de Seleção", em quatro partes, listada a seguir, mostrará como as várias partes da Plataforma NetBeans se une e se completam!

* link:http://platform.netbeans.org/tutorials/nbm-runtime-container.html[+Tutorial do Contêiner de Runtime+]
* link:http://platform.netbeans.org/tutorials/nbm-10-top-apis.html[+As 10 Principais APIs do NetBeans (Vídeo)+]
* link:http://wiki.netbeans.org/NbmIdioms[+APIs NetBeans em Poucas Palavras+]

==== Cartão de Referência Essencial da Plataforma NetBeans

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

==== Visões Gerais Rápidas

* link:http://netbeans.dzone.com/articles/netbeans-lookups-explained[+Pesquisas NetBeans Explicadas!+]
* link:http://netbeans.dzone.com/news/netbeans-extension-points[+Como Funcionam os Pontos de Extensão do NetBeans?+]

==== Série de Gerenciamento da Seleção

* link:http://platform.netbeans.org/tutorials/nbm-selection-1.html[+Parte 1: Tutorial de Gerenciamento da Seleção+]
* link:http://platform.netbeans.org/tutorials/nbm-selection-2.html[+Parte 2: Tutorial de Gerenciamento da Seleção Parte II—Usando Nós+]
* link:http://platform.netbeans.org/tutorials/nbm-nodesapi2.html[+Parte 3: Tutorial das APIs dos Nós+]
* link:http://platform.netbeans.org/tutorials/nbm-property-editors.html[+Parte 4: Tutorial das APIs do Editor de Propriedades+]

=== Aplicações Construídas na Plataforma NetBeans

==== Aplicações

* link:http://platform.netbeans.org/tutorials/nbm-paintapp.html[+Tutorial da Aplicação Paint+]
* link:http://platform.netbeans.org/tutorials/nbm-feedreader.html[+Tutorial do Feed Reader+]
* link:http://platform.netbeans.org/tutorials/nbm-htmleditor.html[+Tutorial do Editor HTML+]
* link:http://platform.netbeans.org/tutorials/nbm-povray-1.html[+Tutorial do Renderizador do POV-Ray+]

==== Cenários Comuns

* link:http://platform.netbeans.org/tutorials/nbm-crud.html[+Create/Read/Update/Delete (CRUD)+]
* link:http://platform.netbeans.org/tutorials/nbm-geospatial.html[+Geoespacial+]
* link:http://platform.netbeans.org/tutorials/nbm-workflow.html[+Fluxo de trabalho+]
* link:http://platform.netbeans.org/tutorials/nbm-3d.html[+Modelagem 3D+]
* link:http://platform.netbeans.org/tutorials/nbm-ide.html[+Ambiente de Desenvolvimento+]

=== APIs NetBeans para Desenvolvimento de Editores de Código

* link:http://platform.netbeans.org/tutorials/nbm-filetype.html[+Tutorial de Integração de Tipo de Arquivo+]
* link:http://platform.netbeans.org/tutorials/nbm-javacc-lexer.html[+Tutorial de Integração do Gerador do Java CC Lexer+]
* link:http://platform.netbeans.org/tutorials/nbm-javacc-parser.html[+Tutorial de Integração do Gerador do Java CC Parser+]
* link:http://platform.netbeans.org/tutorials/nbm-copyfqn.html[+Tutorial de Infraestrutura do Java Language+]
* link:http://platform.netbeans.org/tutorials/nbm-code-generator.html[+Tutorial de Integração do Gerador de Código+]
* link:http://platform.netbeans.org/tutorials/nbm-code-completion.html[+Tutorial de Integração de Autocompletar Código+]
* link:http://platform.netbeans.org/tutorials/nbm-mark-occurrences.html[+Tutorial do Módulo Marcar Ocorrências+]
* link:http://platform.netbeans.org/tutorials/nbm-palette-api1.html[+Tutorial de Snippets de Código+]
* link:http://platform.netbeans.org/tutorials/nbm-palette-api2.html[+Tutorial do Módulo de Paleta do Componente do Editor+]
* link:http://platform.netbeans.org/tutorials/nbm-xmleditor.html[+Tutorial do Módulo de Extensão do Editor XML+]
* link:http://platform.netbeans.org/tutorials/nbm-hyperlink.html[+Tutorial de Navegação do Hiperlink+]
* link:http://platform.netbeans.org/tutorials/nbm-java-hint.html[+Tutorial de Dicas Java+]
* link:http://platform.netbeans.org/tutorials/nbm-code-template.html[+Tutorial de Modelos de Código+]

=== APIs NetBeans para Visualização de Dados

* link:http://platform.netbeans.org/tutorials/nbm-visual_library.html[+Tutorial da Biblioteca Visual+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-start-visual.html[+Tutorial da Biblioteca Visual para Aplicações Java+]
* link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[+Visualizar Scripts SQL com a Plataforma NetBeans+]
* link:http://wiki.netbeans.org/VisualDatabaseExplorer[+Um Explorador de Banco de Dados Visual do NetBeans+]
* link:http://java.dzone.com/news/how-create-visual-applications[+Como Criar Aplicações Visuais no Java?+]
* link:http://java.dzone.com/news/how-add-resize-functionality-v[+Como Adicionar uma Funcionalidade de Redimensionar a Aplicações Visuais no Java?+]
* link:https://netbeans.org/community/magazine/html/04/visuallibrary.html[+Usos Criativos da Biblioteca Visual+]

=== Diversos Tutoriais da Plataforma NetBeans

_(classificados em ordem alfabética) _

* link:http://platform.netbeans.org/tutorials/nbm-filetemplates.html[+Tutorial do Módulo de Modelo de Arquivo+]
* link:http://platform.netbeans.org/tutorials/nbm-nbi.html[+Tutorial de Integração do Instalador+]
* link:http://platform.netbeans.org/tutorials/nbm-options.html[+Tutorial do Módulo da Janela Opções+]
* link:http://platform.netbeans.org/tutorials/nbm-projectsamples.html[+Tutorial do Módulo de Amostra de Projeto+]
* link:http://platform.netbeans.org/tutorials/nbm-projectextension.html[+Tutorial do Módulo de Extensão de Projeto+]
* link:http://platform.netbeans.org/tutorials/nbm-projecttype.html[+Tutorial do Módulo de Tipo de Projeto+]
* link:http://platform.netbeans.org/tutorials/nbm-propertyeditors-integration.html[+Tutorial de Integração do Editor de Propriedades+]
* link:http://platform.netbeans.org/tutorials/nbm-quick-search.html[+Tutorial de Integração de Pesquisa Rápida+]
* link:http://platform.netbeans.org/tutorials/nbm-ribbonbar.html[+Tutorial da Barra Ribbon+]
* link:http://platform.netbeans.org/tutorials/nbm-nodesapi.html[+Tutorial do Módulo de Propriedades do Sistema+]
* link:http://platform.netbeans.org/tutorials/nbm-wizard.html[+Tutorial do Módulo de Assistente+]

=== Linha de Comando

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

== YouTube: Cinco Maneiras Simples de Estender o NetBeans IDE

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[]

== Utilizando Maven com a Plataforma NetBeans

=== Introduções Gerais

* link:http://wiki.netbeans.org/MavenBestPractices[+Melhores Práticas do Maven no NetBeans IDE+]
* link:http://mojo.codehaus.org/nbm-maven-plugin/[+Sobre o Plug-in Maven do Módulo NetBeans+]

==== Tutoriais da Plataforma NetBeans

* link:http://platform.netbeans.org/tutorials/nbm-maven-commandline.html[+Tutorial da Linha de Comando Maven da Plataforma NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-quickstart.html[+Início Rápido da Plataforma NetBeans Utilizando Maven+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesingle.html[+Tutorial do Tipo de Arquivo da Plataforma NetBeans Usando Maven+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-modulesuite.html[+Tutorial de Seleção da Plataforma NetBeans Usando Maven+]
* link:http://platform.netbeans.org/tutorials/nbm-maven-crud.html[+Tutorial do CRUD da Plataforma NetBeans Usando Maven+]

==== Diversos

* link:http://blogs.oracle.com/geertjan/entry/mavenized_netbeans_platform_runtime_container[+Contêiner do Runtime da Plataforma NetBeans Mavenizada+]
* link:http://netbeans.dzone.com/how-create-maven-nb-project-type[+Criando Tipos de Projeto Personalizados com Maven e a Plataforma NetBeans+]
* link:http://netbeans.dzone.com/nb-how-create-javahelp-mavenized[+Criando JavaHelp com Maven e com a Plataforma NetBeans+]
* link:http://netbeans.dzone.com/videos/screencast-maven-and-netbeans[+Screencast: Maven e a Plataforma NetBeans+]

== Diagnóstico

* link:http://platform.netbeans.org/tutorials/nbm-test.html[+Tutorial da Infraestrutura de Teste da Plataforma NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-gesture.html[+Tutorial da Infraestutura da Coleção da Gestão da Plataforma Netbeans+]

== Utilizando OSGi com a plataforma NetBeans

* link:http://platform.netbeans.org/tutorials/nbm-osgi-quickstart.html[+Início Rápido da Plataforma NetBeans Utilizando OSGi+]
* link:http://platform.netbeans.org/tutorials/nbm-emf.html[+Tutorial de Integração de EMF da Plataforma NetBeans+]

== Screencasts

* link:http://netbeans.dzone.com/videos/free-netbeans-platform-crash[+Vídeo: Curso Intensivo Grátis sobre a Plataforma NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-10-top-apis.html[+Vídeo: As 10 Principais APIs do NetBeans+]

== Aplicações de Amostra

* link:http://apress.com/book/downloadfile/4393[+Amostras do Livro "O Guia Definitivo da Plataforma NetBeans"+]
* link:https://netbeans.org/kb/samples/feedreader.html?me=6&su=1[+RSS Feed Reader+]
* link:https://netbeans.org/kb/samples/paint-application.html?me=6&su=2[+Paint+]

== Documentos de Contribuição da Comunidade

* link:http://wiki.netbeans.org/wiki/view/VisualDatabaseExplorer[+A Visual Datbase Explorer for NetBeans+], por Toni Epple
* link:http://tdamir.blogspot.com/2007/12/ddl-visualizer-visualize-sql-script.html[+DDL Visualizer: Visualize Script SQL com NetBeans+], por 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+], por Tonny Kohar
* link:http://wiki.netbeans.org/wiki/view/AddingMRUList[+Create the 'Most Recently Used Files' List+], por Tonny Kohar
* link:http://wiki.netbeans.org/wiki/view/TranslateNetbeansModule[+Translate Your NetBeans Module+], por Michel Graciano
* link:http://netbeans.dzone.com/tips/quickstart-guide-language-supp[+Quick Start: Creating Language Tools In NetBeans IDE+], por Jordi R. Cardona

== Material de Referência

=== Material de Referência Oficial da Plataforma NetBeans

* link:http://bits.netbeans.org/dev/javadoc/index.html[+Javadoc da API do NetBeans+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-modules/org/openide/modules/doc-files/api.html[+API do Sistema de Módulos+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-windows/org/openide/windows/doc-files/api.html[+API do Sistema de Janelas+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-filesystems/org/openide/filesystems/doc-files/api.html[+API dos Sistemas de Arquivos+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-loaders/org/openide/loaders/doc-files/api.html[+API dos Sistemas de Dados+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/doc-files/api.html[+API de Nós+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/api.html[+API do Explorer+]
* link:http://bits.netbeans.org/dev/javadoc/org-openide-explorer/org/openide/explorer/doc-files/propertyViewCustomization.html[+Personalização da Folha de Propriedades+]
* link:http://bits.netbeans.org/dev/javadoc/org-netbeans-api-visual/org/netbeans/api/visual/widget/doc-files/documentation.html[+API da Biblioteca Visual+]
* link:http://bits.netbeans.org/netbeans/trunk/javadoc/org-openide-util/org/openide/util/doc-files/api.html[+API de Utilitários+]
* link:http://bits.netbeans.org/dev/javadoc/layers.html[+Descrição de Registros de Camada nas APIs do NetBeans+]
* link:http://bits.netbeans.org/dev/javadoc/apichanges.html[+Alterações Mais Recentes da API do NetBeans+]

== Outros Recursos

=== Artigos de Revistas On-Line

* link:http://java.sun.com/developer/technicalArticles/javase/extensible/index.html[+Criando Aplicações Extensíveis Com a Plataforma Java+]
* link:http://java.dzone.com/news/how-create-pluggable-photo-alb[+Como Criar um Álbum de Fotos Plugável no Java+]
* link:https://netbeans.org/community/magazine/html/04/maven.html[+Desenvolvimento da Plataforma NetBeans com Maven e Mevenide+]

=== Blogs da Plataforma 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 (German)+], 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+].

=== Livros da Plataforma NetBeans

* link:http://www.apress.com/9781430241010[+"Guia Definitivo da Plataforma NetBeans 7"+]
* link:https://www.packtpub.com/netbeans-platform-6-9-developers-guide/book[+"Guia do Desenvolvedor da Plataforma NetBeans 6.9"+]
* link:http://www.apress.com/9781430224174[+"O Guia Definitivo da Plataforma NetBeans 6.5"+]
* link:http://www.amazon.com/Rich-Client-Programming-Plugging-NetBeans/dp/0132354802[+"Programação de Rich Client: Integrando à Plataforma NetBeans"+]
