<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 設計應用 > 突破困境的開(kāi)放式源碼開(kāi)發(fā)平臺

突破困境的開(kāi)放式源碼開(kāi)發(fā)平臺

——
作者:Robert Cravotta 時(shí)間:2005-09-20 來(lái)源:EDN電子設計技術(shù) 收藏
突破困境的開(kāi)放式源碼開(kāi)發(fā)平臺
 要點(diǎn)
  ●   Eclipse和NetBeans是兩個(gè)相似而又相互競爭的開(kāi)放源碼項目。
  ●   許多公司正在成功地用Eclipse平臺提供嵌入式開(kāi)發(fā)工具。
  ●   CPL(通用公共許可證)使開(kāi)放源碼的需求與實(shí)現專(zhuān)有部件的需求保持平衡。
  ●   如果IDE不是你要為工具增加的核心優(yōu)勢,則要考慮對Eclipse平臺進(jìn)行評估。-----------------------------------------------------

  最近幾年來(lái),開(kāi)放式源碼軟件 開(kāi)發(fā)過(guò)程展現出一些令人印象深刻的成功(見(jiàn)附文《開(kāi)放源碼的定義》)。根據2003年12月出版的《Netcraft 萬(wàn)維網(wǎng)服務(wù)器調查報告》(news.netcraft.com)說(shuō),用戶(hù)都使用Apache HTTP服務(wù)器項目—Apache軟件基金會(huì )(www.apache.org )的一個(gè)開(kāi)放式源碼項目作為服務(wù)器來(lái)運行因特網(wǎng)上67%以上的網(wǎng)站。GNU/Linux操作系統(www.linux.org)是另一個(gè)得到廣泛使用和支持的開(kāi)放式源碼軟件項目。Eclipse平臺是正在獲得支持的嵌入式開(kāi)發(fā)工具的一個(gè)開(kāi)放式源碼軟件項目。
  Eclipse這個(gè)開(kāi)放式源碼軟件開(kāi)發(fā)項目,其側重點(diǎn)是建立一個(gè)平臺,用以主控并開(kāi)發(fā)緊密集成的軟件開(kāi)發(fā)工具。在2001年11月捐出4千萬(wàn)美元發(fā)起了Eclipse開(kāi)放源碼項目,用它來(lái)更高效地建立一個(gè)支持最佳工具插件的平臺。IBM繼續是該項目的主要內容提供者,并領(lǐng)導該項目機構。該項目目前正在變成一個(gè)用獨立的管理機構取代領(lǐng)導職責的獨立的實(shí)體。這一轉變更凸顯出該項目的重點(diǎn)是創(chuàng )建一個(gè)全行業(yè)的工具集成平臺。作為這種轉變的一個(gè)部分,該項目的名稱(chēng)也可能會(huì )更改。
  Eclipse項目和SUN公司推動(dòng)的NetBeans項目都是相類(lèi)似的開(kāi)放式源碼項目,兩者均作為Java開(kāi)發(fā)環(huán)境而相互競爭。Sun公司最近正式拒絕加入即將成立的獨立實(shí)體的董事會(huì ),聲稱(chēng)Eclipse項目和NetBeans項目缺乏共同基礎,不能公平分享相互間的開(kāi)發(fā)成果。Eclipse和NetBeans都是基于Java的平臺框架和與語(yǔ)言無(wú)關(guān)的IDE(集成開(kāi)發(fā)環(huán)境)。因為都是基于Java的,所以它們可以在多種硬件和操作系統上運行,其中包括Windows、Linux、Solaris和Mac OSX。兩種IDE均可免費下載,都需要一個(gè)JDK(java開(kāi)發(fā)工具包)1.3版以上的兼容虛擬機,都可立即支持Java開(kāi)發(fā)。另外的語(yǔ)言或開(kāi)發(fā)工具支持,如對C/C++開(kāi)發(fā)的支持,則需要下載另外的插件或模塊。
  Eclipse和NetBeans都允許創(chuàng )建自己的各種工具,這些工具可與IDE集成在一起,并使之擴展,以便支持任何軟件開(kāi)發(fā)功能。工具擴展在NetBeans項目和Eclipse項目中分別稱(chēng)模塊(module)和插件(plug-in)。兩種平臺的插件/模塊接口有所不同,所以插件和模塊互不兼容,兩個(gè)平臺不能進(jìn)行共享。兩個(gè)項目各自使用的跨目標圖形工具包是相互間大不相同的另一個(gè)根源(附文《本源與模仿》)
  NetBeans使用的Swing/AWT(抽象窗口工具包)圖形工具有一種“一次編寫(xiě),隨處運行”的能力。Eclipse項目使用的JFace/SWT(標準界面工具包)具有更好的本機性能以及更好的外觀(guān)與感覺(jué),而目標可移植性有所下降。另一個(gè)重要區別是:Swing使用Java垃圾收集器,而SWT依靠程序來(lái)釋放操作系統資源。這種區別使SWT會(huì )顯露操作系統功能并避免時(shí)序問(wèn)題(從某個(gè)對象成為垃圾到系統完成資源釋放之間),特別是在不同的JVM(Java虛擬機)版本之間。
  嵌入式開(kāi)發(fā)
  Eclipse和NetBeans都非常偏向于企業(yè)軟件開(kāi)發(fā),但使用Eclipse框架進(jìn)行嵌入式開(kāi)發(fā)的集成工具正在出現。Eclipse組織中的成員公司代表了包括企業(yè)的、Linux的以及嵌入式開(kāi)發(fā)的工具開(kāi)發(fā)部分。這些部門(mén)各有不同需求的不同受眾,而平臺工作臺則具有運用于每個(gè)開(kāi)發(fā)部門(mén)的商品化功能。Tensilica公司和WindRiver公司是嵌入系統行業(yè)中最近采用Eclipse平臺的兩家公司。
  Tensilica公司的Xtensa Xplorer IDE將Eclipse平臺用作處理器配置和軟件開(kāi)發(fā)工具。雖然Wind River有Tornado IDE,但該公司官員感到,使用Eclipse框架可以把它的開(kāi)發(fā)資源更多地用于工具功能,而較少地用于商品化架構功能。在公司采用Eclipse的決策中,要考慮的因素是Eclipse與本機平臺的更緊密的集成(從而接近本機性能)以及更能體現本機的外觀(guān)與感覺(jué)。
  Eclipse框架是按CPL(通過(guò)公共許可證)進(jìn)行分發(fā)的,CPL鼓勵對代碼庫的協(xié)同式開(kāi)放源碼開(kāi)發(fā),但也具備足夠的靈活性,可以將代碼與其它許可證下的軟件進(jìn)行集成,包括商用許可證。OSI(開(kāi)放源碼計劃)批準CPL,并可在www.opensource.org網(wǎng)站得到。如果你修改某個(gè)有CPL許可證的程序,如Eclipse代碼庫,并且分發(fā)目標代碼,則你有義務(wù)向他人提供修改后的源碼。如果你只是自己內部使用修改過(guò)的程序,沒(méi)有公開(kāi)發(fā)布這些更改內容,那你就不必向別人提供修改內容。如果你編寫(xiě)與分發(fā)的插件模塊只是與原CPL代碼實(shí)現接口操作,但沒(méi)有對CPL代碼本身作修改,則你也不必讓源碼供公眾使用。
  如果你打算在一個(gè)商用許可證下分發(fā)增值功能,則下列條款就是很重要的:如果插件模塊只與代碼庫接口而不改變代碼庫,則插件模塊就不必是開(kāi)放源碼。這種許可模式可以讓你自由使用Eclipse框架,并以插件形式開(kāi)發(fā)增值功能,而不是使用自己的工具開(kāi)發(fā)資源,在不放棄專(zhuān)有的IP(知識產(chǎn)權)權利的情況下,去建立一個(gè)以功能為中心的開(kāi)發(fā)環(huán)境。
  從零開(kāi)始開(kāi)發(fā)并維護軟件工具可能要付出高昂的代價(jià)。像Eclipse這樣的開(kāi)放源碼項目可以幫助你減少你的工具商品部分的制造與維護費用。你可以把Eclipse平臺的插件架構與CPL條款結合起來(lái),為的是在你代碼的商品部分和專(zhuān)有部分的使用與分發(fā)之間進(jìn)行平衡,從軟件的商品部分獲益,并且為軟件的商品部分作出貢獻,而所花費用則比不使用平臺要低。(見(jiàn)附文《拓展Eclipse》)。然而,并不是所有軟件都是為商品分銷(xiāo)而編寫(xiě)的,內部工具和嵌入式軟件就是兩個(gè)實(shí)例 。隨著(zhù)開(kāi)放源碼軟件的逐漸成熟,以下做法是很有意義的:定期對Eclipse這樣的平臺進(jìn)行評估,看它是否能夠或者如何協(xié)助你以較低的成本開(kāi)發(fā)并維護內部的軟件工具.

本文引用地址:http://dyxdggzs.com/article/8697.htm


關(guān)鍵詞: IBM公司

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>