国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Ant+Junit+Log4J+CVS進(jìn)行XP模式開(kāi)發(fā)的建立

2019-11-17 06:24:45
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  Ant+Junit+Log4J+CVS進(jìn)行XP模式開(kāi)發(fā)的建立
作者(100101)北京信息工程學(xué)院 蔡君
一、 綜述
軟件行業(yè)的發(fā)展幾乎進(jìn)入到了瘋狂的地步,各種各樣的軟件蜂擁市場(chǎng),而軟件的開(kāi)發(fā)模式也是在不斷的改變的,推出了許多的設(shè)計(jì)模式供大家使用,我在這里介紹得就是基于XP模式的開(kāi)發(fā)。XP也叫做極限編程。他給人提供了一種全新的開(kāi)發(fā)軟件的模式,或許您還沒(méi)有使用,或許您在使用,但是沒(méi)有具體到實(shí)施。本文向您介紹了基于許多免費(fèi)軟件的XP模式增量開(kāi)發(fā)環(huán)境的建立。
二、 軟件下載
1. Ant
Ant是一個(gè)基于java的build工具。大家都知道,現(xiàn)在已經(jīng)有了許多的build工具,例如make、gnumake、nmake、jam等,而且這些工具都非常優(yōu)秀。那我為什么還要給大家介紹Ant這個(gè)新工具呢? 因?yàn)锳nt是一個(gè)跨平臺(tái)的Build工具。之所以Ant能跨平臺(tái),是因?yàn)锳nt不再需要你編寫(xiě)shell命令,Ant的配置文件是基于xml的任務(wù)樹(shù),能讓你運(yùn)行各種各樣的任務(wù),任務(wù)的運(yùn)行是由實(shí)現(xiàn)了特定任務(wù)接口的對(duì)象來(lái)完成的。
下載地址:http://jakarta.apache.org/builds/jakarta-ant/release/
2. Junit
隨著Refactoring技術(shù)和XP軟件工程技術(shù)的廣泛推廣,單元測(cè)試的作用在軟件工程中變得越來(lái)越重要,而一個(gè)簡(jiǎn)明易學(xué)、適用廣泛、高效穩(wěn)定的單元測(cè)試框架則對(duì)成功的實(shí)施單元測(cè)試有著至關(guān)重要的作用。在java編程語(yǔ)句環(huán)境里,Junit Framework是一個(gè)已經(jīng)被多數(shù)java程序員采用和實(shí)證的優(yōu)秀的測(cè)試框架.
下載地址:http://www.junit.org
3. Log4J
Log4j是Apache的一個(gè)開(kāi)放源代碼項(xiàng)目,通過(guò)使用Log4j,我們可以控制日志信息輸送的目的地是控制臺(tái)、文件、GUI組件、甚至是套接口服務(wù)器、NT的事件記錄器、UNIX Syslog守護(hù)進(jìn)程等;我們也可以控制每一條日志的輸出格式;通過(guò)定義每一條日志信息的級(jí)別,我們能夠更加細(xì)致地控制日志的生成過(guò)程。最令人感愛(ài)好的就是,這些可以通過(guò)一個(gè)配置文件來(lái)靈活地進(jìn)行配置,而不需要修改應(yīng)用的代碼。
下載地址:http://jakarta.apache.org/log4j/jakarta-log4j-1.2.8.zip
4. Jdom
Java + XML = JDOM !
這就是JDOM設(shè)計(jì)者的目標(biāo)。假如你曾經(jīng)使用過(guò)煩人的SAX或是DOM來(lái)處理XML,你就會(huì)知道為什么要有JDOM或者是JAXB。在今年(2002)的JavaOne會(huì)議上JDOM的主要?jiǎng)?chuàng)始人Jason Hunter有一篇出色的演講介紹了JDOM技術(shù),題目就是JDOM Makes XML Easy。
在那篇文檔里,JDOM被拿來(lái)與DOM比較,而我更愿意拿它同JAXB比較。因?yàn)镴AXB和JDOM都是為了在Java中提供比DOM和SAX更為方便的XML處理接口而開(kāi)發(fā)的,并且通過(guò)完全不同的途徑來(lái)解決這個(gè)問(wèn)題。JDOM的處理方式是與DOM類似的樹(shù)操作。而JAXB通過(guò)DTD和綁定模式來(lái)生成訪問(wèn)XML文檔的Java代碼,將XML映射成了Java對(duì)象來(lái)操作
下載地址:http://www.jdom.org/downloads/index.Html

三、 環(huán)境的建立
把以上文件下載之后解壓縮之后,設(shè)定您的JAVA_HOME,以及ANT_HOME之后,在DOS環(huán)境下鍵入ant,假如出現(xiàn)了如下情況
Buildfile: build.xml does not exist!
Build failed

證實(shí)了您的ANT環(huán)境已經(jīng)搭建成功了。還需要注重的就是您假如需要JUNIT的任務(wù),那么您需要將Junit.jar拷貝到ANT_HOME/lib目錄下面。
四、 程序的實(shí)現(xiàn)
在XP中提倡先建立測(cè)試單元。那么我們想建立一個(gè)讀XML的,程序的話,我們需要建立一個(gè)Case,ReadXMLCase.java

package test;import xml.ReadXML;import junit.framework.*;/** * Title: 阿菜Java技術(shù)站 * Description: * Copyright: Copyright (c) 2003 * Company: <a >www.ejb.cn</a> * @author: acai * @version 1.0 */public class ReadXMLCase extends TestCase { /** * ConstrUCtor for ReadXMLCase. */ public ReadXMLCase() { super(); } /** * Constructor for ReadXMLCase. * @param arg0 */ public ReadXMLCase(String arg0) { super(arg0); } public void testPRintXML() { ReadXML rx = new ReadXML("E:/workspace/graduationDesigner/web.xml"); rx.printXML(); } public static void main(String args[]) { junit.textui.TestRunner.run(new TestSuite(ReadXMLCase.class)); }}



此編譯是不能夠通過(guò),還需要我們編寫(xiě)ReadXML.java


package xml;import org.apache.log4j.Logger;import org.apache.log4j.BasicConfigurator;import org.apache.log4j.NDC;import org.jdom.*;import org.jdom.input.*;import org.jdom.output.*;import java.io.*;/** * Title: 阿菜Java技術(shù)站 * Description: * Copyright: Copyright (c) 2003 * Company: <a >www.ejb.cn</a> * @author: acai * @version 1.0 */public class ReadXML { static Logger log = Logger.getLogger(ReadXML.class.getName()); private String fileName = null; private SAXBuilder builder = null; /** * Constructor for ReadXML. */ public ReadXML(String fileName) { super(); BasicConfigurator.configure(); this.fileName = fileName; builder = new SAXBuilder(); } public void printXML() { try { log.info("開(kāi)始創(chuàng)建Document"); Document doc = builder.build(new File(fileName)); XMLOutputter outputter = new XMLOutputter(); log.info("開(kāi)始輸出XML內(nèi)容:"); outputter.output(doc, System.out); log.info("輸出結(jié)束!"); } catch (Exception e) { e.printStackTrace(); } }}

編寫(xiě)B(tài)uild.XML文件

<project name="acaiDesigner" default="junit"basedir="."> <!-- App name-dependent settings. --> <property name="appname" value="acaiDesigner"/> <property name="src" value="${basedir}/src"/> <property name="build.classesdir" value="${basedir}/bin"/> <path id="classpath"> <pathelement path="${classpath}:${build.classesdir}" /> <fileset dir="${basedir}/lib"> <include name="*.jar" /> </fileset> </path> <target name="compile"> <javac srcdir="${src}" destdir="${build.classesdir}"> <classpath refid="classpath"/> </javac> </target> <target name="junit" depends="compile"><junit printsummary="yes" fork="yes"haltonfailure="yes"> <classpath refid="classpath"/> <formatter type="plain"/> <test name="test.ReadXMLCase" /></junit></target></project>

在DOS下面運(yùn)行ant,ok就可以自動(dòng)編譯和單元測(cè)試了,假如編譯錯(cuò)誤,會(huì)打印出來(lái)相對(duì)應(yīng)的錯(cuò)誤信息。假如您進(jìn)行了單元測(cè)試的話,您可以在您的目錄下面看到這樣的一個(gè)文件TEST-test.ReadXMLCase.txt,這個(gè)文件里面具體記載了本次單元測(cè)試的經(jīng)過(guò)。并且在里面可以看到Log4J打印的結(jié)果。
五、 結(jié)束語(yǔ)
XP模式強(qiáng)調(diào)的是一種單元測(cè)試,他們要求的測(cè)試代碼比自己的源程序代碼還要多,這也是建立一個(gè)強(qiáng)大系統(tǒng)的根源吧,短暫的接受了XP模式,發(fā)現(xiàn)他帶給我的不僅僅是一種新的思想,而且他帶給我更好、更快的軟件開(kāi)發(fā)。而且這種方式讓我很輕易排除我程序的錯(cuò)誤,不要到客戶面前讓我不敢肯定說(shuō)出我得軟件,他讓我有信心說(shuō),這個(gè)經(jīng)過(guò)測(cè)試的。僅僅是短暫的接受而已,沒(méi)有深入的研究,錯(cuò)誤在所難免,希望大家能夠多多交流。我的郵箱:webmaster@justhis.com 網(wǎng)站 http://ejb.cn

六、 參考資源:
N多,還沒(méi)有整理。我在Google.com上搜索的,可以說(shuō)互聯(lián)網(wǎng)賦予了我得一切(除美女^_^)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 安岳县| 宿迁市| 庄河市| 莒南县| 化德县| 诏安县| 溆浦县| 文山县| 南开区| 天气| 台中市| 温泉县| 岚皋县| 喀什市| 泾源县| 江津市| 太湖县| 阿克陶县| 清涧县| 阜南县| 中牟县| 永寿县| 庐江县| 阳谷县| 呼图壁县| 武乡县| 武义县| 横山县| 呼图壁县| 漳州市| 南康市| 阿拉善右旗| 松江区| 济源市| 英德市| 云霄县| 德州市| 淅川县| 平武县| 丽江市| 涞水县|