<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java, Only Java!

    統(tǒng)計(jì)

    留言簿(20)

    積分與排名

    好友空間

    文檔技巧

    閱讀排行榜

    評論排行榜

    《Eclipse精粹》學(xué)習(xí)筆記

    David Carlson著,張欣譯,《Eclipse精粹》,北京:機(jī)械工業(yè)出版社,2006.2

    應(yīng)該說機(jī)械工業(yè)社又為大家提供了一本好書,不過這本書更像是Eclipse的學(xué)習(xí)手冊,使你充分了解Eclipse這個(gè)快速便捷的開發(fā)工具,“工要善其事,必先利其器”,熟悉你的“武器”是件非常重要的事情,但是看過一次之后,下次再打開可能是許多天之后了。因?yàn)樵S多用法只有在開發(fā)過程中體會了,才會感受到好處,還有的需要在開發(fā)中體會那種使用的尺度和感覺,因此我最開始沒覺得這是本好書。為什么會被大力推薦也一直不太明白,可能外國人與我的思維方式不同吧。但是,后來在還書之前又仔細(xì)看了一遍,覺得里面許多精粹的東西還是值得記錄下來,于是就有了這篇學(xué)習(xí)筆記,希望通過簡單地閱讀學(xué)習(xí)筆記可以對Eclipse和精粹這本書有所了解,如果覺得瀏覽過筆記后意猶未盡可以去圖書館借來看,對于我們窮書生這個(gè)不在我推薦購買的行列,不過有錢的兄弟姐妹還是希望支持一下作者,因?yàn)檫@本書的內(nèi)容還是值得一讀。
    讀書筆記中包含有原著中的內(nèi)容,如果作者認(rèn)為侵犯了對方的權(quán)益請與我聯(lián)系,我會將之刪除。

    第一章 Java IDE及其他
    1.1 Eclipse平臺體系結(jié)構(gòu)
    Eclipse是用于創(chuàng)建和部署插件的開發(fā)和運(yùn)行環(huán)境的一種抽象視圖。
    Eclipse是靈活的、可擴(kuò)展的集成開發(fā)環(huán)境(IDE)。
    Eclipse IDE的特點(diǎn):
    ×多平臺。Windows,Linux(motif和GTK),Solaris,AIX,HP-UX和Mac OSX。
    ×多語言。采用Java語言開發(fā),支持Java、C/C++和Cobol編寫應(yīng)用程序,還支持Python、Perl、PHP和其他語言。插件必須用Java編寫。
    ×多角色。支持建模、測試、編寫程序和網(wǎng)頁及許多其他角色。

    1.1.1 Eclipse運(yùn)行時(shí)平臺
    核心運(yùn)行平臺提供如下最基本的服務(wù):
    ×插件注冊。裝載插件并管理可用插件的注冊表信息。
    ×資源。管理操作系統(tǒng)文件和文件夾的獨(dú)立于平臺的容器,包括鏈接資源的位置。
    ×UI組件。用戶界面組件是以SWT和JFace庫為基礎(chǔ)。
    ×更新工具。對安裝和更新來自URL可建起位置的插件具有內(nèi)置的支持。
    ×幫助工具。共享一個(gè)通用的幫助工具。
    Java開發(fā)工具(JDT)是Eclipse SDK中唯一的程序設(shè)計(jì)語言插件。基本功能:編輯器,大綱,內(nèi)容助手,模板,模式程序,Java視圖,項(xiàng)目配置,調(diào)試器。
    C/C++開發(fā)工具(C/C++ Development Tools,CDT)是Eclipse平臺的C/C++開發(fā)工具。目前只能用于Linux平臺。
    插件開發(fā)環(huán)境(PDE)提供的工具可以自動化插件的創(chuàng)建、操作、調(diào)試和部署操作,是Eclipse SDK的一部分。
    Web工具平臺(Web Tools Platform,WTP)由Eclipse委員會由2004年6月正式批準(zhǔn),吸收了來自IBM和Object Web的開源代碼。
    Web標(biāo)準(zhǔn)工具(Web Standard Tools,WST)子項(xiàng)目為啟用Web的應(yīng)用程序提供一般的基礎(chǔ)構(gòu)造。提供的工具:標(biāo)準(zhǔn)語言(HTML/XHTML/XML...),編輯器(支持標(biāo)準(zhǔn)語言),驗(yàn)證器,服務(wù)器發(fā)布(多個(gè)目標(biāo)服務(wù)器上啟動、停止、發(fā)布和運(yùn)行應(yīng)用程序命令和窗口)。
    J2EE標(biāo)準(zhǔn)工具子項(xiàng)目為J2EE應(yīng)用服務(wù)器開發(fā)基于J2EE 1.4規(guī)范的應(yīng)用程序提供了公用的基礎(chǔ)構(gòu)造。提供的工具:J2EE工具(EJB、Servlet、JSP、JCA、JDBC、JTA、JMS、JMX、JNDI和Web Services),JSP編輯器,JSP重構(gòu)工具,搜索工具,語法對比。

    1.1.3 多功能客戶平臺
    Eclipse多功能客戶平臺(Rich Client Platform,RCP)的著名之處在于它不能做什么,而不是能做什么。只能用于構(gòu)造任何客戶應(yīng)用程序?;A(chǔ)仍然是動態(tài)插件模型,UI是用同樣的工具箱和擴(kuò)展點(diǎn)構(gòu)造的。

    1.2. 其他Eclipse項(xiàng)目
    ×圖形編輯器框架(GEF)。用已有的應(yīng)用程序模型創(chuàng)建多功能圖形編輯器。
    ×Eclipse建??蚣埽‥MF)。用于構(gòu)造工具和其他基于結(jié)構(gòu)化數(shù)據(jù)模型的應(yīng)用程序的建??蚣芎痛a生成工具。
    ×可視化編輯器(VE)。創(chuàng)建GUI構(gòu)造程序的框架,包括Swing/JFC和SWT GUI構(gòu)造程序的引用實(shí)現(xiàn)。
    ×UML 2.實(shí)現(xiàn)了UML 2.0元模型,支持建模工具的開發(fā),支持通用的XML模式以簡化語義模型的交互,支持測試用例以用作驗(yàn)證規(guī)約的方式,還支持驗(yàn)證規(guī)則以用作定義兼容性并對其強(qiáng)制分層的方式。
    ×XML模式信息集(XSD)。檢驗(yàn)、創(chuàng)建或修改XML械(單獨(dú)的或像XForms和WSDL文檔這樣的工具的一部分)的代碼的引用庫。XSD是獨(dú)立的技術(shù)子項(xiàng)目,通常作為EMF的一部分下載。
    ×服務(wù)數(shù)據(jù)對象(SDO)。簡化和統(tǒng)一面向服務(wù)體系結(jié)構(gòu)(SOA)中的數(shù)據(jù)應(yīng)用程序開發(fā)的框架。
    ×Eclipse測試和性能分析。用于整個(gè)開發(fā)周期(如測試、跟蹤/配置、調(diào)整、記錄、監(jiān)控、分析、自治和管理)使用的測試和性能分析工具的框架和服務(wù)。
    ×商業(yè)智能和制表工具(BIRT)。用于在公司內(nèi)設(shè)計(jì)、部署、生成和閱讀報(bào)表的基礎(chǔ)結(jié)構(gòu)和工具。

    1.5 精粹
    ×Eclipse平臺的功能體系結(jié)構(gòu)由構(gòu)造模塊構(gòu)成,它們能給核心的運(yùn)行時(shí)平臺添加新特性。有幾百個(gè)Eclipse子項(xiàng)目和獨(dú)立的開源產(chǎn)品或商業(yè)產(chǎn)品構(gòu)造在這個(gè)平臺之上。
    ×提供了一般的IDE支持,這個(gè)IDE可針對Java、C/C++、Web工具和其他開發(fā)活動進(jìn)行專用化。一般的IDE是一個(gè)面向小組的工作平臺,支持多視圖、窗口、搜索工具、調(diào)試等操作。
    ×Java開發(fā)工具(JDT)為配置Java項(xiàng)目提供了支持,為編輯和調(diào)試操作提供了多功能環(huán)境。
    ×從Eclipse的Web站點(diǎn)或其他獨(dú)立的項(xiàng)目可以得到支持其他語言(如C/C++)的插件。
    ×Web工具平臺(WTP)項(xiàng)目是Eclipse家庭的最新成員,它將為J2EE和以Web為中心的應(yīng)用程序開發(fā)提供可擴(kuò)展的、基于標(biāo)準(zhǔn)的平臺。
    ×Eclipse提供了一個(gè)支持并能回事迭代式敏捷開發(fā)周期的開發(fā)平臺。該平臺具有持續(xù)測試、重構(gòu)、持續(xù)集成、集體所有權(quán)和編碼標(biāo)準(zhǔn)等專用特征。

    1.6 參考文獻(xiàn)
    Beck, Kent, Extreme Programming Explained: Embracng Change. Boston, MA: Addison-Wesley, 1999.
    Budinsky, Frank, et al., Eclipse Modeling Framework. Boston, MA: Addison-Wesley, 2004.
    Clayberg, Eric, and Rubel, Dan, Eclipse: Building Commercial-Quality Plug-ins. Boston, MA:Addison-Wesley, 2004.
    Gamma, Erich and Beck, Kent, Contributing to Eclipse: Principles, Patterns, and Plug-ins. Boston, MA:Addison-Wesley, 2004.

    第二章 Eclipse,你好
    2.1 安裝與啟動
    四類Eclipse下載:
    ×最新正式版。開發(fā)組宣布為主要版本的軟件,使用穩(wěn)定的、測試過的版本,不需要最新的重要特性和改進(jìn),合適的選擇。
    ×穩(wěn)定版。已經(jīng)證實(shí)對大多數(shù)用戶來說都足夠穩(wěn)定的集成版。以重要的項(xiàng)目里程碑式的版本為基礎(chǔ)。想與最新的開發(fā)進(jìn)展保持同步,使用最新特征和修正Bug,不介意遇到一些問題,可以選擇。
    ×集成版。周期性地得到確認(rèn)的穩(wěn)定、狀態(tài)一致的組件,下個(gè)穩(wěn)定版將會采用的版本,只有高級Eclipse用戶才推薦使用。
    ×每夜編譯版。每天夜晚發(fā)布到CVS儲存庫的HEAD流的版本生成的。完全沒有經(jīng)過測試,幾乎一定會有重大問題。
    啟動Eclipse前必須安裝Java JDK。啟動Eclipse時(shí),可以使用-vm選項(xiàng)指定使用的JVM。
    eclipse.exe -showlocation -vm c:\jdk\bin\javaw.exe -vmargs -Xmx256M

    2.5 精粹
    ×由于Eclipse是開源項(xiàng)目,所以可以看到正在進(jìn)行開發(fā)的版本。新手不建議使用每夜編譯版和集成版。
    ×Eclipse啟動時(shí)默認(rèn)顯示Resource透視圖,大多數(shù)開發(fā)工作需要切換到Java透視圖。
    ×使用Java透視圖的向?qū)С绦蚩梢詣?chuàng)建新的項(xiàng)目、新的包和新的類文件。
    ×定制用于給新Java文件插入代碼的代碼生成模板。
    ×在Eclipse工作臺中運(yùn)行應(yīng)用程序,使用Console視圖難容命令行式的輸入和輸出。

    第三章 管理項(xiàng)目
    3.1 項(xiàng)目工作空間
    在運(yùn)行Eclipse遇到問題時(shí),可以查看當(dāng)前工作空間中的.metadata文件夾下的.log文件,如果.log文件太大可以刪除。還可查看.lock文件,如果Eclipse無法正常啟動,可以刪除.lock文件,但是正常情況下不要刪除。
    需要多個(gè)工作空間的原因:
    ×獨(dú)立的工作主題,可能由不同的版本控制儲存庫管理
    ×顧問需要明確區(qū)分開客戶的資源。
    ×區(qū)別維護(hù)CVS中的分支版本的并發(fā)工作。

    3.2.1 項(xiàng)目
    項(xiàng)目的特性:
    ×把一組文件和文件夾組織在一起。
    ×所在的位置決定了項(xiàng)目資源在本地文件系統(tǒng)中存放的位置。
    ×構(gòu)造規(guī)約決定了如何構(gòu)造它的資源。
    ×可以具有臨時(shí)屬性,也可以具有永久屬性。
    ×可以是開放的,也可以是關(guān)閉的;關(guān)閉的項(xiàng)目是被動的,具有最小的內(nèi)存分配。
    ×可以引用其他項(xiàng)目。
    ×可以屬于一個(gè)或多個(gè)項(xiàng)目類。

    3.2.2 鏈接資源的位置
    可以把部分Eclipse工作環(huán)境映射到文件系統(tǒng)中不相關(guān)的位置,因?yàn)椋?br />×加入存儲到項(xiàng)目之外的配置或類文件目錄。
    ×滿足與Eclipse一起使用的工具要求采用固定的文件位置的要求。
    ×引用存放資源或庫文件的共享網(wǎng)絡(luò)驅(qū)動器單元。
    ×引用文件系統(tǒng)中安裝的其他產(chǎn)品。

    路徑變量提供的支持:
    ×在定義多個(gè)具有共同根目錄的鏈接資源時(shí),提供了對絕對路徑的統(tǒng)一引用。
    ×通過改變一個(gè)變量,可以重定義多個(gè)資源的位置。
    ×無需更新每個(gè)資源的路徑,用戶就能共享具有鏈接資源的項(xiàng)目。

    3.4 精粹
    ×工作空間提供了一級相關(guān)的項(xiàng)目需要的所有資源的完整透視圖。
    ×Eclipse資源提供了文件和文件夾獨(dú)立于平臺的邏輯透視圖,但是,如果這些資源在Eclipse工作平臺之外發(fā)生了變化,那么它們必須與文件系統(tǒng)保持一致。
    ×一個(gè)Java項(xiàng)目包括源文件夾和輸出文件夾(最好分開旋轉(zhuǎn))。項(xiàng)目自動配置有一個(gè)漸增構(gòu)造程序,會把所有源文件構(gòu)造到輸出文件夾。非Java項(xiàng)目不包括漸增構(gòu)造程序,但除了這點(diǎn)之外,可以同樣的方式安排項(xiàng)目文件夾。
    ×可以把部分Eclipse工作空間的分層用鏈接資源地址映射到文件系統(tǒng)中不相關(guān)的位置。在與對文件位置有特殊要求的產(chǎn)品或開發(fā)工具一起使用Eclipse時(shí),這點(diǎn)尤其重要。
    ×用多個(gè)項(xiàng)目配置一個(gè)應(yīng)用程序會帶來長期好處,能提高獨(dú)立模塊的可重用性。項(xiàng)目依賴性控制了交叉項(xiàng)目導(dǎo)入的類的可視性。

    第四章 定制工作平臺
    4.1 透視圖
    透視圖定義了一級Eclipse視圖和動作集合,被組織成一種布局,適合一般用戶用來完成賦予該透視圖的任務(wù)。用戶可以使用默認(rèn)透視圖,還可以創(chuàng)建和保存專有透視圖。還可以將當(dāng)前透視圖恢復(fù)到默認(rèn)的視圖和布局。

    4.2 工作平臺視圖
    常用的視圖如下:
    ×Navigator。當(dāng)前工作空間中的項(xiàng)目、文件夾和文件的通用視圖;用于任何透視圖。
    ×Properties。由工作平臺的插件定制,顯示和編輯資源或?qū)ο蟮拿郑祵傩?。它會隨著別的視圖的改變而變化。
    ×Outline。由插件定制,顯示資源內(nèi)容的結(jié)構(gòu)圖。
    ×Problems。顯示資源中發(fā)現(xiàn)的問題的列表。
    ×Tasks。顯示要執(zhí)行的任務(wù)的列表,每個(gè)任務(wù)還有資源引用和行數(shù)。
    ×Bookmarks。顯示用于快速引用和定位文件中的特定行的書簽。
    ×Search。顯示搜索工作空間的結(jié)果。

    4.2.2 窗口布局
    Eclipse支持移動窗口位置,顯示在主工作平臺之外的獨(dú)立窗口,設(shè)置成快速窗口,并且可以記憶自己的位置。

    4.4.1 首選項(xiàng)設(shè)置的作用域
    ×Configuration。設(shè)置將被保存在Eclipse安裝目錄中,由所有的工作空間實(shí)例共享。
    ×Workspace Instance。每個(gè)工作空間實(shí)例定義的,由它的所有項(xiàng)目共享。
    ×Project。僅適用于項(xiàng)目本身。

    4.6 精粹
    ×不要局限于一個(gè)透視圖,要把所有的工作售中在一組視圖中。利用多個(gè)透視圖,把它們組織起來,發(fā)揮它們的最大生產(chǎn)力來完成一組相關(guān)的任務(wù)。創(chuàng)建或定制透視圖來滿足你的需求。
    ×探討Eclipse中可用的專門視圖。使用一個(gè)合適的視圖或一組視圖可以顯著地提高你的生產(chǎn)力。
    ×用Package Explorer視圖和標(biāo)記視圖(Problems、Tasks和Bookmarks)中的過濾器可以解決信息過多的問題。
    ×使用Eclipse個(gè)人化,以適應(yīng)你的風(fēng)格和工作。與你使用其他編輯器或IDE的習(xí)慣相匹配,探討Eclipse中的更多選項(xiàng)。
    ×導(dǎo)出首選項(xiàng),共享項(xiàng)目設(shè)置,可以與所有成員共享你最好的實(shí)踐經(jīng)驗(yàn)和小組標(biāo)準(zhǔn)。

    第五章 快速開發(fā)
    5.4 使用快速修正
    可以使用快速修正的示例:
    ×刪除未使用的、未解析的或看不到的import語句。
    ×為項(xiàng)目中存在但不能解析的類型添加一個(gè)impor語句。
    ×為不能解析的方法簽名引用創(chuàng)建一個(gè)新方法。
    ×如果方法遺漏了return語句,則添加該語句。
    ×用try/catch塊封裝一個(gè)方法調(diào)用或給現(xiàn)有的try塊添加一個(gè)catch塊,處理未捕捉到的異常。
    ×當(dāng)異常沒有在它的try塊中拋出時(shí),刪除不必要的catch塊。

    5.7 精粹
    ×Outline視圖顯示的是當(dāng)前Java編輯器中所有域、方法和內(nèi)部類的列表;選項(xiàng)會與編輯器的定位保持一致。
    ×用F3和Ctrl+F3為引用的類型和方法打開一個(gè)新的編輯器,可以分析不熟悉的Java類庫。
    ×用內(nèi)容助手可以插入類型和變量名或者在輸入時(shí)完成方法,從而能夠加速開發(fā)。
    ×配置源代碼文件,獲取在懸浮幫助和內(nèi)容助手列表中顯示的詳細(xì)Javadoc信息。
    ×用源代碼模板插入常用的編碼模式(如for循環(huán)、switch語句或try/catch塊),并導(dǎo)引你填寫模式中的信息。定制或創(chuàng)建新的模板以適應(yīng)你的需要和風(fēng)格。
    ×快速修正為常見的編譯錯誤(如未捕捉到拋出的異常)提供了修改建議,并能自動糾錯。
    ×為類中選定的域生成獲取器和設(shè)置器方法。定制方法模板,例如在所有設(shè)置器方法中加入記錄日志的操作或改變通知。
    ×用Hierarchy視圖可以分析Java代碼中的類型分層,并能迅速在其中定位,這些分層由類擴(kuò)展的類、接口擴(kuò)展的接口和類實(shí)現(xiàn)的接口構(gòu)成。

    第六章 Java項(xiàng)目配置
    6.1 Java構(gòu)造路徑
    Java Build Path的四個(gè)標(biāo)簽:
    ×Source。源文件夾和輸出文件夾。建議采用分離的源文件夾和輸出文件夾,可以使用多個(gè)源文件夾。
    ×Projects。加入該構(gòu)造路徑的其他項(xiàng)目。
    ×Libraries。項(xiàng)目需要的其他檔案文件的位置。
    ×Order and Export。項(xiàng)目和庫出現(xiàn)在構(gòu)造路徑和默認(rèn)的運(yùn)行時(shí)類路徑中的順序。

    6.5 精粹
    ×每個(gè)Java項(xiàng)目都有一個(gè)構(gòu)造,用于編譯源文件中的獎,把結(jié)果存放到輸出文件夾。簡單項(xiàng)目沒有構(gòu)造程序,其他項(xiàng)目類型則可以添加相關(guān)的構(gòu)造程序,把合適的編譯器或轉(zhuǎn)換工具應(yīng)用到文件上。
    ×項(xiàng)目是自動構(gòu)造的;只要保存,就會自動應(yīng)用構(gòu)造程序。對于Java項(xiàng)目,構(gòu)造程序使用工作空間首選項(xiàng)中配置的或項(xiàng)目重載的Java編譯器設(shè)置。
    ×Java項(xiàng)目的Java構(gòu)造路徑定義了構(gòu)造或運(yùn)行項(xiàng)目時(shí),應(yīng)用把工作空間中的哪些項(xiàng)目和哪些JAR文件加入類路徑。
    ×用戶庫是定義聯(lián)合使用的一組相關(guān)JAR文件的便捷方法。
    ×當(dāng)?shù)谌降腏AR文件存放在外部目錄中時(shí),可以使用混合的配置。這些檔案中的一部分被打包在一個(gè)或多個(gè)用戶庫中,在Eclipse中,用簡單項(xiàng)目和鏈接文件益可以輕松地訪問所有檔案。

    6.6 參考文獻(xiàn)
    Apache Log4j is an open source logging facility available at http://jakarta.apache.org/log4j/.
    Apache Axis is an open source Web Services development tolkit available at http://ws.apache.org/axis/.

    第七章 調(diào)試代碼
    7.1 啟動調(diào)試對話
    單步調(diào)試執(zhí)行
    ×Resume。繼續(xù)執(zhí)行線程,直到它結(jié)束或遇到斷點(diǎn)為止。
    ×Suspend。掛起一個(gè)正在執(zhí)行的線程。
    ×Terminate。終止Java VM。
    ×Step Into。跟蹤進(jìn)入下一個(gè)要執(zhí)行的方法。會增加一個(gè)棧幀。
    ×Step Over。結(jié)束當(dāng)前行的執(zhí)行,在下一個(gè)可執(zhí)行的行處掛起。
    ×Step Return。從當(dāng)前方法中跳出。
    ×Run to Line。繼續(xù)執(zhí)行到選中的行。
    ×Use Step Filters。當(dāng)切換到這個(gè)命令時(shí),所有調(diào)試命令都將應(yīng)用Java>Debug>Step Filtering首選項(xiàng)頁中定義的調(diào)試過濾器。

    7.5 精粹
    ×Debug稱之為具有幾個(gè)專用于調(diào)試的視圖:Debug視圖用于查看運(yùn)行的線程以及它們掛起時(shí)的棧幀;Variables、Expressions和Display視圖用于查看對象狀態(tài);Breakpoints視圖用于管理代碼中的所有斷點(diǎn)的列表。
    ×當(dāng)運(yùn)行到一個(gè)斷點(diǎn)時(shí),有幾種選擇,可以繼續(xù)執(zhí)行或終止線程,或者逐句地單步調(diào)試程序。
    ×Variables視圖顯示了Debug視圖中選定的棧幀的域、局部變量和方法參數(shù)。棧幀為這些變量提供了執(zhí)行環(huán)境。
    ×可以執(zhí)行顯示、檢查或更新程序狀態(tài)的代碼段。在調(diào)試對話期間,彈出式窗口可用來顯示或檢查在Java編輯器內(nèi)選定的表達(dá)式。
    ×可以指派Detail Formatter,定義一個(gè)定制的輸出字符串,用于顯示調(diào)試過程中類的值。該格式程序會覆蓋這個(gè)類的toString()方法。
    ×用Hot Code Replace可以在調(diào)試對話中修改代碼,而無需重啟Java VM,從而給實(shí)驗(yàn)性開發(fā)提供了便利。
    ×Java調(diào)試器的客戶/服務(wù)器設(shè)計(jì)允許你從網(wǎng)絡(luò)上的計(jì)算機(jī)啟動Java程序,然后在你的工作站上運(yùn)行的Eclipse調(diào)試它。

    第八章 敏捷開發(fā)的特征
    8.1 敏捷宣言(agile manifesto)http://www.agilemanifesto.org/http://www.agilealliance.org/
    宣言包括12項(xiàng)準(zhǔn)則,大致分為兩類:程序員授權(quán)和迭代式開發(fā)。
    ×業(yè)務(wù)與開發(fā)必須在整個(gè)項(xiàng)目的開發(fā)過程中一起工作。
    ×最后的體系結(jié)構(gòu)、需求和設(shè)計(jì)都是從自組的小組中產(chǎn)生的。
    ×每隔兩個(gè)星期或兩個(gè)月就交付一次可運(yùn)行的軟件,時(shí)間間隔越短越好。
    ×可運(yùn)行的軟件是進(jìn)度的首要度量指標(biāo)。
    ×采用優(yōu)秀的技術(shù)和好的設(shè)計(jì)可以提高敏捷性。

    敏捷開發(fā)以兩種計(jì)劃為基礎(chǔ):
    ×粗略計(jì)劃:階段或發(fā)布計(jì)劃。
    ×一系列周密計(jì)劃:迭代計(jì)劃。

    8.4 精粹
    ×敏捷軟件開發(fā)是一組相關(guān)方法的通稱,強(qiáng)調(diào)使程序員能夠自組小組,與客戶緊密協(xié)作,使用迭代式開發(fā)周期,由開發(fā)者進(jìn)行持續(xù)單元測試與集成。
    ×項(xiàng)目由兩級的計(jì)劃指導(dǎo)開發(fā),即粗略發(fā)布計(jì)劃和周密迭代計(jì)劃。
    ×Eclipse提供了支持和能夠加速敏捷開發(fā)周期的開發(fā)平臺,還可以通過插件進(jìn)行徹底不同的定制。
    ×有5項(xiàng)敏捷開發(fā)準(zhǔn)則與程序設(shè)計(jì)相關(guān),即測試、重構(gòu)、持續(xù)集成、集成所有和編碼標(biāo)準(zhǔn)。

    8.5 參考文獻(xiàn)
    Beck, Kent, Extreme Programming Explained: Embracng Change. Boston, MA: Addison-Wesley, 1999.
    Fowler, Martin, Refactoring: Improving the Design of Existing Code, Reading, MA:Addison-Wesley, 1999.
    Highsmith, James. A., Adaptive Software Development: A Collaborative Approach to Managing Complex Systems. Dorset House, 2000.
    Kruchten, Phillippe, The Rational Unified Process: An Introduction, Third Edition. Boston, MA: Addison-Wesley, 2004.
    Leffingwell, Dean and Muirhead, Dave, Tactical Management of Agile Development: Achieving Competitive Advantage, Rally Software Development, Boulder, CO, 2004. This white paper is available from http://www.rallydev.com/.
    Schwaber, Ken and Beedle, Mike, Agile Software Development with Scrum. Prentice Hall, 2001.

    第九章 更新Eclipse IDE
    9.1 查找和安裝特征
    Eclipse特征:就是把構(gòu)成Eclipse產(chǎn)品的相關(guān)功能集合在一起并描述它們的方法。
    Eclipse平臺自身被劃分為三個(gè)主要特性:平臺、JDT、PDE。
    特性定義并不包括代碼自身,它們只是把一個(gè)或多個(gè)相關(guān)插件或嵌套特性打包。組織特性的目的是為了頒發(fā)和更新產(chǎn)品,而組織插件的目的是幫助產(chǎn)品小組開發(fā)產(chǎn)品的功能。
    特性會被看作普遍可移植的。特性還提供了說明、許可和版權(quán)信息。

    9.4 精粹
    ×Product Configuration對話框列出了所有的安裝路徑和每個(gè)路徑下的所有特性。當(dāng)安裝的插件沒有特性定義時(shí),它們不會出現(xiàn)在配置列表中。
    ×About Eclipse Platform對話框包括一個(gè)按鈕,能夠列出工作平臺中啟用的所有插件,它們是否被打包成了某種特性的一部分。
    ×可以為用于檢索新的或更新特性的遠(yuǎn)程或本地站點(diǎn)添加書簽。
    ×應(yīng)該把新特性安裝到擴(kuò)展路徑中,而不是安裝在Eclipse的主產(chǎn)品路徑中。這樣即使以后刪除并再安裝了Eclipse,也不會丟失第三方插件。
    ×許多插件并沒有特性定義或更新站點(diǎn)。不要像通常所做的那樣把它們的ZIP文件解壓縮到Eclipse的主plugins目錄中,而是解壓縮到允許你啟用和禁用這些插件的擴(kuò)展目錄中。
    ×當(dāng)你的防火墻使用了代理服務(wù)器時(shí),需要首選項(xiàng)設(shè)置,用更新策略文件可以把特性的URL重定向到一個(gè)本地緩存站點(diǎn)。

    9.5 擴(kuò)展
    ×Eclipse.org的社區(qū)主頁上列出了許多可用的資源。http://www.eclipse.org/community
    ×Eclipse插件中心(Eclipse Plug-in Central)是Eclipse系統(tǒng)的信息入口和交流場所。http://www.eclipseplugincentral.com/
    × http://www.eclipse-plugins.info/ 有分類的插件注冊表。

    第十章 用JUnit進(jìn)行持續(xù)測試
    10.1 選擇測試策略
    編寫測試要:
    ×說明將要編寫的代碼的預(yù)期結(jié)果。
    ×說明Bug報(bào)告的修正操作。
    編寫測試的收益:
    ×幫助你為還未編寫的類型定義API。
    ×幫助你理解新的復(fù)雜的API,或者確認(rèn)你對它的理解。
    ×驗(yàn)證從另一個(gè)小組或銷售商處得到的庫的正確操作。
    ×驗(yàn)證由代碼生成器生成的類的預(yù)期結(jié)果。

    10.5 精粹
    ×Junit支持許多不同的單元測試策略,包括首次測試處理和編寫驗(yàn)證對第三方API的理解的單元測試。
    ×Junit測試包含在一種復(fù)合結(jié)果中??梢赃\(yùn)行整個(gè)測試組,也可以運(yùn)行一部分。運(yùn)行的最小單位是一個(gè)測試方法。
    ×組織測試時(shí)推薦的方法有兩種,即在項(xiàng)目中創(chuàng)建第二個(gè)源文件夾,或者創(chuàng)建一個(gè)測試專用的項(xiàng)目。必須在被測試的類所在的包中編寫測試用例,這樣測試才能夠訪問保護(hù)的方法和包保護(hù)的方法。
    ×JUnit Test Case向?qū)С绦蚰軌驗(yàn)橐帉懙臏y試生成具有方法存根的類模板,從而加速了開發(fā)。
    ×每當(dāng)測試失敗時(shí),JUnit窗口會自動出現(xiàn),能幫助你快速地識別導(dǎo)致失敗的代碼行,并且對比預(yù)期的結(jié)果和實(shí)際的結(jié)果。

    10.6 擴(kuò)展
    ×HttpUnit。在測試Web應(yīng)用程序時(shí),需要繞過瀏覽器,從程序中訪問你的站點(diǎn)。HttpUnit模擬了瀏覽器行為的相關(guān)部分,包括表單提交、JavaScript、基本的HTTP驗(yàn)證、cookie和自動頁面重定向,從而簡化了這一操作,還允許測試代碼驗(yàn)證返回的頁面。http://www.httpunit.org/
    ×Cactus。測試服務(wù)器端的Java代碼(Servlet、EJB、Tag Libs、Filters)的框架。http://jakarta.apache.org/cactus
    ×DbUnit。編寫使用關(guān)系數(shù)據(jù)庫數(shù)據(jù)的測試所用的框架。框架使用的是XML數(shù)據(jù)集(數(shù)據(jù)表的集合),在每次測試之前和之后都執(zhí)行數(shù)據(jù)庫操作,以確保數(shù)據(jù)庫的內(nèi)容處于已知狀態(tài)。http://www.dbunit.org/

    10.7 參考文獻(xiàn)
    JUnit home page, http://www.junit.org/.
    Fowler, Martin, Refactoring, Chapter 4, Building Tests. Reading, MA:Addison-Wesley, 1999.
    Graham, Steve, et al. Building Web Services with Java, Second Edition. Pearson Education, 2004.
    Massol, Vincent. JUnit in Action. Greenwich, CT: Manning, 2004.

    第11章 重構(gòu)代碼
    11.4 精粹
    ×重構(gòu)操作使軟件更易于理解,修改更容易,為下次迭代開發(fā)做好準(zhǔn)備,但不改變當(dāng)前行為。
    ×要確定程序的行為是否被重構(gòu)操作改變,唯一的方法就是在重構(gòu)操作前后都完整地運(yùn)行一次JUnit測試組。沒有采用單元測試來驗(yàn)證操作的重構(gòu)操作風(fēng)險(xiǎn)非常高。
    ×在重構(gòu)操作前后都要把代碼提交給儲存庫,以便為回滾操作建立一個(gè)已知狀態(tài)。
    ×通常對于一個(gè)序列會應(yīng)用幾種不同的重構(gòu)操作,以實(shí)現(xiàn)一個(gè)復(fù)雜的任務(wù)。
    ×通過預(yù)覽重構(gòu)操作的結(jié)果,可以省略一些改變,如果整個(gè)操作不能實(shí)現(xiàn)你的預(yù)期目標(biāo),還可以取消整個(gè)操作。
    ×重構(gòu)操作可以更新對改變過的元素的引用,與通過搬運(yùn)操作來實(shí)現(xiàn)同樣的改變相比,這樣可以節(jié)省大量時(shí)間。
    ×Eclipse中的所有重構(gòu)操作是根據(jù)你的重構(gòu)活動中的一般任務(wù)來分類的。

    第12章 用Ant進(jìn)行持續(xù)集成
    12.6 精粹
    ×持續(xù)集成使許多項(xiàng)目免受常規(guī)的Java項(xiàng)目配置之苦。所有源文件在保存時(shí)都會被自動編譯,唯一要做的就是完成單元測試。
    ×利用Ant構(gòu)造文件補(bǔ)充默認(rèn)的Java構(gòu)造器通??梢詽M足非常規(guī)的構(gòu)造需求。Ant是可擴(kuò)展的構(gòu)造工具,它的功能可以緊密地集成到Eclipse工作平臺上。
    ×Ant構(gòu)造文件編輯器與Java編輯器有許多共性。
    ×Ant的工作平臺首選項(xiàng)包括運(yùn)行時(shí)配置,在此可以把額外的JAR文件加入運(yùn)行構(gòu)造文件采用的類路徑。
    ×每個(gè)構(gòu)造文件還可以有自己的運(yùn)行時(shí)配置,能夠覆蓋或擴(kuò)展默認(rèn)的配置。
    ×可以把Ant構(gòu)造文件配置為在項(xiàng)目資源修改后就自動運(yùn)行。
    ×一個(gè)完整的項(xiàng)目構(gòu)造文件將編譯所有的源文件,編譯并運(yùn)行所有的JUnit測試,準(zhǔn)備Unit結(jié)果的HTML報(bào)告,以及生成Javadoc的API文檔。構(gòu)造文件既可以在Eclipse中運(yùn)行,也可以作為自動持續(xù)構(gòu)造處理的一部分,在單獨(dú)的構(gòu)造機(jī)上獨(dú)立運(yùn)行。

    12.7 擴(kuò)展
    PMD可以協(xié)助靜態(tài)分析Java代碼。這個(gè)工具既可以作為Eclipse的插件,也可以是一個(gè)Ant任務(wù)。
    http://pmd.sourceforge.net/index.html處可以下載Eclipse的PMD插件。

    12.8 參考文獻(xiàn)
    Hatcher, Erik and Loughran, Steve. Java Development with Ant. Greenwich, CT:Manning, 2003.
    Massol, Vincent. JUnit in Action, Chapter 5 Automating Junit. Greenwich, CT: Manning, 2004.
    Copeland, Tom. Static Analysis with PMD. See http://www.onjava.com/pub/a/onjava/2003/02/12/static_analysis.html

    第13章 用CVS實(shí)現(xiàn)小組所有權(quán)
    13.7 精粹
    ×Eclipse具有通用的小組API,支持資源控制儲存庫的客戶端。它包括完整的CVS客戶端。
    ×CVS使用樂觀模型協(xié)調(diào)小組成員之間的工作。如果采用的工作流能使你保持具有CVS的最近更新,能頻繁地與儲存庫進(jìn)行同步化操作,當(dāng)發(fā)生沖突的時(shí)候能解決它們,這樣才能最好地工作。
    ×在CVS Respository Exploring透視圖中可添加CVS儲存庫的路徑,瀏覽可用的模塊。
    ×在共享項(xiàng)目時(shí),加入配置文件,如.project和.classpath文件,這樣可以使其他成員提取完整的Eclipse項(xiàng)目定義。
    ×還要在CVS中共享第三方的庫和全局工作空間首選項(xiàng)設(shè)置,使小組成員能夠提取出所有必要的依賴性。
    ×所謂同步化,就是把更新、提交和解決工作空間及儲存庫之間沖突的活動綁定起來。Team Synchronizing透視圖支持所有這些活動。
    ×用Compare Editor可以瀏覽所有即將進(jìn)入和出去的改變,對于合并版本沖突至關(guān)重要。
    ×把一個(gè)CVS版本標(biāo)志賦予儲存庫中的一組文件即可創(chuàng)建一個(gè)項(xiàng)目版本。此后可以提供出所有具有相同標(biāo)志的相關(guān)文件。
    ×創(chuàng)建一個(gè)分支標(biāo)志和創(chuàng)建一個(gè)版本類似,只是以后學(xué)要把來自分支的改變合并回主HEAD流(主干)中。
    ×使用CVS補(bǔ)丁,可以在CVS服務(wù)器不能用或者你沒有提交權(quán)限時(shí)與他人交換項(xiàng)目的改變。

    13.8 擴(kuò)展
    http://www.eclipse.org/community/index.html

    13.9 參考文獻(xiàn)
    Bar, Moshe, and Fogel, Karl. Open Source Development with CVS, 3rd Edition. Scottsdal, AX: Paraglyph Press, 2003. Available for free download in HTML and PDF formats at http://cvsbook.red-bean.com/.
    Concurrent Versions System(CVS) Web site, http://www.cvshome.org/.
    CVS for the Windows NT Platform, http://www.cvsnt.org/.
    Cederqvist, Per. Version Management with CVS. http://www.cvshome.org/docs/manual
    CVS User's Guide, http://www.loria.fr/~molli/cvs/docs/cvs_toc.html
    Glezen, Paul. Branching with Eclipse and CVS. IBM, 2003. http://www.eclipse.org/articles/Article-CVS-branching/eclipse_branch.thml
    Vesperman, Jennifer. Essential CVS. O'Reilly, 2003.

    第14章 編碼標(biāo)準(zhǔn)
    Eclipse項(xiàng)目導(dǎo)引由三部分構(gòu)成:
    ×命名規(guī)約。如何命名包、類、方法、變量和常量。
    ×編碼規(guī)約。關(guān)于聲明、語句、代碼中的縮進(jìn)、空格,以及其他影響源代碼的理解、重用和調(diào)試源代碼的程序設(shè)計(jì)樣式的一致規(guī)約。
    ×Javadoc注釋。如何編寫文檔注釋,這些注釋對公共API尤其重要。
    Sun Microsystems的文檔《Code Conventions for the Java Programming Language》常被用來作為軟件開發(fā)的基礎(chǔ)。
    為什么需要編碼規(guī)約?
    ×在軟件的生命周期中,80%的時(shí)間都用于維護(hù)。
    ×在軟件整個(gè)生命周期中,都由原始作者對它進(jìn)行維護(hù)幾乎是不可能的。
    ×在編碼規(guī)約提高了軟件的質(zhì)量和可讀性,使工程師能夠迅速全面地理解新代碼。

    14.3 精粹
    ×對于敏捷開發(fā)小組的成員協(xié)作以及軟件的長期維護(hù)來說,編碼標(biāo)準(zhǔn)非常重要。這些標(biāo)準(zhǔn)包括命名、編碼樣式和Javadoc注釋的規(guī)約。
    ×Eclipse工具可減少與這些標(biāo)準(zhǔn)保持一致性的工作量。代碼格式化程序能應(yīng)用樣式規(guī)則,代碼模板能夠插入Javadoc注釋,拼寫檢查程序能夠捕捉到注釋中的錯誤。Java編譯器不僅能檢查語法,還能對未使用的代碼提出警告。
    ×在小組儲存庫中共享格式化規(guī)則、代碼模板和拼寫檢查詞典,可以使所有小組成員的工作保持一致。
    ×使用Checkstyle插件(或其他類似的擴(kuò)展)可以審查代碼與標(biāo)準(zhǔn)的一致性。自動運(yùn)行樣式審查可以作為完整Ant構(gòu)造文件的一部分。

    14.4 擴(kuò)展
    ×Checkstyle。http://checkstyle.sourceforge.net/可以下載Checkstyle。http://eclipse-cs.sourceforge.net/可以下載插件。
    ×PMD分析工具。http://pmd.sourceforge.net/可以下載插件。
    ×實(shí)例化CodePro Advisor。http://www.instantiations.com/codepro/advisor.htm可以下載商業(yè)化插件。

    14.5 參考文獻(xiàn)
    Apache Jakarta Project, Source Repositories. See http://jakarta.apache.org/site/source.html
    Eclipse Foundation. Standards, Conventions and Guidelines. See http://dev.eclipse.org/
    Sun Microsystems. Code Conventions for the Java Programming Language. 1999. See http://java.sun.com/docs/codeconv/
    Sun Microsystems. Requirements for Writing Java API Specifications. 2003. See http://java.sun.com/products/jdk/javadoc/writingapispecs/
    Sun Microsystems. how to Write Doc Comments for Javadoc. 2003. See http://java.sun.com/products/jdk/javadoc/writingdoccomments/
    SCOWL(Spell Checker Oriented Word Lists) is a collection of word lists split up in various sizes, and other categories, intended to be suitable for use in spell checkers. See http://worllist.sourceforge.net/

    posted on 2007-07-16 10:23 zYx.Tom 閱讀(4397) 評論(8)  編輯  收藏 所屬分類: 1.Java世界

    評論

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-16 14:05

    垃圾文章,真不知道你這個(gè)寫出來是干什么的  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-16 14:20 朱遠(yuǎn)翔

    @撒
    寫出來幫助別人看書前了解呀。
    我寫的都是書中摘錄出來的,如果你覺得不好,請說出實(shí)際的建議和批評,我可以在未來改進(jìn),如果你不喜歡,也可以不看,但不要把別人的東西叫做垃圾,這可不像是個(gè)有禮貌的程序員。  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-16 14:53 BeanSoft

    搞 Apusic 渠道培訓(xùn)的, 支持一下! 我是講 Java 開發(fā)的, 以前講過一些企業(yè)的 Weblogic 培訓(xùn). 有一本國人寫的 <<Eclipse從入門到精通.pdf>> 個(gè)人覺得寫的要好些, 除了使用之外, 還介紹了 Eclipse 相關(guān)的開發(fā), 例如 Plugin, SWT, JFace 等.  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-16 15:38 朱遠(yuǎn)翔

    @BeanSoft
    謝謝支持,說實(shí)話IT從業(yè)人員都非常辛苦,非常希望大家互相支持,共同創(chuàng)造一個(gè)好的工作環(huán)境。
    你說的是不是從入門到精通的系列書箱,我也挺喜歡那個(gè)系列的叢書的。
    這本書我覺得與其他Eclipse書不同的地方就是關(guān)注的是Eclipse的基礎(chǔ)介紹,就如書中所說的不是能做什么,而是不能做什么,使讀者對Eclipse有個(gè)基本的了解,這樣可以快速入門上手,特別是已經(jīng)憑經(jīng)驗(yàn)用了Eclipse一段時(shí)間的朋友,反而會覺得更有幫助。
    但是,他沒有介紹如何使用Eclipse做些事情,因?yàn)樗o了許多參考書文獻(xiàn),可以通過那些文獻(xiàn)學(xué)習(xí)如何用好Eclipse。  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-17 11:53 三告習(xí)習(xí)

    “說實(shí)話IT從業(yè)人員都非常辛苦,非常希望大家互相支持,共同創(chuàng)造一個(gè)好的工作環(huán)境”
    支持~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~!!  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2007-07-18 09:52 朱遠(yuǎn)翔

    @三告習(xí)習(xí)
    謝謝你的支持,希望我們大家互相支持,建設(shè)好我們的BlogJava。  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2008-03-05 16:47 gembin

    Eclipse精粹學(xué)習(xí)筆記 ?

    題目和內(nèi)容不太吻合把  回復(fù)  更多評論   

    # re: Eclipse精粹學(xué)習(xí)筆記 2008-03-05 18:14 朱遠(yuǎn)翔-Apusic技術(shù)顧問

    @gembin
    抱歉,是我學(xué)《Eclipse精粹》這本書的學(xué)習(xí)筆記。  回復(fù)  更多評論   

    主站蜘蛛池模板: 久久永久免费人妻精品下载| 亚洲a∨无码男人的天堂| 国产精品亚洲精品日韩电影| 18pao国产成视频永久免费| 久久国产精品亚洲综合| 国产色爽免费无码视频| 亚洲精品无码国产| 亚洲视频在线观看视频| 国产精成人品日日拍夜夜免费 | 热99re久久免费视精品频软件| 日韩精品亚洲人成在线观看| 亚洲黄色免费观看| 中文字幕 亚洲 有码 在线| 午夜毛片不卡免费观看视频| 国产成人综合亚洲| 黑人大战亚洲人精品一区| 一个人看的hd免费视频| 亚洲成AV人片一区二区| 亚洲va精品中文字幕| 成人av免费电影| 免费高清A级毛片在线播放| 1000部啪啪未满十八勿入免费| 亚洲国产精品乱码在线观看97| 免费人成在线视频| 一级毛片a免费播放王色电影 | 免费一级做a爰片久久毛片潮| 中文字幕亚洲一区二区va在线| 久久精品电影免费动漫| 亚洲乱码日产精品BD在线观看| 国产免费一区二区视频| 亚洲avav天堂av在线网爱情| 国产午夜免费福利红片| a级毛片毛片免费观看永久| 亚洲第一成年人网站| 免费a级毛片无码av| 免费人成在线观看网站| 亚洲国产成人无码AV在线| 亚洲自偷自偷偷色无码中文| 色吊丝免费观看网站| 欧洲精品免费一区二区三区| 亚洲av无码国产精品夜色午夜|