亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

進入Harmony 世界,類庫開發最佳實踐

2019-11-18 15:28:19
字體:
來源:轉載
供稿:網友

2006 年 12 月 14 日

Apache Harmony 是 2005 年 5 月公布的開放源碼 java SE 實現,本文是由 5 部分組成的 進入 Harmony 世界 系列文章的第四篇,這個系列主要介紹 Apache Harmony 項目的內部實現,最新發展現狀和開源 Java 開發的模式,并鼓勵和歡迎大家參與到 Harmony 的社區中來。

本文較具體地介紹了 Harmony 項目類庫(API庫)開發過程當中的經驗,從架構設計和軟件工程的角度,介紹了類庫開發過程當中積累的類庫模塊的劃分、測試優先的開發模式、結對編程、代碼審核等等最佳實踐。

類庫模塊劃分

類庫模塊的劃分,是 Harmony 項目類庫總體設計上的主要特點。通過將龐大的 J2SE 類庫劃分為若干個相對獨立而且小規模的功能模塊,Harmony 的開發者簡化了類庫實現的過程,降低了開發類庫的風險。類庫模塊的劃分原則和具體劃分方式,是項目進行和結構設計實踐當中不斷總結和歸納出來的。

Harmony 模塊化背景和目標

實現一個完整的兼容的開源 J2SE,這是一種很棒的開創性的想法,但它的實現有著相當的難度,有很多的問題需要注重。開源軟件的開發流程,具有一定的自由性和不確定性。通常的情況是,來自世界各地的開發者,在一個組織的統一協調下,分工合作,不定期的提交一些功能模塊,然后集成到一個大的平臺產品當中。這樣的開發方式是開源軟件的固有特征,但是對于 J2SE 這樣的龐大體系,這樣的開發模式會增加產品的風險。為了減小風險,便于平臺的升級和維護,就要充分考慮以下問題:合理的劃分平臺,定義好模塊之間的接口,以及降低耦合性??偨Y來說有以下幾個目標:

  1. 符合 J2SE 基本結構

    與現有的 J2SE 實現功能上兼容的同時,在基本的大的組件方面也要做到一致。如 JVM、類庫、JIT 組件等等大規模組件必須對應一致。這樣可以使 Java 類庫的開發工作易于治理,開源社區的參與者可以集中開發他擅長的模塊。

  2. 獨立開發

    為了開發的便利和風險的降低,平臺的模塊必須實現獨立開發,各個模塊之間盡量減少耦合,這樣才可以發揮開源項目的優勢,避免其缺陷。

  3. 模塊替換

    在 Java 的開源世界里,隨時都有很多開源軟件的出現,假如出現了某些優秀的開源 J2SE 組件,應該答應它們方便的替換進來;另外,假如發現本身某一個模塊實現上的不足,也可以方便的替換出去,而不影響整個平臺。

  4. 共享組件

    除開提供完整的 J2SE 實現,這個項目的另外一個有價值之處就是在于為開源社區提供共享的 J2SE 組件。這個目標十分重大,因為一個完整的 J2SE 平臺,本身就意味著了聚集了很多有價值的組件。所以,平臺的設計必須確保這些組件可以方便的被共享和重用。

針對以上目標,在 Harmony 項目中采用了模塊化的劃分方式。在 Sun 公司的最初設計里面,根本沒有考慮過對 Java 模塊化,也沒有開源的想法,所以原有的耦合性是比較大。而且,這個劃分既要有全局的劃分,即把整個 J2SE 劃分為幾個大的組件,如 JVM,API 類庫,Tools 等等,也有對組件內部的劃分,例如把類庫進一步劃分成一些模塊,不同的模塊實現不同的功能。

類庫設計

完整的 J2SE 平臺的模塊化設計,首先應該在最抽象的層次,按照設計目標,劃分出整體的模塊組件,規定好它們的互聯規范,比如對類庫、虛擬機間接口的定義;然后,應該在比較具體的層次,在比較大的組件當中再次劃分子模塊,例如類庫的進一步劃分。

類庫(Class Library)是 J2SE 當中最復雜和最常用的部分。它為 Java 開發者提供了豐富的編程接口,給 Java 應用程序提供了基礎類庫。Harmony 類庫的目標,是要實現一個標準 J2SE 類庫,和現有的 Sun 的 JDK 兼容一致。雖然不會增加特性,但是在完全不涉及 Sun 的源代碼的前提下,僅僅依靠公開的 Java 文檔,設計和開發這樣的類庫,依然是一項艱巨的工作。

Harmony Class Library 分為三十多個模塊。假如我們從上下層次上看,它們主要上分為以下四個大類,主要模塊如圖所示。


圖一 類庫劃分總圖
進入Harmony 世界,類庫開發最佳實踐(圖一)
點擊查看大圖

應該注重到,這個劃分和 Sun 公司的 J2SE 結構圖并不相同,這是因為,Harmony 為自己項目的特點,對已有的基于包(package)的類庫結構按照功能重新分析和歸類,有的模塊是從包中劃分出來,如 instrument 模塊做 Java 虛擬機的類重定義和治理功能,它本來是 java.lang 包當中的子包,但是由于功能的獨特,所以就被單獨分為一塊。

下面逐一介紹這四大類和主要的模塊。

  1. 基礎模塊 (LUNI) 與 NIO

    LUNI 是 Lang、Util、Net、IO 這些模塊的首字母總稱,他們和新的 NIO 模塊一起表示類庫的基礎和核心部分,處于類庫的底層。當然,LUNI 當中也有些獨立分出模塊的子包,如 instrument,management 模塊,這些模塊作為虛擬機監測工具類庫,就不屬于 LUNI。

    之所以要把 LUNI 和 NIO 同看作為基礎模塊,是因為它們互相之間有著密切的聯系。在實際實現中,它和 IO 和非常多的底層公用,兩者有緊密的聯系。如 NIO 當中的 SocketChannel 和 NET 中 Socket 基本上就可以共用同一套底層代碼。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产999在线| 日韩欧美国产高清91| 一区二区亚洲精品国产| 亚洲美腿欧美激情另类| 国产精品久久久久久久久久久久久| 国产精品永久免费视频| 亚洲free性xxxx护士hd| 国产美女精品视频| 欧美激情精品久久久久久变态| 91社影院在线观看| 日韩最新在线视频| 青青a在线精品免费观看| 17婷婷久久www| 久久影院免费观看| 日本高清视频精品| 美日韩精品免费观看视频| 国产91精品最新在线播放| 欧美野外wwwxxx| 久久久99免费视频| 亚洲影院高清在线| 欧美麻豆久久久久久中文| 亚洲福利小视频| 亚洲一区二区黄| 久久久久久久久久久免费精品| 成人激情黄色网| 精品久久久香蕉免费精品视频| 国产日韩精品电影| 国产精品三级网站| 国产美女精品视频免费观看| 国产亚洲精品va在线观看| 国产+人+亚洲| 亚洲精品网站在线播放gif| 久久精品亚洲一区| 日韩中文字幕第一页| 亚洲第一精品电影| 成人淫片在线看| 亚洲色图av在线| 伊人男人综合视频网| 一区二区三区在线播放欧美| 亚洲欧美另类中文字幕| 91爱爱小视频k| 国产欧美日韩免费| 亚洲一区二区久久久久久| 成人福利在线视频| 福利精品视频在线| 成人h视频在线观看播放| 国产黑人绿帽在线第一区| 亚洲精品大尺度| 中文字幕不卡av| 91美女福利视频高清| 91亚洲精品久久久久久久久久久久| 国产精品久久久久久av下载红粉| 韩国三级电影久久久久久| 久久久999国产精品| 成人久久精品视频| 在线精品国产欧美| 亚洲伊人一本大道中文字幕| 亚洲精品一区在线观看香蕉| 91高清在线免费观看| 欧美激情区在线播放| 日韩欧美在线字幕| 国产精品极品美女在线观看免费| 久久影视三级福利片| 国产精品第七十二页| 欧美成在线观看| 欧美日韩激情视频8区| 精品五月天久久| 国产精品毛片a∨一区二区三区|国| 国产精品久久久久久久久久免费| 97久久久免费福利网址| 久久在线免费视频| 九九九热精品免费视频观看网站| 51色欧美片视频在线观看| 亚洲最大的av网站| 欧美国产日韩一区二区| 98精品国产高清在线xxxx天堂| 国产精品久久久久久久app| 亚洲视频电影图片偷拍一区| 国产91在线播放精品91| 亚洲一区www| 亚洲国产精品99久久| 久久电影一区二区| 高跟丝袜欧美一区| 亚洲第一男人av| 伊人久久精品视频| 91麻豆国产语对白在线观看| 欧美性资源免费| 久久精品影视伊人网| 国产色婷婷国产综合在线理论片a| 中文国产成人精品久久一| 97在线观看视频国产| 久久天天躁狠狠躁夜夜躁| 欧美性猛交xxxx乱大交| 国产一区二区黑人欧美xxxx| 国产日本欧美一区二区三区在线| 亚洲欧美中文字幕| 午夜精品蜜臀一区二区三区免费| 国产精品xxx视频| 国产成人在线视频| 国产精品视频中文字幕91| 国产精品久久久久久av福利| 九九九热精品免费视频观看网站| 欧美三级免费观看| 欧美激情国产日韩精品一区18| 96sao精品视频在线观看| 久久久精品久久久久| 国产一区二区三区直播精品电影| 欧美老少做受xxxx高潮| 日韩中文综合网| 欧美亚洲另类激情另类| 中文字幕亚洲自拍| 69国产精品成人在线播放| 日韩69视频在线观看| 国产91色在线播放| 一区二区亚洲欧洲国产日韩| 成人av电影天堂| 亚洲桃花岛网站| 国内精品久久久久久中文字幕| 综合欧美国产视频二区| 国产精品xxx视频| 欧美国产在线视频| 91亚洲精品久久久| 亚洲欧美三级伦理| 日韩欧美国产网站| 国产91色在线|| 美女精品久久久| 国产亚洲欧美日韩精品| 午夜精品一区二区三区视频免费看| 亚洲天堂男人的天堂| 丝袜一区二区三区| 欧美日韩国产成人在线观看| 成人在线一区二区| 欧美日韩亚洲高清| 中文字幕日韩av电影| 日韩成人久久久| 日韩av影院在线观看| 欧美日韩在线观看视频| 久久国产加勒比精品无码| 91成人国产在线观看| 亚洲国产成人久久综合| 国产欧美一区二区三区久久人妖| 精品国产一区av| 欧美精品少妇videofree| 亚洲天堂av女优| 欧美性猛交xxxx| 亚洲欧美精品一区二区| 亚洲欧美精品一区二区| 久久精品视频亚洲| 久久在精品线影院精品国产| 欧美成人全部免费| 欧美在线观看网站| 日韩精品免费视频| 久久夜色精品国产欧美乱| 国产盗摄xxxx视频xxx69| 欧美日韩成人黄色| 日韩av片免费在线观看| 最近的2019中文字幕免费一页| 日本久久精品视频| 一本大道亚洲视频| 国产自产女人91一区在线观看| 亚洲天堂免费在线| 国产精品久久久久国产a级| 日韩高清电影好看的电视剧电影| 久久理论片午夜琪琪电影网|