Book description
As the Java programming language has increased in both functionality and complexity, developers have demanded more of their program editors. Gone are the days when a simple visual editor is sufficient for even small programming projects. While there are numerous IDEs available today for use by Java developers, one stands above the rest, not only for its functionality, but for its extensibility: NetBeans.In NetBeans: The Definitive Guide, you'll find out how to use this IDE to its fullest, making your Java programming more efficient and productive than ever before. You'll understand the basics of the IDE, and quickly be utilizing the various editor and explorer windows. You'll also master many of NetBeans advanced features, and be working with XML documents, CVS repositories, Javadoc trees, and web applications, all within the NetBeans framework.In addition to teaching you how to use the existing features of NetBeans, this work goes on to cover developing additional modules for NetBeans. Through this instructional portion of the book, you will master the NetBeans APIs, and learn how to enhance NetBeans for your own specific needs. Whether you need to add customized behavior to handle your proprietary file formats, or want to redistribute NetBeans as a proprietary product, NetBeans: The Definitive Guide will allow you to master this open source IDE and all of its advanced features. Whether you are an enterprise developer looking for an IDE that can handle your complex program tasks, an open source developer looking to integrate NetBeans into your own visual projects, or a manager trying to maximize your team's development potential,NetBeans: The Definitive Guide is the book for you.
Publisher resources
Table of contents
- NetBeans: The Definitive Guide
- A Note Regarding Supplemental Files
-
Preface
- Is NetBeans for You?
- Is This Book for You?
- NetBeans and Java
- NetBeans as the “Visual JDK”
- NetBeans as a Tools Platform
- NetBeans as an Open Source Community
- Contents of the Accompanying Sources
- Licensing of the Code Examples in This Book
- Writing Conventions in This Book
- Comments and Questions
- Acknowledgments
- 1. Getting and Installing the IDE
-
2. Concepts and Paradigms
- NetBeans and the Java Abstract Model of Computing
- Explorer
- Creating Packages and Classes
- Services
- Workspaces
- Project Management
- Object Browser
- Summary
- 3. Working with the Source Editor
- 4. Debugging
- 5. Compilation and Execution Services
- 6. Customizing the Environment
- 7. Using Source Control (CVS)
-
8. GUI Building
- Creating a GUI Frame or Panel
- Adding Components to a GUI Container
- Configuring Components
- Building Menus
- Changing a Container’s Layout
- Working with Borders
- Accessibility
- Copying a Source Object
- The Connection Wizard
- The GridBagLayout Customizer
- Adding Event Handlers
- Using the Code Generation Properties
- Working Around Code Generation
- Containers Within Containers
- Building Complex GUIs
- 9. JavaBeans
- 10. Using Javadoc
- 11. Working with XML
- 12. Developing Web Applications
- 13. Extending NetBeans
-
14. Understanding the NetBeans APIs
-
Design Philosophy of NetBeans
- Abstracting the Abstractions—the Open APIs
- Modularity
- Hierarchy, Files, and Nodes
- Everything Is a File—Virtually
- Mapping Files to Java Objects
- The System Filesystem
- Module Layers
- Layers in the System Filesystem
- Exploring the System Filesystem
- Data Objects—Wrappers for Persistent Data
- NetBeans and JavaBeans
- Nodes—the Application as Hierarchy
- Presenting Nodes to the User—Explorer
- User-Level Customization
- Modules—Overview
- Interacting with the IDE
-
Design Philosophy of NetBeans
-
15. The Open APIs
- APIs versus Core versus Modules
- Service Provider Interfaces and Client APIs
- Overview of the APIs and Their Purposes
- Modules, JARs, and Class Loaders
- Threading, Deadlocks, andHow to Avoid Them
- 16. Developing Modules—the New Module Wizard
- 17. Internals of the Running IDE
- 18. Creating the QuickPanel Module
-
19. A Mail-Based Filesystem
- Building a Mail Reader in the NetBeans Paradigm
- Implementing MailFileSystem Using AbstractFileSystem and JavaMail
- Creating Folder Objects for Attachments
- Using FileSystem.Status Annotations to Mark Unread Messages
- BeanInfo—Displaying Filesystem Properties
- Using the Wizard Framework to Set Up Mail Accounts
- 20. Creating the User Interfacefor the Mail Client
- 21. Score File Support
- 22. Creating a Structural View of the Score
- 23. Compiling Scores
- 24. Executing Scores
- 25. Better Score Support in the Explorer
-
26. Tuning Modules for Performance & Memory Footprint
- Startup Performance vs. Runtime Performance
- Operating Principles
-
Techniques
- Lazy Initialization
- Avoid Static Initializers
- Avoid ModuleInstall Classes—Use XML Layers Instead
- Partial Loading Considerations—InstanceCookie and InstanceDataObject
- Use URLs Instead of CDATA Sections in XML Layers
- Reduce the Number of Classes You Create
- GUI Components—Wait for addNotify( )
- Using the addNotify( ) and removeNotify( ) Pattern Where Exposed by Non-GUI Classes
- Use Weak and Soft References for Objects
- Use WeakListener
- Avoid Excessive Event Firing
- Avoid Overuse of Threads
- Batching Events
- Swing Performance
-
27. Producing Modules (Packaging & Distribution)
- Versioning
- Upgrading User Settings
- Bundling Extension Libraries
- Internationalization and Accessibility
- JavaHelp—Writing and Distributing
- Supporting User-Level Java APIs
- Creating the Module JAR File Within the IDE
- Creating a Build Script Using Ant
- Producing the .nbm File
- Publishing Using the Update Center
- Using ErrorManager to Log Problems
- Testing
- 28. Building Your Distribution of NetBeans
-
A. A Tour of Existing Modules
- Modules That Expose Functionality You Might Need
- Incidental APIs, Utilities, and Extensions
-
Modules That Make Good Examples for Things You May Need to Implement
- Annotations and Dynamic Editor Tool Tips—the Ant Module and the Debugger Core Module
- Adding Information to the View of Java Sources—the Beans Module
- Adding a Debugger Type—the Applet Module
- Multiplexing DataObjects and Complex Cut/Copy/Paste Support—the Properties Module
- Working with Network Protocols to Access Files—JavaCVS and RemoteFS
- Domain-Specific XML Support—the Tomcat and Ant Modules
- Stretching the Limits—the Web Modules
- Complex Syntax Coloring—the JSP Module
- Multi-Stage Compilation—the JSP, RMI, and CORBA Modules
- Bridging to an Entirely Different Build System—the Ant and Makefile Modules
- Use of the Compiler Infrastructure for Non-Compilation Tasks—the JAR Packager Module
- Execution—the Applet and JSP/Servlet Modules
- Custom Hyperlinking in the Output Window—the Ant Module
- Specifying Windows, Workspaces, and Components Using XML—the Core Window System and the Form Editor Module
- Complex Work with MIMEResolvers and Multi-File DataObjects—the CPP Module
- Cut/Copy/Paste—Data Transfer Support for Complex Elements—the Ant and Java Modules
- Interconversion between Different Types of Clipboard Contents—JNDI, CORBA, and RMI
- Integrating Other Programming Languages—the C++/Fortran, Scripting, and WebL Modules
- Fancy Footwork with Nodes—the Java Module
- Adding Nodes to the Runtime Tab in the Explorer—the RMI, CORBA, JNDI, and Database Explorer Modules
- The Bare Essentials of Non-Data-Driven Nodes—the System Properties Module
- Wizards—the CORBA, Java, and New Module Wizard Modules
- Embedding Property Panels into Wizards—the Java Module
- Complex Explorer Views—the Debugger Core Module
- Enabling/Disabling Sets of Actions Based on Context—the VCS Core Module
- B. Useful Utility Classes
- C. Resources
- D. Future Plans
- E. Working with Open Source and NetBeans
-
F. Additional Modules and Where to Find Them
- Open Source Modules Available Via the Update Center
- The Modules Marketplace on Flashline
- IDEs That Are Distributions of the NetBeans IDE
- Open Source Application Projects Based on NetBeans
- Commercial Applications Built on the NetBeans Platform
- Commercial Modules Available for NetBeans
- Should You Create Your Own Update Server?
- Index
- About the Authors
- Colophon
- Copyright
Product information
- Title: NetBeans: The Definitive Guide
- Author(s):
- Release date: October 2002
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596002800
You might also like
book
Beginning NetBeans IDE: for Java Developers
Beginning NetBeans IDE is your authoritative guide for getting started learning and using the free and …
book
Java Swing
The Swing classes eliminate Java's biggest weakness: its relatively primitive user interface toolkit. Swing provides many …
book
Java EE 8 Development with Eclipse
Develop and deploy fully functional applications and microservices utilising Tomcat, Glassfish servers, Cloud and docker in …
book
Java EE 8 Application Development
Develop Enterprise Java applications compliant with the latest version of the Java EE specification About This …