精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

實例詳解NetBeans和Swing平臺開發

開發 后端
開發豐富的桌面 Java 應用程序歷來是非常辛苦的過程;但是現在NetBeans Swing平臺中有了新的高級 Swing 組件和完整的應用程序框架。了解這個平臺如何讓開發復雜的桌面應用程序變得輕松,以及在構建這個平臺方面的一些教訓。

筆者和很早就開始使用 Java 的大多數人一樣,我最初接觸這項技術是使用(小型)桌面應用程序的時候:它們是我讀博士期間的一些研究素材和一個衛生保健呼叫中心的簡單控制面板。那時是 AWT 時代,能做的事有限。因此我很快就轉到了服務器這邊,這邊的系統似乎更強健、更有發展。事實確實如此。我在這次領域工作了很長時間,并且成為一名 J2EE 架構師。

幾年之后,由于對數字攝影熱情的不斷高漲,我又重新被吸引到桌面。我仍然遇到了許多問題,但是就在我即將放棄的時候,Sun 和開發人員社區推出的 SwingLabs、java.net 和新版本的 NetBeans 把我從困難中解救出來。現在,我正在熱衷于使用一個(可能是)富有前途的開放源碼應用程序 blueMarine,這個程序基于 NetBeans 平臺。

在本文中,我將告訴您有關 blueMarine 的更多故事,并且回顧一些主要的 NetBeans 擴展 API。我將介紹如何使用和自定義這些 API,同時指出我曾經面臨的問題以及解決這些問題的方法。如果您對NetBeans和Swing知之甚少,而您又需要接觸各種各樣的客戶端應用程序,我認為您應該好好閱讀這篇文章。

開始

2001 年前后,由于厭倦了使用 OpenOffice 電子表格,我***次編寫了一些 Java 代碼,用于管理我的照片。我將所有內容導出到 XML 并且利用 XSLT 轉換,確定了我自己的數據庫格式,通過基于 Swing 的一個非常簡單的圖形用戶界面進行管理。

在 2003 年夏天,我在數碼相機世界有了較大的飛躍,購買了 Nikon D100(專業的 SLR)。那個夏天是意大利本世紀最炎熱的夏天,因此我不得不***程度地減少拍照旅行的數量:外出散步也是受罪。我不得不待在家里,盡管托斯卡納鄉村的環境能令人放松,因此,大部分假期我都在學習 NEF 格式。

當時,NEF 是一種“原始數據文件格式”,并且幾乎沒有公開。原始數據文件格式包含的數據直接來自于相機 CCD 傳感器,未經過處理。如果要將它轉換為質量比較好的圖片,還需要對數據進行處理。這通常認為這一過程是舊式潮濕暗室相片成像的數字過程。我從來沒有擁有過自己的潮濕暗室,我為“數字沖洗”照片而入迷,開始為此編寫了一些 Java 代碼。

夏天快結束的時候,我創建了一個簡單的能夠顯示照片的微型導航程序—— blueMarine 就此誕生了。一年之后,這個項目便能夠用編錄設備標記照片,并且能夠在網上發布圖片庫。

但是,讓我非常苦惱的是,我需要多個軟件來執行編輯、打印、編錄、歸檔以及 Web 發布任務。因此我著手開始研究在一個應用程序中實現所有這些工作流程。同時,我認為是時候公開發布 blueMarine 了,因此***個 alpha 版本發布到了 GPL License(后來更改為 Apache 2.0)支持下的 SourceForge 。

另一個推動力是在臺式計算機上挑戰使用 Java 對數字圖像進行處理。對于我來說,Java 在科學圖像處理方面的優勢已經非常明顯;例如, NASA 的工程師們已經成功使用了 JAI,它是一種高級成像的 API。但是,對于普通攝影師來說,桌面處理包含哪些內容呢?自從成為 Java 顧問 10 多年來,證明 Java 在各種各樣的應用程序方面的優勢一直是我追求的目標。

挫折

雖然開始時熱情高漲,但是在 2005 年底,我在這個項目上受到了很大的打擊。性能不是大問題,但是,在使用 plain Swing 開發豐富的 GUI 應用程序時,我遇到了困難。Swing 是一個非常出色的 API,但是當您使用它構建復雜的應用程序時,您會發現仍然需要增加很多功能。

實現這些缺少的部分并不是前言科學,但是這項工作浪費了很多寶貴的時間。再次舉例來說明這個問題,例如構建菜單、以上下文相關的方式啟用操作、為內部窗口定義靈活的、可在工作時停靠的機制等等,并且您將發現自己的大部分時間都花費在編寫通用的 GUI 組件上,而沒有花費在應用程序的核心內容上。

直到最近,才有了幾個處理此類問題的開放源碼庫,但是大部分庫都不太令人滿意,而且也很難集成。還有幾個較早版本的 NetBeans,但是我不滿意它們的性能。也可以選擇 Eclipse 和 SWT,但是我覺得我并沒有真正地仔細研究完全的替代方法和非標準的 API,我采用的學習投資回報低,繼承 Swing的方法比較麻煩。

總的來講,我認真地考慮過放棄 blueMarine – 或許 Java 尚未準備用于桌面開發。

新生

但是,同時出現了兩個事件使這個項目得以保留下來,這兩個事件是,我在 2005 年底參與了 JavaPolis 以及 2006 年初發布了 NetBeans 5.0。

在 JavaPolis,我呼吸到了我幾乎都快忘記的社區空氣(自從我上次參加JavaOne 已經過去了三年)。這重新點燃了我的熱情,Romain Guy 的演示說明了使用 Swing 構建 GUI 的效果如何,,這使我興趣倍增。我開始查看 Romain 的博客,并按照下面的鏈接訪問了其他人的博客,如 Joshua Marinacci 的博客,然后再從那里訪問所有 java.net 和 JavaDesktop 的站點。我發現 Swing 里面有很多新鮮有趣的事;像 SwingLabs 里質量優良的 Swing組件和出眾的演示程序 – 很多材料我都能夠使用。但是,我仍然需要一個平臺。

幾周之后,推出了NetBeans 5.0 。這個新的版本看起來似乎最終解決了傳統的平臺問題,因此我決定試一試。我開始分解 blueMarine,只提取成像代碼并對該代碼重新設計以便使用 NetBeans 平臺。幾個月之后,便可以發布了***個 Early Access 版本,我開始使用這個工具管理我自己的照片。同時,從前一個 PPC Apple iBook 切換到新的 Intel MacBook Pro 沒有出現任何問題則強有力地表明了我的選擇是正確的。

目前,我正致力于使新的 blueMarine 更穩定、更便于使用。獲得了新的 early access 版本,并且我正在進行所需的質量測試(整個新設計明顯破壞了以前版本的一些穩定性;這就是付出的代價)。

NetBeans和Swing平臺的功能

由于您已經了解了 blueMarine 的由來,因此我將概述一些NetBeans和Swing帶來的開發優勢、我曾經面臨的問題以及解決這些問題的方法。

***點:是 Swing!

對于我來說,與很多競爭對手(如 Eclipse RCP)相比,NetBeans 平臺基于常規的Swing 是一個巨大的優勢。搜索一下,您會發現 Swing 組件(包括實現動畫和效果比較酷的組件)有更廣闊的選擇余地。

去年 6 月份我非常具體地認識到了這個優勢,當時 Joshua Marinacci 發布了能夠顯示地圖的 Aerith Swing 組件的源代碼,命名為 JXMapViewer(Aerith 是 2006 年 JavaOne 上最熱門的演示程序)。幾周以來,我一直都在等待這個時刻,blueMarine 的其中一個功能是地理標記(將地理位置與每個照片相關聯,以便這些照片可以顯示在地圖上)。將 JXMapViewer 集成到 blueMarine 中只需要幾個小時;

模塊系統

當然,NetBeans 平臺應用程序自然分為幾個模塊,實際上,它是一組綁定在一起的模塊。每個模塊都有一個名稱、一組版本標記及其自己的類路徑以及一個聲明的依賴關系的列表。開 發人員可以控制哪些公共類的子集向其他模塊公開,其他模塊可以看到哪些公共類的子集,平臺可以在模塊之間施加依賴關系(例如,如果所需的模塊都不存在或者 太舊,則阻止模塊安裝)。

此外,通過發布新的模塊(放在 nbm 文件中)可以在以后擴展應用程序,用戶可以建立他們自己的“更新中心”,以便從 Internet 下載更新。可以對各個模塊進行數字簽名,系統會自動彈出他們的許可證以便進行批準(如果需要的話)。

BueMarine 項目充分利用這個組織。該應用程序的核心 API 由實現工作空間管理器、照片、縮略圖管理、簡單縮略圖和照片查看器的相對比較小的模塊集進行定義。更多的高級功能(如編錄、圖庫管理器和地理標記功能,包括地圖查看器)可以在單獨并且幾乎不相關的模塊中實現,這些模塊就作為核心 API 的“客戶端”。

DataObject、Node 和 ExplorerManager

ExplorerManager、Node 和 DataObject 可能是 NetBeans 中最有用的 API。使用 DataObject,您可以實現特定于應用程序的實體,這些實體是映射到磁盤上的文件中。例如,blueMarine 的基本實體為 PhotoDataObject,它代表數據庫中的照片。

而 DataObject 包含實體的所有狀態和行為,為了進行可視化可以將 Node 與DataObject綁定。還可以采用很多種不同的方式(如集合或圖形)將實體聚合在一起。NetBeans 平臺提供 GUI 組件,如表和列表,這些組件可以將一組 Node 對象用作其模型;最常見的組件是 BeanTreeView、ContextTreeView 和 ListView。***,ExplorerManager 控制選擇和樹導航。

是的,這只不過是一個復雜的 MVC 實現,而且這個實現中已經為您編寫了很多樣板文件代碼。例如,平臺 API 考慮類似于拖放支持(以及拖放操作過程中類似于可視提示等詳細的細節信息)、剪切粘貼操作和上下文菜單的事情。

【編輯推薦】

  1. 開源NetBeans 5.5集成開發環境(IDE)正式推出
  2. 新版NetBeans讓PHP開發更輕松
  3. NetBeans 6.0預覽版發布 Sun再引驚呼
  4. 使用NetBeans和Eclipse開發PHP應用程序(1)
  5. 八大技術牛人點評NetBeans 6.5
責任編輯:張燕妮 來源: 百度空間
相關推薦

2009-07-17 12:44:01

NetBeans開發S

2009-06-10 14:53:25

netbeans st實例

2009-06-11 09:19:38

netbeans實例J2ME游戲

2011-05-24 10:30:31

PythonNetBeans ID

2009-07-09 17:33:39

2009-05-27 14:31:53

NetBeansEclipsPHP

2009-04-02 15:58:12

AndroidEclipseSqlite

2011-04-12 08:40:23

IMFAndroid

2011-09-08 13:11:07

Android Wid實例

2009-07-10 10:19:57

JFormattedTSwing

2009-07-10 12:30:12

Swing組件

2009-07-17 14:57:41

SwingWorkerSwing程序

2009-03-16 15:00:16

阿里軟件旺旺軟件平臺SaaS

2009-07-09 11:55:17

Swing模型過濾

2012-02-16 09:11:34

Swing

2011-07-28 10:11:54

iPhone開發 備忘

2012-04-06 11:19:11

JavaGriffon

2009-06-11 10:37:58

netbeans spMVC基礎

2009-06-11 10:43:18

Netbeans插件

2009-07-15 15:35:59

Swing程序Swing性能
點贊
收藏

51CTO技術棧公眾號

中文在线日韩| 日本电影久久久| 91美女福利视频| 国产精品久久久久久婷婷天堂 | 最近日韩免费视频| 91精品综合久久久久久久久久久| 欧美tk—视频vk| aa免费在线观看| 久久久久久久久免费视频| 成人美女视频在线看| 国产精品99久久久久久久久| 成人在线观看小视频| 日韩极品在线| 欧美精品日韩一区| 欧美成人xxxxx| 手机av在线播放| 国产欧美1区2区3区| 粉嫩av一区二区三区免费观看| 精品国产xxx| 欧美人成在线| 最新91在线视频| av免费观看不卡| 一区二区三区日本视频| 日韩欧美极品在线观看| 妺妺窝人体色www看人体| 国产一二在线观看| av中文一区二区三区| 91在线观看免费网站| 日本精品入口免费视频| 亚洲三级观看| 色综合久久悠悠| 大胸美女被爆操| 嫩草影视亚洲| 亚洲电影免费观看高清| 亚洲一区二区三区三州| 国产极品一区| 在线观看日韩精品| 国模吧无码一区二区三区| 先锋影音在线资源站91| 综合精品久久久| 一本久道久久综合| 97人人在线| 国产校园另类小说区| 久久亚洲午夜电影| 五十路在线观看| 成人精品在线视频观看| 99re在线视频上| 国产精品探花视频| 精品综合久久久久久8888| 国产精品日韩精品| 特级西西444www大胆免费看| 久久一二三区| 国产精品av电影| 免费的毛片视频| 老鸭窝亚洲一区二区三区| 5566成人精品视频免费| 久久久午夜影院| 一区二区国产精品| 欧美亚洲在线视频| 亚洲天堂一区在线| 视频一区在线播放| 国产精品久久久久久久7电影| 国产美女www爽爽爽| 首页国产欧美久久| 国产免费观看久久黄| 中文在线资源天堂| 极品少妇一区二区| 97se视频在线观看| 色婷婷视频在线| 91网上在线视频| 热re99久久精品国99热蜜月| 成人在线视频成人| 中文字幕一区二区三区视频| 国产人妻人伦精品| 国产又色又爽又黄刺激在线视频| 亚洲成人av一区| 免费在线观看日韩视频| 国产第一精品| 日韩欧美高清dvd碟片| 李丽珍裸体午夜理伦片| 国产日产精品一区二区三区四区的观看方式 | 男女超爽视频免费播放| 樱花草涩涩www在线播放| 91精品办公室少妇高潮对白| 免费av不卡在线| 亚洲一区二区三区四区电影| 日韩电影第一页| 国产三级在线观看完整版| 亚洲五月综合| 8x拔播拔播x8国产精品| 亚洲天堂视频在线| 成人一级片在线观看| 欧美日韩亚洲一区二区三区在线观看 | 国产大尺度在线观看| 麻豆av在线免费观看| 色婷婷亚洲精品| 亚洲国产欧美91| 日韩有码中文字幕在线| xxxxx成人.com| 国产真人真事毛片| 另类小说综合欧美亚洲| 国产精品毛片va一区二区三区| 久草在线免费福利资源| 亚洲精品日产精品乱码不卡| 欧美日韩在线不卡视频| 精品一区二区三区中文字幕| 亚洲摸下面视频| 欧美激情图片小说| 日韩av中文字幕一区二区三区| 99久久无色码| 在线观看免费黄色| 欧美日韩免费看| 一起草最新网址| 青青草91久久久久久久久| 久久久久久久国产| 国产三级漂亮女教师| 国产日韩一级二级三级| 99色这里只有精品| 精品国产欧美| 日韩在线国产精品| 极品国产91在线网站| 成人一二三区视频| 国产日韩视频在线播放| 欧美va在线观看| 日韩精品中文字幕在线播放| 2018天天弄| 狠狠色丁香婷婷综合| 日韩精品无码一区二区三区| 欧美办公室脚交xxxx| 欧美不卡激情三级在线观看| 天天操天天摸天天舔| 久久精品一区二区三区中文字幕 | 91淫黄看大片| 日本一道高清一区二区三区| 欧美大片第1页| 国产高清第一页| 中文天堂在线一区| 亚洲成色www.777999| 九九在线精品| 欧美在线不卡区| 外国精品视频在线观看| 亚洲国产乱码最新视频| 韩国av中国字幕| 欧美日本不卡高清| 99re视频| 欧美xxxx做受欧美88bbw| 日韩三级视频在线观看| 日韩欧美123区| 国产一区二区免费视频| 国产成人三级视频| 国产免费区一区二区三视频免费| 日韩网站免费观看| 国产又粗又黄又爽视频| 亚洲日本va在线观看| 永久免费黄色片| 在线观看日韩| av蓝导航精品导航| 9999精品成人免费毛片在线看| 亚洲第一福利在线观看| 日韩免费一级片| 久久久噜噜噜久久中文字幕色伊伊| 凹凸国产熟女精品视频| 你懂的一区二区三区| 国产精品18久久久久久首页狼| 国产在线资源| 欧美日韩国产高清一区二区 | 深夜福利免费在线观看| 欧美午夜宅男影院在线观看| 欧美无人区码suv| 久久久蜜桃一区二区人| 亚洲一区bb| 人人九九精品视频| 97视频在线免费观看| 毛片网站在线| 欧美男生操女生| 国产一级片免费观看| 97超碰欧美中文字幕| 男女无套免费视频网站动漫| 天堂美国久久| 国产一区二区三区高清| 国产 日韩 欧美一区| 久久久av网站| 性感美女一级片| 欧美性猛片xxxx免费看久爱| 日本天堂中文字幕| xf在线a精品一区二区视频网站| 日av中文字幕| 一区二区电影在线观看| 久久久久久久久久久一区| 高清亚洲高清| 隔壁老王国产在线精品| 国产高清自拍视频在线观看| 日韩一区二区免费在线电影| 特级西西444www大精品视频免费看| 国产日产欧产精品推荐色| 欧美在线a视频| 天堂蜜桃一区二区三区 | 波多野结衣福利| 久久99精品国产| 成人中文字幕在线播放| 999久久久免费精品国产| 国产欧美日韩伦理| 国产亚洲欧美日韩精品一区二区三区 | 黄色网页网址在线免费| 精品一区二区三区电影| a天堂在线视频| 91黄色免费网站| 国产一级片免费| 亚洲婷婷国产精品电影人久久| 野外性满足hd| 国产suv一区二区三区88区| 九一精品在线观看| 一本色道精品久久一区二区三区| 中文字幕中文字幕在线中心一区 | 成人影院av| 欧美精品久久一区二区| 麻豆传媒在线免费| 在线观看国产精品日韩av| 亚洲国产日韩在线观看| 欧美久久一二区| 乱子伦一区二区三区| 天天影视涩香欲综合网| 久久免费视频播放| 综合在线观看色| 成人精品一二三区| 久久久一区二区三区捆绑**| 日韩av无码一区二区三区不卡 | 亚洲经典三级| 99视频免费观看| 日本久久久久| 国产精品久久久久久久久久久久| 深夜福利视频一区二区| 国产做受69高潮| av电影在线地址| 九九热r在线视频精品| 免费av在线播放| 在线观看欧美www| 国产一级网站视频在线| 亚洲男人天堂网| 污污的视频网站在线观看| 精品国产123| 蜜桃久久一区二区三区| 日韩欧美高清在线| 亚洲第一精品网站| 欧美大片一区二区三区| 国产激情久久久久久熟女老人av| 在线不卡一区二区| 99国产揄拍国产精品| 欧美一区二区三区日韩视频| 国产又粗又猛视频| 欧美一区二区视频在线观看| 国产乱叫456在线| 欧美一区二区三区四区在线观看| av在线亚洲天堂| 精品国一区二区三区| 好男人www在线视频| 亚洲成人xxx| 色av男人的天堂免费在线| 亚洲欧美日韩图片| yourporn在线观看中文站| 自拍视频国产精品| sm国产在线调教视频| 久久99热精品这里久久精品| caoporn-草棚在线视频最| 69av在线视频| 香蕉久久免费电影| 国产一区玩具在线观看| 精品久久国产一区| 99视频免费观看| 秋霞蜜臀av久久电影网免费 | 丁香婷婷激情网| 精品午夜一区二区三区在线观看| 天堂一区在线观看| 国产一区二区三区四区五区美女| 国产精品99久久久精品无码| 91啪亚洲精品| 日韩不卡av在线| 亚洲黄色片在线观看| 亚洲精品1区2区3区| 欧美亚洲综合一区| 国产黄色av片| 亚洲精品自拍偷拍| 亚洲xxxxxx| 欧美激情综合色综合啪啪五月| 国产传媒在线| 国产精品一区二区三区毛片淫片 | 久久av一区二区三区亚洲| 国产探花在线精品| 欧美性受黑人性爽| 久久av一区二区三区| 国产福利精品一区二区三区| 成人久久久精品乱码一区二区三区 | av在线不卡免费看| 欧美另类69xxxx| 亚洲高清免费视频| 亚洲性猛交富婆| 精品成人一区二区三区| h视频网站在线观看| 久久久最新网址| 天天综合在线观看| 精品国产一二| 亚洲精品a级片| 成人亚洲视频在线观看| 国产91丝袜在线观看| 一区二区三区在线观看免费视频| 亚洲制服丝袜在线| 97精品人妻一区二区三区在线| 日韩的一区二区| 成人av福利| 国产精品久久久久久久久久新婚| 中文字幕视频精品一区二区三区| 色综合电影网| 国产美女一区| 免费观看一区二区三区| 国产精品久久久久久久久久久免费看| 日韩精品久久久久久久| 91麻豆精品国产91久久久资源速度| 亚洲aaaaaaa| 欧美情侣性视频| 久久麻豆视频| 婷婷久久伊人| 久久一二三区| 99re久久精品国产| 亚洲综合无码一区二区| 亚洲天堂一二三| 亚洲午夜精品久久久久久性色| 超碰在线资源| 99在线影院| 综合一区在线| www.色就是色.com| 国产日韩精品视频一区| 黄色片视频免费| 亚洲精品影视在线观看| 多野结衣av一区| 成人动漫在线观看视频| 国产综合视频| 五月天婷婷亚洲| 中文字幕中文字幕在线一区| 中文字幕第三页| 亚洲图片在线综合| 吉吉日韩欧美| 区一区二区三区中文字幕| 老**午夜毛片一区二区三区 | 农村少妇一区二区三区四区五区 | av在线麻豆| 亚洲精品免费网站| 亚洲国产精品日韩专区av有中文| 污色网站在线观看| 国产精品视频一二三| 国产精品欧美综合| 自拍亚洲一区欧美另类| 欧美视频免费看| 精品少妇人妻av一区二区| 经典三级在线一区| 激情小说中文字幕| 亚洲第一综合天堂另类专| 午夜影院在线观看国产主播| 欧美精品欧美精品| 日韩成人一级片| 又色又爽的视频| 91麻豆精品久久久久蜜臀| 国产激情小视频在线| 91网免费观看| 99热免费精品| 丁香激情五月少妇| 91精品国产综合久久国产大片| 秋霞在线午夜| 精品一区在线播放| 日韩精品电影一区亚洲| www色com| 91精品国产免费| 91超碰在线播放| 日本一区二区在线视频| 韩国一区二区三区| 国产乡下妇女做爰| 亚洲欧美日韩高清| 97精品资源在线观看| 日本黄大片在线观看| 久久影院午夜片一区| 在线观看国产精品入口男同| 欧美激情国内偷拍| 私拍精品福利视频在线一区| 999在线观看| 性欧美大战久久久久久久久| 成a人v在线播放| 99国内精品久久久久久久软件| 免费日韩视频| 欧美第一页在线观看| 日韩精品久久久久久福利| 欧美日韩视频免费看| 青青青免费在线| 国产精品毛片a∨一区二区三区| 精品二区在线观看| 欧美中文字幕精品| 亚洲精品小说| 四虎永久免费影院| 欧美夫妻性生活| 婷婷综合六月| 成人免费毛片在线观看| 国产精品久久久久久久久动漫|