3. NetBeans API's

advertisement
Schematizing maps
IDE and API policy
Version 1.0
Schematizing maps
IDE and API policy
Version:
1.0
Date: 2010-09-23
Revision History
Date
23.09.10
Version
01.01.00
Description
Initial Draft
Author
Dominik Pavlović
Doc. No.:
Page 2
Schematizing maps
IDE and API policy
Version:
1.0
Date: 2010-09-23
Table of contents
1.
Introduction
4
1.1
1.2
1.3
1.4
1.5
Purpose of this document
Document organization
Intended Audience
Scope
Definitions and acronyms
1.5.1 Definitions
1.5.2 Acronyms and abbreviations
1.6
References
4
4
4
4
4
4
4
5
2.
NetBeans platform
6
3.
NetBeans API's
7
Page 3
Schematizing maps
IDE and API policy
Version:
1.0
Date: 2010-09-23
1.
Introduction
1.1
Purpose of this document
The purpose of this document is to introduce the tools that will be used during the development of Schematizing
maps application.
1.2
Document organization
The document is organized as follows:



1.3
Section 1, Introduction, describes contents of this guide, used documentation during developing
process etc.
Section 2, NetBeans platform, decribes what NetBeans platform is and why did we choose it.
Section 3, NetBeans API's, describes the Netbeans API's that will be used in our application during the
development process.
Intended Audience
The intended audience is:
 Schematizing maps team members
 Project supervisor
 Project proponent
 DSD course teachers
1.4
Scope
The development process of “Schematizing maps” project.
1.5
Definitions and acronyms
1.5.1
Definitions
Keyword
NetBeans
Schematizing maps
Application
1.5.2
Definitions
Java IDE with integrated framework, that simplyfies programming.
Project name and also team name.
Computer software.
Acronyms and abbreviations
Acronym or
abbreviation
IDE
GUI
API
Definitions
Integrated Development Environment.
Environment that will be used for application development. Can
also be described as application for software development.
Graphical User Interface.
An interface trough which users will interact with the application.
Application programming interface
Interface implemented by a software programm.
Page 4
Schematizing maps
IDE and API policy
1.6
Version:
1.0
Date: 2010-09-23
References
 NetBeans internet pages
http://netbeans.org/index.html
 NetBeans tutorial
http://netbeans.org/kb/docs/java/quickstart.html
 List of NetBeans API's
http://bits.netbeans.org/dev/javadoc/overview-summary.html
 NetBeans download page
http://netbeans.org/downloads/
 NetBeans installation instructions
http://netbeans.org/community/releases/69/install.html
Page 5
Schematizing maps
IDE and API policy
2.
Version:
1.0
Date: 2010-09-23
NetBeans platform
NetBeans is an free open source Integrated Development Environment (IDE, later in text) for software
developers. It was originally developed as a generic framework for Java Swing applications, based on Java
platform, but also supports a large palette of other programming languages, such as: JavaFX, PHP, JavaScript
and Ajax, Ruby and Ruby on Rails, Groovy and Grails, and C/C++.
Our team choosed NetBeans for the development of the Schematizing maps project application,
because of its features, especially the Java Swing API, which makes the development of an Java standalone
application easyer and much faster. Swing API is an NetBeans GUI Builder for design of the user interfaces
during the development of a Swing desktop application based on the NetBeans Platform.
Recommended version of the NetBeans product for our team is NetBeans IDE 6.9.1. This version can
be downloaded from http://netbeans.org/downloads/ and installation instructions with the requirements for the
installation and usage of the NetBeans for this NetBeans product version can be found on
http://netbeans.org/community/releases/69/install.html.
Page 6
Schematizing maps
IDE and API policy
3.
Version:
1.0
Date: 2010-09-23
NetBeans API's
Here is a brief overview of the NetBeans API's that we consider important for the development of our
application:












Actions APIs - “Actions provides system of support and utility classes for 'actions' usage in NetBeans.
The Actions API allows users to interact with module code, by invoking actions via menus, toolbars or
keyboard shortcuts. ” Since we will have a lot interaction between user and our application every action
performed by user (clicking, writing, etc...) could trigger some task in our application, so everything
that we can use from this API will save as time or at least, ease the development process.
Debugger Core API - “The debuggercore/api module (Debugger Core API) allows to install different
debugger implementation to one IDE. The Debugger Core API module defines common structures for
integration of debugger implementations into NetBeans IDE. ”
Debugger Core - UI - “The debuggercore module (Debugger Core UI) contains shared UI components
for all debugger implementations, and defines some SPI for sharing of them. “
Dialogs API - “The DialogsAPI allows creating a user notification, a dialog's description and also
permits it to be displayed. “ This could be used for panel titles, labels, notifications, error messages,
pop-ups, etc, displayed on GUI.
Editor Code Completion - “Code Completion provides users with a list of suggested completions for
partially typed texts in the editor and various dialog input fields. “ Allows customizing the code
completion mechanism.
File System API - “The Filesystems API provides a common API to access files in a uniform manner.”
This will be used for importing different maps as templates, creating templates of the schematizing
maps, saving them, and saving (exporting) the produced schematizing map to disk in different file
formats.
I/O APIs - “The Input/Output API is a small API module which contains Input/Output and related
interfaces used in driving the Output Window.” Could be used for some feedback to developers during
the execution of the application. (One more way of debugging.)
Java Platform - “Many Java-based project types need to be able to configure the version and location of
Java to be used when building and running the project.” Recommended JDK for use is JDK 6 (1.6).
JUnit Tests - “The module makes creating, running and navigation between tests easier.” This API
provides a numerous testing abilities, creating mocking objects, etc. Will be used for testing purposes.
Project API - “Provides a generic infrastructure for modeling projects.”
Tab Control - “The tab control is a swing control used by NetBeans window system, similar in function
to a JTabbedPane, which allows the user to see and select tabs that contain different components.” If
we are going to use tab's in our project, this could be used.
Utilities API - “This module contains general classes needed in NetBeans, extensions to basic JRE
concepts, useful methods and other UtilitiesAPI classes.” This will definitely be used during the
development process, it contains many useful features that makes the developers life easier.
Page 7
Download