狂想的蛇之黃金時(shí)代已過(guò)
          徘徊在工程和藝術(shù)之間

          2006年4月3日

          類名:
          ? org.apache.commons.collections.BeanMap

          用法:
          ? //...得到orderLine
          ? Map<String,Object> map = new BeanMap(orderLine);
          ? map.put("vendorDiscount",orderLine.getProduct().getVendor().getDiscount());
          ??//得到orderLine
          ??Map<String,Object>?map?=?new?BeanMap(orderLine);
          ??map.put(
          "vendorDiscount",orderLine.getProduct().getVendor().getDiscount());

          使用場(chǎng)景:
          ? dwr中可以直接把java對(duì)象轉(zhuǎn)換成js對(duì)象傳回,但是有時(shí)候需要在傳回的對(duì)象上附加屬性,例如在訂單項(xiàng)(訂單中的一行)中,我想附加相關(guān)產(chǎn)品供應(yīng)商信用等級(jí)優(yōu)惠條件,如果直接把對(duì)象關(guān)系圖傳過(guò)去,需要傳4層,其實(shí)我只要在訂單項(xiàng)后附加一個(gè)屬性就行了。所以我就先把訂單項(xiàng)(OrderLine)轉(zhuǎn)化為一個(gè)map,向這個(gè)map中put新的屬性,這樣傳回到瀏覽器的對(duì)象還是和以前一樣的,只是附加了一個(gè)vendorDiscount:0.6 .

          posted @ 2006-11-08 20:04 黃金時(shí)代已過(guò) 閱讀(3000) | 評(píng)論 (0)編輯 收藏
           
          其一:
          <div height="300px" style="overflow:scroll;">...</div>后滾動(dòng)條死活不出來(lái),如果寫(xiě)成

          <style>
          .scrollbox{
          ? height:300px;
          ? overflow:scroll;
          }
          </style>
          <div class="scrollbox">...</div>
          就一切正常。

          后來(lái)發(fā)現(xiàn)如果直接使用style屬性,應(yīng)該寫(xiě)成<div style="height:300px; overflow:scroll;">...</div>
          nnd,郁悶,不禁敬仰美工的工作。

          其二:
          為了圖簡(jiǎn)便,直接用dwr調(diào)用了manager的方法時(shí),manager中引用的其他manager總是null,仔細(xì)想想,發(fā)現(xiàn)manager是由spring管理的,所以應(yīng)該creator="spring",而不是creator="new"。得解。
          這樣調(diào)用終歸不爽,還是應(yīng)該有services才行,看來(lái)偷懶是不行了。

          另:昨晚看了一下dwr2.0,發(fā)現(xiàn)ajax終于走到正道上了。Reverse Ajax! 在java中設(shè)置界面控件的內(nèi)容,細(xì)粒度的請(qǐng)求和更新,由后臺(tái)來(lái)主導(dǎo)完整業(yè)務(wù)邏輯,而html就像c/s程序中的資源文件一樣被加載,這樣才能真正適合企業(yè)應(yīng)用(網(wǎng)站還是用以前的才對(duì))。環(huán)境已經(jīng)成熟,到應(yīng)用不知道還要等多久
          posted @ 2006-11-07 22:48 黃金時(shí)代已過(guò) 閱讀(159) | 評(píng)論 (0)編輯 收藏
           
          今天無(wú)意中竟然下載到了Refactoring Databases,哎呀,貪財(cái)貪財(cái)!
          開(kāi)發(fā)過(guò)程中database schema 的變化總是引起很多麻煩,希望這本書(shū)能有所幫助。
          posted @ 2006-04-18 11:36 黃金時(shí)代已過(guò) 閱讀(382) | 評(píng)論 (1)編輯 收藏
           

          Ruby中遞歸層數(shù)好像有限制,如函數(shù)
          def test(a)
          ?? if a==1
          ???? 1
          ?? else
          ???? a*test(a-1)
          ?? end
          end?

          puts test(780)
          輸出:84972392897964072098249533940415832032901226147549483885937628906393387016759749166779390912108512193770727396731176148684817099219862241070518329897737419790700834153338358789804054247254662503406001643932256413944181262536626134781963753899870200241216683120301369375204827350328695627459108294334206019027913654171970749305552969884823232609436511764040695691647958710090181422374514248844937618454949350242415512115167050621676322866110695044767187626021475743251277035950696737988473189355598223688184822894258942937354547600827689072340880783574157611601536909313655637665907495308227315772813753604514703047972667545052382993341295609886125445821680344472136291787954204104578202488733326674486963013530280156726975853827440416172311405531398732685573114934257635906047009853269995109193159402626590282423997495520628272375213203911332399362264123774789131108251376802391556145557618075940012872003438523613025838162437433166091728438034202592564763334170361422871174553523479072202135150477947497462319792004248488747067669226929977889728474667753117513554197181549148693463434107347395476738175071015937790196691810903035212156632705787120639270121315037723516623976522946189161132382463371686857543746042274574224547052957738646625809966919808812294116127379399188579075359032740380579901160073141745025441935558361164158736914927029701136227557285045299271693750581590882877670856450852068994081414494717924806473008367067880435766156267541200120373117672789242005510204657433232442062443350842731528466220850546079536126591907570634996939687881634634077903962785409702209303560414980140946811644475359177263347973998479963954822343870777236845722878913093643097703061981548194975005332841862304172509388532508262400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


          puts test(781)
          輸出:
          E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `*': stack level too deep (SystemStackError)
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          ?... 727 levels...
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:5:in `test'
          from E:/eclipse-SDK-3.2M6-win32/workspace/testruby/Test5.rb:9

          posted @ 2006-04-07 13:06 黃金時(shí)代已過(guò) 閱讀(1029) | 評(píng)論 (1)編輯 收藏
           
          Ruby一直被認(rèn)為沒(méi)有好的IDE,今天把RDT跑起來(lái)了,還不錯(cuò),雖然還不能和JDT相比。

          使用 Eclipse 插件 Ruby Development Tools
          http://www-128.ibm.com/developerworks/cn/opensource/os-rubyeclipse/

          為何配合RDT,我特地下載了一個(gè)Eclipse3.2M6,界面好花哨,但用起來(lái)心虛虛的,干活還使用3.1踏實(shí)。
          posted @ 2006-04-07 11:10 黃金時(shí)代已過(guò) 閱讀(357) | 評(píng)論 (0)編輯 收藏
           
          在ruby和相關(guān)的一些一切被說(shuō)得很神時(shí),聽(tīng)聽(tīng)一個(gè)異端的發(fā)言

          Why Ruby on Rails won't become mainstream
          http://beust.com/weblog/archives/000382.html
          posted @ 2006-04-06 18:36 黃金時(shí)代已過(guò) 閱讀(228) | 評(píng)論 (0)編輯 收藏
           
          vs
          圖片大小不一樣。沒(méi)辦法,誰(shuí)叫Prefactoring講的是big picture呢,:)
          posted @ 2006-04-04 13:07 黃金時(shí)代已過(guò) 閱讀(221) | 評(píng)論 (0)編輯 收藏
           

          3年前讀《人月神化》,當(dāng)時(shí)并沒(méi)有什么特別深的體會(huì),只是記住了關(guān)于狼人的傳說(shuō)。

          幾年過(guò)去了,在實(shí)踐中,我一次又一次地把系統(tǒng)中的癥結(jié)往深處考慮,竟然發(fā)現(xiàn)它們不約而同地指向同一個(gè)根源:沒(méi)有銀彈!
          一個(gè)非常樸素又普遍存在的理論,使我多次從困惑中跳出。

          略列以下幾條:
          1.不要企圖實(shí)現(xiàn)一個(gè)全息系統(tǒng)。
          實(shí)例:權(quán)限模塊在任何系統(tǒng)中需要,如果能建立一個(gè)完備的權(quán)限系統(tǒng),將可以在很多系統(tǒng)中使用。
          無(wú)論時(shí)間多么充足,這樣的模塊都無(wú)法完成。并不是這個(gè)系統(tǒng)過(guò)于復(fù)雜,而是因?yàn)槲覀冇?jì)劃實(shí)現(xiàn)的是一個(gè)全息的系統(tǒng),它是連續(xù)的,而軟件系統(tǒng)是離散的,無(wú)法用一個(gè)離散的系統(tǒng)實(shí)現(xiàn)一個(gè)連續(xù)的系統(tǒng),可以使用多種方法來(lái)模擬,但是絕不可能真正實(shí)現(xiàn)一個(gè)連續(xù)的系統(tǒng)。

          2.分析模式的使用
          分析模式是前人對(duì)某一具體領(lǐng)域的歸納總結(jié)。但如果真的在分析過(guò)程中想把分析模式用到極致,就會(huì)發(fā)現(xiàn)自己已經(jīng)走上了絕路。想適應(yīng)所有的變化,想用一個(gè)系統(tǒng)解決這個(gè)領(lǐng)域中所有的問(wèn)題,這是不可能的。

          好久沒(méi)抽煙,一支煙竟然是我有點(diǎn)暈了,睡了先。

          posted @ 2006-04-04 00:09 黃金時(shí)代已過(guò) 閱讀(287) | 評(píng)論 (0)編輯 收藏
           

          隨感隨想,并無(wú)邏輯性,如果哪位看不過(guò)去,請(qǐng)睜一只眼閉一只眼。

          當(dāng)系統(tǒng)的復(fù)雜度達(dá)到一定的規(guī)模,任何小聰明都無(wú)濟(jì)于事,還不如老老實(shí)實(shí),做點(diǎn)實(shí)事。

          一個(gè)前輩曾說(shuō):如何把事情做對(duì)是工程,如何把事情做好是藝術(shù)。

          剛開(kāi)始做軟件時(shí)總覺(jué)得自己是在從事一份藝術(shù)的工作,一個(gè)一個(gè)程序在自己的手中編寫(xiě)出來(lái),能運(yùn)行,能給很多人運(yùn)行。這個(gè)過(guò)程就像一種固化的思想,能動(dòng)態(tài)地和軟件使用者交流。對(duì)待程序也像對(duì)待藝術(shù)品一樣神圣,變成時(shí)總懷著一顆虔誠(chéng)的心。
          后來(lái)又走向另一個(gè)極端,覺(jué)得自己的工作無(wú)非和磚瓦匠一樣,按照?qǐng)D紙,把一磚一瓦安置在正確的地方
          在后來(lái)才知道,編寫(xiě)軟件既不是藝術(shù),又不是完全是工程,而永遠(yuǎn)都走在由工程到藝術(shù)的途中。借孔夫子的話,軟件開(kāi)發(fā)應(yīng)該走中庸之道。

          所謂中庸,就是作對(duì)的事情,不走極端。
          假設(shè)工程是0,藝術(shù)是1,那中庸是多少?
          0.5?不對(duì)!絕對(duì)的中點(diǎn)顯然不是中庸。中庸可能是平均分布在[0,1]區(qū)間上,或者是[0,1]上的某個(gè)概率分布,不過(guò)這些對(duì)實(shí)際工程都已經(jīng)沒(méi)有任何意義。
          換個(gè)假設(shè),如果工程是0,藝術(shù)是無(wú)窮大,中庸是多少?
          呵呵,有點(diǎn)無(wú)聊了。

          posted @ 2006-04-03 23:37 黃金時(shí)代已過(guò) 閱讀(208) | 評(píng)論 (0)編輯 收藏
           
          主站蜘蛛池模板: 凤山市| 雅安市| 屯留县| 宜兰市| 陆川县| 内丘县| 洪泽县| 连城县| 兰州市| 宝兴县| 军事| 五台县| 珲春市| 蒙城县| 桃源县| 安化县| 车致| 青铜峡市| 马龙县| 淄博市| 深州市| 凤凰县| 丹东市| 民勤县| 南城县| 玉田县| 丹江口市| 梅河口市| 黔东| 黄山市| 秀山| 辽源市| 武汉市| 拉孜县| 洛南县| 若羌县| 囊谦县| 永登县| 资兴市| 沂水县| 东阿县|