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

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

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

    That way I want to stay

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      55 Posts :: 1 Stories :: 41 Comments :: 0 Trackbacks

    2006年12月7日 #

    這是我的個(gè)人主頁,有興趣的同學(xué)大家互相關(guān)注一下:
    http://www.tuijianba.com/9889.html
    posted @ 2009-07-31 23:14 Wingel 閱讀(145) | 評(píng)論 (0)編輯 收藏

    最近一直在開發(fā)一款I(lǐng)DE,本來設(shè)計(jì)的目標(biāo)只是一個(gè)單機(jī)版的客戶端,不會(huì)連接任何服務(wù)端。后來用戶突然加了一項(xiàng)需求,想要訪問數(shù)據(jù)庫,去查詢一些數(shù)據(jù)。 其實(shí)這本來也不是什么怪異的需求,只是一種C/S系統(tǒng)而已。那時(shí)候剛聽到這個(gè)需求的時(shí)候,馬上想到的是,用hibernate, ibatis還是直接用JDBC。不如用ibatis吧,只需要查詢幾個(gè)表的幾個(gè)字段而已,這一項(xiàng)剛好足夠。 可是要增加數(shù)據(jù)庫的支持時(shí),心里特別的別扭,這款I(lǐng)DE的目標(biāo)客戶是遍布各個(gè)地方的,這一點(diǎn)就決定了,我們不可能用C/S的方法。 后來是在online system上加了一個(gè)web service,讓這個(gè)IDE去調(diào)用。這樣任何地方都可以訪問這個(gè)服務(wù)了。 就算不論這一點(diǎn),在考慮要用客戶端直接連數(shù)據(jù)庫的時(shí)候,心里面就像吃了螞蟻似的,非常不爽。不知道是因?yàn)锽/S系統(tǒng)做多了,還是因?yàn)橛X得客戶端直接連數(shù)據(jù)庫本身就是一種不對(duì)的做法,總之現(xiàn)在已經(jīng)有點(diǎn)不喜歡C/S結(jié)構(gòu)的系統(tǒng)了,或者說,不喜歡客戶端/數(shù)據(jù)庫服務(wù)這樣的系統(tǒng)。 不知道諸位程序員同
    文章來源:http://blog.csdn.net/Wingel/archive/2007/01/25/1493585.aspx
    posted @ 2007-01-26 05:17 Wingel 閱讀(261) | 評(píng)論 (1)編輯 收藏

    ?程序員有個(gè)偏好,那就是實(shí)現(xiàn),他們喜歡把東西實(shí)現(xiàn)出來。這是一個(gè)優(yōu)點(diǎn),實(shí)現(xiàn)能力越強(qiáng)的人,一般編程能力也越強(qiáng),我們也就可以說,他的技術(shù)越強(qiáng)。
      但是喜歡實(shí)現(xiàn)卻又是程序員的缺點(diǎn),因?yàn)樗麄冊(cè)趯?shí)現(xiàn)一樣?xùn)|西的時(shí)候,經(jīng)常會(huì)不想去理會(huì)其他的事情。比如說,程序員接到一項(xiàng)任務(wù)時(shí),普通的程序員就馬上會(huì)開始動(dòng)手。稍微好一些的程序員則會(huì)仔細(xì)思考一下再動(dòng)手。可惜,這樣子也是程序員管理能力欠缺的一個(gè)原因。
      當(dāng)你的能力足夠的時(shí)候,你應(yīng)該懂得,把分配給你的任務(wù)計(jì)劃一下,看看多久完成,如果你要把這個(gè)任務(wù)分塊的話,嘗試估計(jì)一下各個(gè)塊的完成時(shí)間。不要因?yàn)閾?dān)心預(yù)計(jì)得不準(zhǔn),就不去估計(jì)。因?yàn)橛袀€(gè)計(jì)劃給領(lǐng)導(dǎo),絕對(duì)比沒有的強(qiáng)。
      開發(fā)經(jīng)驗(yàn)逐漸增多的情況下,你已經(jīng)有能力相對(duì)準(zhǔn)確的計(jì)劃自己的任務(wù)了。這時(shí)候你應(yīng)該去找你的領(lǐng)導(dǎo),把他今年可能會(huì)分配給你的任務(wù)看一下。這件事情很重要,因?yàn)槟悴蛔龅脑挘氵€只是一個(gè)程序員。因?yàn)槟銓?duì)自己的能力已經(jīng)有了充分的認(rèn)識(shí),也能相對(duì)準(zhǔn)確的估計(jì)你的開發(fā)進(jìn)度了。你可以好好把今年的任務(wù)計(jì)劃一下,把更新好的進(jìn)度表給你的領(lǐng)導(dǎo)。因?yàn)樗麑?duì)你開發(fā)進(jìn)度的估計(jì),怎么樣都沒有你自己估計(jì)的準(zhǔn)確。你能給一份計(jì)劃,他會(huì)很開心。
      現(xiàn)在,你已經(jīng)有能力計(jì)劃自己整年的開發(fā)情況了。
      但是計(jì)劃會(huì)改變。  
      我們要擁抱計(jì)劃的變更!
      你跟客戶,或者負(fù)責(zé)需求的人熟嗎?只有時(shí)刻掌握著需求的變化,才能時(shí)刻把握好自己的計(jì)劃。
      你跟QA熟嗎?QA對(duì)你這個(gè)人開發(fā)質(zhì)量的印象如何?清楚自己的開發(fā)質(zhì)量,才能保證把事情做好的能力一直在進(jìn)步。
      你跟領(lǐng)導(dǎo)熟嗎?你保證你做的事情領(lǐng)導(dǎo)都知道嗎?你想做什么領(lǐng)導(dǎo)也知道?
      你敢不敢說,所有跟你有關(guān)的情況,都盡在你的掌握?
      會(huì)不會(huì)覺得這些很像空話,很不實(shí)際!
      但是有做總是有好處的!
      你做得越多,你越過程序員就越快。因?yàn)槟悴荒埽膊幌胫皇菃尉€程的程序員!
    posted @ 2007-01-23 17:49 Wingel 閱讀(1177) | 評(píng)論 (2)編輯 收藏

    ???? 前了陣子,做了個(gè)firefox下的插件,在了解它的插件運(yùn)作的過程中,才發(fā)現(xiàn),原來程序還可以是這樣組成的。
    ??? 我們現(xiàn)在的所有B/S程序,UI上就是由HTML+JavaScript組成的,而它這樣的局限就是,這樣的UI只能在瀏覽器上運(yùn)行;而且它的UI會(huì)比較簡(jiǎn)單,不能像桌面程序中的一些效果。
    ??? 前面那個(gè)問題,其實(shí)很容易回答,大部分桌面程序也只能在Window上運(yùn)行,大部分人都會(huì)裝Windows,但是大部分人也都會(huì)裝瀏覽器。
    ??? 而后面這個(gè)問題,就是我要說的內(nèi)容了。Firefox里面所有界面上的布局,都是用類似于HTML的XUL語言生成的,它比HTML支持更多的UI,更方便的一些操作。
    ??? 當(dāng)你發(fā)現(xiàn),用HTML就可以構(gòu)造出一個(gè)功能非常復(fù)雜的GUI時(shí),當(dāng)你發(fā)現(xiàn)光光html就可以做出一個(gè)Firefox那樣的界面時(shí),當(dāng)你發(fā)現(xiàn),F(xiàn)irefox這個(gè)平臺(tái)上所有的程序都是由HTML組成時(shí),這就是我的驚異了。
    ??? 當(dāng)你發(fā)現(xiàn),其實(shí)用HTML就可以做出所有的GUI程序時(shí),這就是Moliza的思路了(其實(shí)NetBean的RPC中各個(gè)Plugin的UI的思路跟這個(gè)有點(diǎn)類似)。
    ??? 當(dāng)你發(fā)現(xiàn),你要打開一個(gè)程序,你只需要一個(gè)瀏覽器,打開一個(gè)網(wǎng)頁,其余啥都不用做時(shí),這就是Google的思路了。
    ??? 這就是我的感覺。
    ??? 而且我在做這個(gè)Firefox的插件時(shí),我一直感覺我在用AJAX,其實(shí)AJAX的思路,最有價(jià)值的就是,UI上每次變更,不需要刷新整個(gè)頁面,不需要 Reload整個(gè)UI,只需要變更它需要變化的部分,就像桌面程序一樣。而你在用Firefox的時(shí)候,你會(huì)感覺到Firefox在刷新什么東西嗎?
    posted @ 2007-01-21 13:07 Wingel 閱讀(2788) | 評(píng)論 (8)編輯 收藏

    敏捷開發(fā)的必要技巧完整版.rar ?或者 下載
    posted @ 2006-12-16 09:50 Wingel 閱讀(1669) | 評(píng)論 (12)編輯 收藏

    鏈接: 第14章結(jié)對(duì)編程.rar ? 或者 下載

    結(jié)對(duì)編程的好處:

    聯(lián)合兩人的知識(shí)去對(duì)付一個(gè)難題。

    知識(shí)互相傳遞。

    更有效的查錯(cuò)跟糾錯(cuò)。

    程序員都很開心。

    減少員工離職的損失。

    ?

    結(jié)對(duì)編程需要的一些技能:

    用代碼解釋已有的設(shè)計(jì)結(jié)構(gòu)。

    用例子來解釋。

    用圖表來解釋設(shè)計(jì)思路。

    如果你無法把你的設(shè)計(jì)思路表達(dá)清楚,把代碼寫出來。

    讓比較迷惑的搭檔來寫代碼,這樣他就可以較好的融入你的概念。

    經(jīng)常的休息。

    經(jīng)常的更換搭檔。

    具體內(nèi)容請(qǐng)下載pdf觀看。
    posted @ 2006-12-14 21:25 Wingel 閱讀(1074) | 評(píng)論 (0)編輯 收藏

    下載地址: 第13章測(cè)試驅(qū)動(dòng)編程.rar? 或者? 下載

    TDD及它的優(yōu)點(diǎn)

    ?

    ??? 上面這種編程的方式,就叫“測(cè)試驅(qū)動(dòng)編程Test Driven Development (TDD)”,因?yàn)槲覀兛偸窃趯懻嬲a之前寫一個(gè)通不過的測(cè)試,然后再寫真正的代碼,讓測(cè)試通過。

    ??? 跟測(cè)試后行的開發(fā)方式相比,它有如下好處:

    ??????????????????????????????????????????????????????

    ??? 1.為了更容易的寫單元測(cè)試,我們會(huì)廣泛的使用接口(比如StudentRegistryChecker等)。這個(gè)會(huì)讓單元測(cè)試代碼很容易讀跟寫,因?yàn)闇y(cè)試代碼里面沒有多余的數(shù)據(jù)。如果我們不用TDD而是直接寫實(shí)現(xiàn)的話,我們經(jīng)常會(huì)使用現(xiàn)成的類(比如StudentSet),測(cè)試為了調(diào)用現(xiàn)成的類,就不得不創(chuàng)建很多多余的數(shù)據(jù),創(chuàng)建很巨型的對(duì)象,就像Student或者Course

    ???

    ??? 2.因?yàn)閺V泛的使用接口,我們的類之間就不會(huì)藕合(比如EnrollmentSet就一點(diǎn)都不知道StudentSet的存在),因此重用性更好。

    ?

    ??? 3.寫單元測(cè)試的時(shí)候,很容易就可以為一個(gè)行為寫一個(gè)測(cè)試用例,讓它通過,然后為另一種行為寫另一個(gè)測(cè)試用例。也就是說,整個(gè)任務(wù)會(huì)被劃分成很多小的任務(wù),獨(dú)立完成。如果我們不用TDD而直接實(shí)現(xiàn)的話,我們很容易就會(huì)同時(shí)把所有的行為都實(shí)現(xiàn)了。這樣花的時(shí)間長(zhǎng),而且在這相當(dāng)長(zhǎng)的時(shí)間里面,寫的代碼都是沒有測(cè)試過,不能保證準(zhǔn)確性的。相反的,用TDD的話,我們只實(shí)現(xiàn)要測(cè)的行為的代碼。它只花費(fèi)很少的時(shí)間(幾分鐘),而且可以馬上測(cè)試。

    posted @ 2006-12-11 16:50 Wingel 閱讀(1132) | 評(píng)論 (0)編輯 收藏

    第12章單元測(cè)試.rar ?或者 下載 ? 下載pdf。

    ???
    單元測(cè)試跟驗(yàn)收測(cè)試有什么區(qū)別?驗(yàn)收測(cè)試測(cè)試的是系統(tǒng)的外部行為,而單元測(cè)試是測(cè)試系統(tǒng)內(nèi)部結(jié)構(gòu),它只測(cè)一個(gè)單元(類,甚至一個(gè)方法)。驗(yàn)收測(cè)試屬于客戶的,我們沒有權(quán)利決定驗(yàn)收測(cè)試的內(nèi)容。我們頂多只是幫忙客戶根據(jù)用戶例事寫出驗(yàn)收測(cè)試。單元測(cè)試屬于我們,因?yàn)橄到y(tǒng)里面有什么類,每個(gè)類都做什么,是由我們決定的。客戶就沒有權(quán)利涉及了,而且我們也不需要他的參與。我們只是根據(jù)我們對(duì)這個(gè)單元(類)的期望寫出單元測(cè)試。因此,這種測(cè)試又叫“程序員測(cè)試”。

    posted @ 2006-12-09 10:01 Wingel 閱讀(1018) | 評(píng)論 (0)編輯 收藏

         摘要: 之前講了怎么對(duì)代碼進(jìn)行驗(yàn)收測(cè)試,但如果代碼跟UI相關(guān)的話,驗(yàn)收測(cè)試又要怎么寫?  閱讀全文
    posted @ 2006-12-08 21:21 Wingel 閱讀(1067) | 評(píng)論 (0)編輯 收藏

         摘要: 當(dāng)你實(shí)現(xiàn)了一個(gè)用戶例事(user story),你怎么判斷你的代碼是真正的,是用戶真正想要的?  閱讀全文
    posted @ 2006-12-07 11:17 Wingel 閱讀(1387) | 評(píng)論 (0)編輯 收藏

    主站蜘蛛池模板: 亚洲精品无码日韩国产不卡?V| 日韩人妻无码精品久久免费一| 亚洲另类激情综合偷自拍图| 亚洲狠狠婷婷综合久久蜜芽| 成年女人毛片免费视频| 亚洲乱码中文论理电影| 亚洲av成人一区二区三区观看在线 | 69免费视频大片| 精品日韩亚洲AV无码| 一级毛片在线观看免费| 久久亚洲精品AB无码播放| 97青青草原国产免费观看| 亚洲精品免费在线视频| 无码免费午夜福利片在线| 国产日本亚洲一区二区三区| 国产精品久久久久久久久久免费| 亚洲人xxx日本人18| 日本一道一区二区免费看| 亚洲AV美女一区二区三区| 无码国产精品一区二区免费模式 | 亚洲av不卡一区二区三区| 日韩视频在线观看免费| 亚洲黄色在线观看网站| 一个人在线观看视频免费| 亚洲av无码日韩av无码网站冲| avtt亚洲天堂| 男人都懂www深夜免费网站| 亚洲欧洲视频在线观看| 女人18一级毛片免费观看| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产成人亚洲综合| 日韩精品视频免费在线观看| 亚洲VA成无码人在线观看天堂| 最新国产乱人伦偷精品免费网站| 亚洲色欲久久久综合网| 亚洲一日韩欧美中文字幕在线| 女人被男人躁的女爽免费视频| 久久亚洲精品无码网站| 伊人婷婷综合缴情亚洲五月| a级在线免费观看| 亚洲第一成年人网站|