《NetBeans富客戶端編程權威教程》是2008年清華大學出版社出版的圖書,作者是(美)波德魯、(美)圖拉赫、(美)威爾蘭格。
基本介紹
- 書名:NetBeans富客戶端編程權威教程
- 作者:(美)波德魯、(美)圖拉赫、(美)威爾蘭格
- ISBN:9787302182030
- 定價:58元
- 出版社:清華大學出版社
- 出版時間:2008-9-12
內容簡介,編輯推薦,作者簡介,目錄,
內容簡介
《NetBeans富客戶端編程權威教程》是一本的關NeBeans富客戶端應用程式開發的權威指南,內容涵蓋了NetBeans 5.5和6.x版本,重點介紹了如何使用NetBeans平台作為框架,開發“一次編寫,處處運行:”的富客戶端應用程式。旨在幫助讀者掌握NetBeans模組的開發,精通NetBeans的主要APl,以及學會一些構建可靠桌面軟體的技術與技巧。
《NetBeans富客戶端編程權威教程》由三位頂級NetBeans專家聯合編寫,並由Sun中國的專家團隊葉亮等人翻譯和審校,是中國讀者不可多得的NetBeans學刊用書,也是Sun中國技術社區推薦的NetBeans技術用書。
《NetBeans富客戶端編程權威教程》由三位頂級NetBeans專家聯合編寫,並由Sun中國的專家團隊葉亮等人翻譯和審校,是中國讀者不可多得的NetBeans學刊用書,也是Sun中國技術社區推薦的NetBeans技術用書。
編輯推薦
《NetBeans富客戶端編程權威教程》主要內容包括:模組開發對於小、中和大型應用程式的重要意義。使用:NetBeans加快開發速度和提高效率。利用NetBeans的各項生產率特性(從組件面板到代碼完成)。在自己開發的應用程式中利用NetBeans的模組體系結構。實現鬆散耦合的互動,以提高代碼的可維護性和健壯性。管理用戶配置和系統配置數據使用牢固的執行緒模組構建可重載的組件。構造複雜的多視窗應用程式,並將富客戶端數據結構顯示給用戶。添加用戶可配置的選項。整合Web服務與NetBeans桌面應用程式。自動化模組更新和為用戶提供幫助。
開源NetBeans平台是一個功能極其強大的架構,主要用於構建“只編寫一次,就能到處運行”的富客戶端應用程式。
對於Java開7發人員和架構師來說,現有的基本Swing組件已不再滿足他們的開發需求。為了解決這一問題,這本有關NetBeans平台上富客戶端程式開發的權威指南便應運而生,旨在幫助讀者掌握NetBeans模組的開發,精通NetBeans的主要API,以及學會一些構建可靠桌面軟體的技術與技巧。書中的每一章都給出了實際的例子,並按步驟詳細說明了如何在NetBeans平台上創建功能完善的富客戶端應用程式和NetBeans IDE的外掛程式。
開源NetBeans平台是一個功能極其強大的架構,主要用於構建“只編寫一次,就能到處運行”的富客戶端應用程式。
對於Java開7發人員和架構師來說,現有的基本Swing組件已不再滿足他們的開發需求。為了解決這一問題,這本有關NetBeans平台上富客戶端程式開發的權威指南便應運而生,旨在幫助讀者掌握NetBeans模組的開發,精通NetBeans的主要API,以及學會一些構建可靠桌面軟體的技術與技巧。書中的每一章都給出了實際的例子,並按步驟詳細說明了如何在NetBeans平台上創建功能完善的富客戶端應用程式和NetBeans IDE的外掛程式。
作者簡介
作者:(美國)波德魯 (Tim Boudreau) (美國)圖拉赫 (Jaroslav Tulach) (美國)威爾蘭格 (Geerfjan Wielenga) 譯者:葉亮
Tim Boudreau是NetBeansTM:The Definitive Guide(由O'Reilly出版)一書的合著者,開源NetBeans核心團隊的成員,一直致力於NetBeans項目的開發。
Jaroslav Tulach是NetBeans項目的共同創始人之一,API項目的忠實擁護者。
Geertjan Wielenga是資深的技術撰稿人,主要負責編寫與模組開發和富客戶端應用程式開發相關的NetBeans文檔。
Tim Boudreau是NetBeansTM:The Definitive Guide(由O'Reilly出版)一書的合著者,開源NetBeans核心團隊的成員,一直致力於NetBeans項目的開發。
Jaroslav Tulach是NetBeans項目的共同創始人之一,API項目的忠實擁護者。
Geertjan Wielenga是資深的技術撰稿人,主要負責編寫與模組開發和富客戶端應用程式開發相關的NetBeans文檔。
目錄
第1章 NetBeans平台入門
1.1 配置IDE
1.2 NetBeansIDE基礎
1.2.1 創建模組
1.2.2 創建應用程式
1.2.3 使用檔案模板
1.2.4 聲明依賴關係
1.2.5 運行模組
1.2.6 定製應用程式
1.2.7 發布應用程式
第2章 模組化編程的優勢
2.1 分散式開發
2.2 模組化套用
2.2.1 版本
2.2.2 次級版本信息
2.2.3 依賴管理
2.3 模組化編程宣言
2.4 使用NetBeans進行模組化編碼
第3章 模組化的體系結構
3.1 模組——程式的裝配單元
3.2 模組的類型
3.2.1 最終用戶界面模組
3.2.2 簡單程式庫
3.2.3 多廠商支持
3.2.4 模組庫
3.3 模組生命周期
3.4 模組群組
第4章 低耦合的互動
4.1 註冊和查找
4.2 MetaInf服務
4.3 全局Lookup
4.4 編寫擴展點
第5章 Lookup
5.1 擁有Lookup的對象
5.2 Lookup作為通信機制
5.3 Lookup和代理
5.4 Lookup和選擇
5.5 編寫Lookup敏感的操作
5.6 追蹤全局選擇
5.7 NetBeansAPI中遺留的Lookup模式變種
5.8 常見的Lookup模式
第6章 Filesytems
6.1 FileSystems和FileObjects
6.2 需要處理什麼類型的FileSystem
6.3 層次
6.4 XML檔案系統
6.5 聲明式註冊二:系統檔案系統
6.5.1 “系統檔案系統”是如何工作的
6.5.2 “系統檔案系統”是可讀寫的
6.5.3 使用“系統檔案系統”的FileChangeEvents
6.5.4 探索系統檔案系統——選單
6.6 從FileObject到Java對象
6.6.1 使用工廠方法從.instance檔案創建對象
6.6.2 通過代碼訪問“系統檔案系統”
6.6.3 使用.settings檔案
6.7 瀏覽“系統檔案系統”
6.8 小結
第7章 執行緒、偵聽者模式和MIME查找
7.1 創建模組和SPI
7.2 實現ListModelProvider
7.2.1 建立依賴
7.2.2 創建XmlListModelProvider
7.2.3 註冊XmlListModelProvider
7.3 提供一個UI組件
7.3.1 MIME查找SPI和API
7.3.2 提供一個視窗組件顯示列表模型
7.4 使用PseudoNavigator
7.5 小結:PseudoNavigator——這張圖片有什麼錯誤?
第8章 視窗系統
8.1 視窗系統的作用
8.2 “視窗系統API”中的類
8.3 使用TopComponent
8.4 在會話間持久化狀態
8.5 視窗系統持久化數據
8.6 創建編輯器樣式的TopComponent(以非聲明的方式)
8.7 高級視窗系統配置:自定義Mode
8.8 使用TopComponent群組
第9章 Node、Explorer視圖、Action和Presenter
9.1 NodeAPI
9.2 ExplorerAPI
9.2.1 explorer視圖組件的類型
9.2.2 創建顯示Node的TopComponent
9.2.3 添加詳細視圖
9.2.4 使用ExplorerAPI添加另一個詳細視圖
9.3 Action
9.3.1 Presenter
9.3.2 ActionAPI和NetBeans標準操作
9.3.3 在選單、工具列和快捷鍵中安裝全局Action
9.3.4 上下文感知操作
9.4 Node屬性
9.5 Node和DataObject:創建系統檔案系統瀏覽器
9.6 小結:節點、表單屬性和用戶界面設計
第10章 DataObject和DataLoader
10.1 DataObject來自哪裡?
10.2 添加對新檔案類型的支持
10.2.1 為NetBeans添加對ManiFest檔案的支持
10.2.2 由manifest檔案提供Manifest對象
10.2.3 由ManifestDataObject和ManifestDataNode提供ManifestProvider
10.2.4 圖示徽章
10.2.5 用JUnit測試ManifestDataObject
10.3 在內部使用自定義的檔案類型
10.4 序列化對象和系統檔案系統
第11章 圖形用戶界面
11.1 介紹
11.2 新建GUI窗體
11.3 在窗體中放置和排列組件
11.4 設定組件的大小和大小可調性
11.5 設定組件的行為和外觀
11.6 生成事件偵聽和處理方法
11.7 定製生成的代碼
11.8 用可視化的方法構建瀏覽器視圖
11.9 預覽窗體
11.1 0在窗體編輯器中使用自定義的Bean
11.1 1使用不同的布局管理器
第12章 多視圖編輯器
12.1 介紹
12.2 入門
12.3 理解多視圖編輯器
12.4 創建編輯器的基礎構架
12.5 創建源視圖
12.5.1 描述源MultiViewElement
12.5.2 創建源編輯器
12.5.3 在多視圖編輯器中加入源視圖
12.6 創建可視化視圖
12.7 完成示例
第13章 語法高亮顯示
13.1 介紹
13.2 準備創建語法高亮支持
13.3 創建TokenID
13.4 創建詞法分析器
13.5 擴展選項視窗
13.6 擴展選項視窗
13.7 完成
第14章 完成代碼
14.1 介紹
14.2 理解代碼完成
14.3 代碼完成提示類型
14.4 準備使用CompletionProvider接口
14.5 實現CompletionProvider
14.6 實現CompletionItem
14.7 為CompletionProvider添加過濾器
14.8 為“代碼完成提示框”加入文檔
14.9 為“代碼完成提示框”加入工具提示
第15章 組件面板
15.1 介紹
15.1.1 理解組件面板
15.1.2 創建第一個組件面板
15.2 向組件面板中添加元素
15.2.1 為第一個組件面板添加元素
15.2.2 讓用戶向組件面板中添加元素
15.3 拖放組件元素
15.3.1 定義放置目標
15.3.2 定義拖拽圖像
15.3.3 定義放置事件
15.3.4 定義拖拽動作
15.4 將支持特性添加到組件面板中
15.4.1 為面板添加操作
15.4.2 添加過濾器並刷新面板
15.4.3 添加屬性改變偵聽器
15.4.4 設定面板屬性
15.4.5 提供組件面板管理器
15.5 為文本編輯器創建組件面板
15.5.1 將組件面板與文本編輯器關聯
15.5.2 在文本編輯器的組件面板中添加元素
15.5.3 在文本編輯器中格式化被放置的元素
15.5.4 讓用戶在文本編輯器的組件面板中添加元素
第16章 超連結
16.1 介紹
16.1.1 準備提供超連結
16.1.2 HyperlinkProvider類
16.1.3 快速開始
16.2 使用HyperlinkProvider類的準備工作
16.3 manifest檔案中的超連結
16.3.1 識別超連結
16.3.2 設定超連結的長度
16.3.3 打開引用的文檔
16.3.4 完成
第17章 標註
17.1 介紹
17.2 準備創建錯誤標註
17.3 創建錯誤標註
17.3.1 理解錯誤標註DTD
17.3.2 註冊錯誤標註
17.3.3 安裝錯誤標註
17.4 準備使用錯誤標註
17.5 使用錯誤標註
17.5.1 描述標註
17.5.2 掛載和分離標註
17.5.3 定義請求處理任務
17.5.4 標註某行的一部分
17.6 完成
第18章 選項視窗
18.1 介紹
18.2 查看“選項”視窗擴展檔案
18.2.1 AdvancedOption類
18.2.2 OptionsPanelController類
18.2.3 可視化選項面板
18.3 創建主面板
18.3.1 第一個主面板
18.3.2 重新排序選項面板
18.4 向“選項”視窗中添加設定
第19章 Web框架
19.1 介紹
19.1.1 支持Web框架的準備工作
19.1.2 WebFrameworkProvider類
19.1.3 快速開始
19.1.4 示例:簡單註冊
19.2 準備使用WebFrameworkProvider類
19.3 為框架提供配置面板
19.3.1 創建配置面板
19.3.2 示例:在WebFrameworkProvider實現中添加配置面板
19.3.3 編寫配置面板
19.4 創建原始碼結構
19.4.1 準備使用extend()方法
19.4.2 示例:定義extend()方法
19.4.3 創建模板
19.4.4 創建Java檔案的模板
19.4.5 準備:利用模板在程式中創建Java檔案
19.4.6 利用模板在程式中創建Java檔案
19.4.7 嘗試使用框架支持模組
19.5 讓用戶在“框架”面板中選擇庫
19.6 “項目屬性”對話框和Web框架
19.7 完成
第20章 Web服務
20.1 介紹
20.2 創建和測試Web服務客戶端
20.3 集成Web服務客戶端
第21章 JavaHelp文檔
21.1 創建幫助集
21.2 刪除IDE的幫助集
21.3 標記幫助集的默認文字
第22章 更新中心
22.1 介紹
22.2 添加IDE的更新中心功能
22.3 創建和分發自動更新描述符
22.3.1 用IDE創建自動更新描述符
22.3.2 上傳自動更新描述符和NBM檔案
22.4 分發自動更新描述符的URL
22.4.1 生成一個註冊自動更新描述符的模組
22.4.2 讓用戶手動註冊自動更新描述符
22.5 從更新中心下載NBM檔案
22.6 將更新發布到現有模組
第23章 用例1:跟JensTrapp學習NetBeans模組開發
23.1 介紹
23.2 調用外部工具
23.2.1 創建Tidy錯誤檢測操作
23.2.2 獲取檔案名稱
23.2.3 運行HTMLTidy
23.2.4 解決依賴
23.2.5 運行示例
23.3 處理輸出
23.3.1 列印輸出
23.3.2 偵聽輸出
23.3.3 解析輸出
23.3.4 在“原始碼編輯器”中標註錯誤
23.4 配置工具
23.4.1 擴展“選項”視窗
23.4.2 持久化選項
23.5 格式化和轉換檔案
23.5.1 操作檔案
23.5.2 查看區別
23.6 控制轉換
23.6.1 創建嚮導
23.6.2 連線嚮導
第24章 用例2:RichUnger應用程式開發
24.1 介紹
24.2 開始
24.3 創建audio/wav的MIME類型支持
24.4 在WavDataObject中封裝音頻數據
24.5 創建查看WAV檔案的組件
24.6 將WAV編輯器轉變為多視圖編輯器
24.7 創建插入額外視圖的API
24.8 實現API,提供新視圖
附錄A 高級模組系統開發技術
附錄B NetBeans中的常見習慣和代碼模式
附錄C 性能
1.1 配置IDE
1.2 NetBeansIDE基礎
1.2.1 創建模組
1.2.2 創建應用程式
1.2.3 使用檔案模板
1.2.4 聲明依賴關係
1.2.5 運行模組
1.2.6 定製應用程式
1.2.7 發布應用程式
第2章 模組化編程的優勢
2.1 分散式開發
2.2 模組化套用
2.2.1 版本
2.2.2 次級版本信息
2.2.3 依賴管理
2.3 模組化編程宣言
2.4 使用NetBeans進行模組化編碼
第3章 模組化的體系結構
3.1 模組——程式的裝配單元
3.2 模組的類型
3.2.1 最終用戶界面模組
3.2.2 簡單程式庫
3.2.3 多廠商支持
3.2.4 模組庫
3.3 模組生命周期
3.4 模組群組
第4章 低耦合的互動
4.1 註冊和查找
4.2 MetaInf服務
4.3 全局Lookup
4.4 編寫擴展點
第5章 Lookup
5.1 擁有Lookup的對象
5.2 Lookup作為通信機制
5.3 Lookup和代理
5.4 Lookup和選擇
5.5 編寫Lookup敏感的操作
5.6 追蹤全局選擇
5.7 NetBeansAPI中遺留的Lookup模式變種
5.8 常見的Lookup模式
第6章 Filesytems
6.1 FileSystems和FileObjects
6.2 需要處理什麼類型的FileSystem
6.3 層次
6.4 XML檔案系統
6.5 聲明式註冊二:系統檔案系統
6.5.1 “系統檔案系統”是如何工作的
6.5.2 “系統檔案系統”是可讀寫的
6.5.3 使用“系統檔案系統”的FileChangeEvents
6.5.4 探索系統檔案系統——選單
6.6 從FileObject到Java對象
6.6.1 使用工廠方法從.instance檔案創建對象
6.6.2 通過代碼訪問“系統檔案系統”
6.6.3 使用.settings檔案
6.7 瀏覽“系統檔案系統”
6.8 小結
第7章 執行緒、偵聽者模式和MIME查找
7.1 創建模組和SPI
7.2 實現ListModelProvider
7.2.1 建立依賴
7.2.2 創建XmlListModelProvider
7.2.3 註冊XmlListModelProvider
7.3 提供一個UI組件
7.3.1 MIME查找SPI和API
7.3.2 提供一個視窗組件顯示列表模型
7.4 使用PseudoNavigator
7.5 小結:PseudoNavigator——這張圖片有什麼錯誤?
第8章 視窗系統
8.1 視窗系統的作用
8.2 “視窗系統API”中的類
8.3 使用TopComponent
8.4 在會話間持久化狀態
8.5 視窗系統持久化數據
8.6 創建編輯器樣式的TopComponent(以非聲明的方式)
8.7 高級視窗系統配置:自定義Mode
8.8 使用TopComponent群組
第9章 Node、Explorer視圖、Action和Presenter
9.1 NodeAPI
9.2 ExplorerAPI
9.2.1 explorer視圖組件的類型
9.2.2 創建顯示Node的TopComponent
9.2.3 添加詳細視圖
9.2.4 使用ExplorerAPI添加另一個詳細視圖
9.3 Action
9.3.1 Presenter
9.3.2 ActionAPI和NetBeans標準操作
9.3.3 在選單、工具列和快捷鍵中安裝全局Action
9.3.4 上下文感知操作
9.4 Node屬性
9.5 Node和DataObject:創建系統檔案系統瀏覽器
9.6 小結:節點、表單屬性和用戶界面設計
第10章 DataObject和DataLoader
10.1 DataObject來自哪裡?
10.2 添加對新檔案類型的支持
10.2.1 為NetBeans添加對ManiFest檔案的支持
10.2.2 由manifest檔案提供Manifest對象
10.2.3 由ManifestDataObject和ManifestDataNode提供ManifestProvider
10.2.4 圖示徽章
10.2.5 用JUnit測試ManifestDataObject
10.3 在內部使用自定義的檔案類型
10.4 序列化對象和系統檔案系統
第11章 圖形用戶界面
11.1 介紹
11.2 新建GUI窗體
11.3 在窗體中放置和排列組件
11.4 設定組件的大小和大小可調性
11.5 設定組件的行為和外觀
11.6 生成事件偵聽和處理方法
11.7 定製生成的代碼
11.8 用可視化的方法構建瀏覽器視圖
11.9 預覽窗體
11.1 0在窗體編輯器中使用自定義的Bean
11.1 1使用不同的布局管理器
第12章 多視圖編輯器
12.1 介紹
12.2 入門
12.3 理解多視圖編輯器
12.4 創建編輯器的基礎構架
12.5 創建源視圖
12.5.1 描述源MultiViewElement
12.5.2 創建源編輯器
12.5.3 在多視圖編輯器中加入源視圖
12.6 創建可視化視圖
12.7 完成示例
第13章 語法高亮顯示
13.1 介紹
13.2 準備創建語法高亮支持
13.3 創建TokenID
13.4 創建詞法分析器
13.5 擴展選項視窗
13.6 擴展選項視窗
13.7 完成
第14章 完成代碼
14.1 介紹
14.2 理解代碼完成
14.3 代碼完成提示類型
14.4 準備使用CompletionProvider接口
14.5 實現CompletionProvider
14.6 實現CompletionItem
14.7 為CompletionProvider添加過濾器
14.8 為“代碼完成提示框”加入文檔
14.9 為“代碼完成提示框”加入工具提示
第15章 組件面板
15.1 介紹
15.1.1 理解組件面板
15.1.2 創建第一個組件面板
15.2 向組件面板中添加元素
15.2.1 為第一個組件面板添加元素
15.2.2 讓用戶向組件面板中添加元素
15.3 拖放組件元素
15.3.1 定義放置目標
15.3.2 定義拖拽圖像
15.3.3 定義放置事件
15.3.4 定義拖拽動作
15.4 將支持特性添加到組件面板中
15.4.1 為面板添加操作
15.4.2 添加過濾器並刷新面板
15.4.3 添加屬性改變偵聽器
15.4.4 設定面板屬性
15.4.5 提供組件面板管理器
15.5 為文本編輯器創建組件面板
15.5.1 將組件面板與文本編輯器關聯
15.5.2 在文本編輯器的組件面板中添加元素
15.5.3 在文本編輯器中格式化被放置的元素
15.5.4 讓用戶在文本編輯器的組件面板中添加元素
第16章 超連結
16.1 介紹
16.1.1 準備提供超連結
16.1.2 HyperlinkProvider類
16.1.3 快速開始
16.2 使用HyperlinkProvider類的準備工作
16.3 manifest檔案中的超連結
16.3.1 識別超連結
16.3.2 設定超連結的長度
16.3.3 打開引用的文檔
16.3.4 完成
第17章 標註
17.1 介紹
17.2 準備創建錯誤標註
17.3 創建錯誤標註
17.3.1 理解錯誤標註DTD
17.3.2 註冊錯誤標註
17.3.3 安裝錯誤標註
17.4 準備使用錯誤標註
17.5 使用錯誤標註
17.5.1 描述標註
17.5.2 掛載和分離標註
17.5.3 定義請求處理任務
17.5.4 標註某行的一部分
17.6 完成
第18章 選項視窗
18.1 介紹
18.2 查看“選項”視窗擴展檔案
18.2.1 AdvancedOption類
18.2.2 OptionsPanelController類
18.2.3 可視化選項面板
18.3 創建主面板
18.3.1 第一個主面板
18.3.2 重新排序選項面板
18.4 向“選項”視窗中添加設定
第19章 Web框架
19.1 介紹
19.1.1 支持Web框架的準備工作
19.1.2 WebFrameworkProvider類
19.1.3 快速開始
19.1.4 示例:簡單註冊
19.2 準備使用WebFrameworkProvider類
19.3 為框架提供配置面板
19.3.1 創建配置面板
19.3.2 示例:在WebFrameworkProvider實現中添加配置面板
19.3.3 編寫配置面板
19.4 創建原始碼結構
19.4.1 準備使用extend()方法
19.4.2 示例:定義extend()方法
19.4.3 創建模板
19.4.4 創建Java檔案的模板
19.4.5 準備:利用模板在程式中創建Java檔案
19.4.6 利用模板在程式中創建Java檔案
19.4.7 嘗試使用框架支持模組
19.5 讓用戶在“框架”面板中選擇庫
19.6 “項目屬性”對話框和Web框架
19.7 完成
第20章 Web服務
20.1 介紹
20.2 創建和測試Web服務客戶端
20.3 集成Web服務客戶端
第21章 JavaHelp文檔
21.1 創建幫助集
21.2 刪除IDE的幫助集
21.3 標記幫助集的默認文字
第22章 更新中心
22.1 介紹
22.2 添加IDE的更新中心功能
22.3 創建和分發自動更新描述符
22.3.1 用IDE創建自動更新描述符
22.3.2 上傳自動更新描述符和NBM檔案
22.4 分發自動更新描述符的URL
22.4.1 生成一個註冊自動更新描述符的模組
22.4.2 讓用戶手動註冊自動更新描述符
22.5 從更新中心下載NBM檔案
22.6 將更新發布到現有模組
第23章 用例1:跟JensTrapp學習NetBeans模組開發
23.1 介紹
23.2 調用外部工具
23.2.1 創建Tidy錯誤檢測操作
23.2.2 獲取檔案名稱
23.2.3 運行HTMLTidy
23.2.4 解決依賴
23.2.5 運行示例
23.3 處理輸出
23.3.1 列印輸出
23.3.2 偵聽輸出
23.3.3 解析輸出
23.3.4 在“原始碼編輯器”中標註錯誤
23.4 配置工具
23.4.1 擴展“選項”視窗
23.4.2 持久化選項
23.5 格式化和轉換檔案
23.5.1 操作檔案
23.5.2 查看區別
23.6 控制轉換
23.6.1 創建嚮導
23.6.2 連線嚮導
第24章 用例2:RichUnger應用程式開發
24.1 介紹
24.2 開始
24.3 創建audio/wav的MIME類型支持
24.4 在WavDataObject中封裝音頻數據
24.5 創建查看WAV檔案的組件
24.6 將WAV編輯器轉變為多視圖編輯器
24.7 創建插入額外視圖的API
24.8 實現API,提供新視圖
附錄A 高級模組系統開發技術
附錄B NetBeans中的常見習慣和代碼模式
附錄C 性能