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

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

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

    結(jié)合openfans談算法的重要性

    不經(jīng)意看到了程序員的一期算法專(zhuān)題,細(xì)細(xì)研讀多位高手(包括李開(kāi)復(fù))的文字之后,對(duì)算法的重要性重新進(jìn)行了反思。我研究生畢業(yè) 2 年,一直從事 J2EE 開(kāi)發(fā),由于項(xiàng)目的原因,很少需要自己去設(shè)計(jì)算法,甚至 stack tree 這些數(shù)據(jù)結(jié)構(gòu)都很少使用。還好自己也不甘于平淡,如 Effective Java Practical Java Refactory Design Pattern 等等這些流行書(shū)還是抽空學(xué)習(xí),這些書(shū)的確很是經(jīng)典,對(duì)我的編碼風(fēng)格,模式的理解,設(shè)計(jì)能力都起到了很好的促進(jìn)。也快速的由一個(gè)程序員成長(zhǎng)為架構(gòu)師(只是公司的,離真正的架構(gòu)師還差得遠(yuǎn))。

    因?yàn)轫?xiàng)目需要,去年下半年開(kāi)始全面接觸開(kāi)源軟件,使用了 spring maven hibernate ibatis 等眾多開(kāi)源軟件,也對(duì)開(kāi)源軟件產(chǎn)生了濃厚的興趣,于是拿這些開(kāi)源軟件做了 openfans ,一方面是推進(jìn)開(kāi)源軟件在中國(guó)的使用的交流,一方面也為自己在實(shí)踐中更多使用這些軟件(因?yàn)闆](méi)有項(xiàng)目和利益因素,可以做想做的事,用想用的軟件)。使用這些開(kāi)源軟件倒很是順利,很多軟件拿來(lái)就能用,都有 sample ,簡(jiǎn)單使用還是不難的。

    但一些關(guān)鍵的問(wèn)題一直懸而未決!比如 tag 的設(shè)計(jì):我現(xiàn)在簡(jiǎn)單的使用平鋪的模型, tag 沒(méi)有層次之分, tag 間產(chǎn)生雙向關(guān)聯(lián)。但這樣是最符合 tag 特性的模型嗎?如何對(duì)這些 tag 進(jìn)行分類(lèi),如何定義 tag 的多級(jí)關(guān)聯(lián)(如 spring hibernate 有關(guān)聯(lián), hibernate 又與持久層關(guān)聯(lián), spring 是否與持久層有間接關(guān)聯(lián),依次類(lèi)推)。。。。。。而做出一個(gè)好的 tag 模型,可能就需要圖論方面的知識(shí)。再比如用戶(hù)相似度設(shè)計(jì)(號(hào)稱(chēng)是豆瓣的核心,難以復(fù)制):每個(gè)用戶(hù)擁有了一些 tag ,如何根據(jù)這些 tag 定義用戶(hù)的相似度,一個(gè)用戶(hù)有 spring hibernate 2 個(gè) tag ,一個(gè)用戶(hù)有 spring ibatis 2 個(gè) tag ,他們相似度為多少,如果每個(gè)人 tag 都很多,再加上權(quán)重的概念,問(wèn)題又復(fù)雜的多。簡(jiǎn)單的做法就是每個(gè)用戶(hù) tag 一個(gè)個(gè)匹配,匹配的越多相似度越大,但這樣設(shè)計(jì)一是不準(zhǔn)確,二是時(shí)間復(fù)雜度很大,最壞情況為 n*n*m*m n 為用戶(hù)數(shù), m 為每個(gè)用戶(hù)的 tag 數(shù)。

    這些都需要扎實(shí)的算法基礎(chǔ)。而我的基礎(chǔ)就很薄弱:本科學(xué)的比文科還文科的專(zhuān)業(yè),研究生又學(xué)的比較上層的東西( UML RUP PM 等,也都一知半解),選修了一門(mén)算法導(dǎo)論,又被 1000 多頁(yè)的經(jīng)典英文教材嚇趴下了,上了幾次課就直接放棄,沒(méi)敢參加最后考試。現(xiàn)在想臨時(shí)抱佛腳,談何容易。

    所以算法也并非沒(méi)有用處,關(guān)鍵要看你在做什么,想做什么。想去 google 、百度不用會(huì) spring ,算法基礎(chǔ)扎實(shí),只會(huì) c 語(yǔ)言都行;一些行業(yè)如電信、金融也很是需要算法高手。而國(guó)內(nèi)更多的企業(yè)做企業(yè)應(yīng)用,一般是連連數(shù)據(jù)庫(kù),寫(xiě)寫(xiě)頁(yè)面,最多引入些開(kāi)源框架和軟件,如 spring hibernate struts 等。這方面的需求較大,會(huì)了 spring ,省了公司的培訓(xùn)成本,自然還是給找工作加了一些砝碼。

    所以有時(shí)聽(tīng)到某些人對(duì)某項(xiàng)技術(shù)不以為然,說(shuō)“這些東西有什么是我在幾個(gè)星期學(xué)不會(huì)的”的時(shí)候,一方面是對(duì)其狂妄進(jìn)行些鄙視,一方面也真要問(wèn)問(wèn)自己,我的核心價(jià)值到底在哪。這個(gè)問(wèn)題很重要,涉及面很廣,選擇也很多,而我也只是有些模糊的答案,等以后再仔細(xì)寫(xiě)寫(xiě)。

    不管如何,我是要開(kāi)始研究算法了,得解決問(wèn)題阿!先在 openfans 開(kāi)個(gè)算法的 tag ,一邊學(xué)一邊積累,對(duì)算法有興趣的同學(xué)也可以跟我一塊進(jìn)步。

    PS :做個(gè)廣告, blogjava 很多好的 bloger ,能否到 www.openfans.net 導(dǎo)入下 blog ,跟大家分享下你的感悟,謝謝!

    posted on 2006-07-12 15:01 pesome 閱讀(2599) 評(píng)論(6)  編輯  收藏 所屬分類(lèi): 開(kāi)源軟件

    評(píng)論

    # re: 結(jié)合openfans談算法的重要性 2006-08-01 13:27 iamtin

    算法的確重要,J2EE Web開(kāi)發(fā)讓人習(xí)慣于模式和分層的復(fù)制,離算法會(huì)越來(lái)越遠(yuǎn)。可其實(shí)對(duì)于緩存、外部系統(tǒng)整合、模型建立這些部分還是可以應(yīng)用到很多算法的,可是每次在這里偷懶的時(shí)候也同樣感嘆“這些東西有什么是我在幾個(gè)星期學(xué)不會(huì)的”,慚愧,所以驅(qū)除浮躁,踏踏實(shí)實(shí)的搞明白所以然。  回復(fù)  更多評(píng)論   

    # re: 結(jié)合openfans談算法的重要性 2006-08-01 14:52 pesome

    @iamtin
    呵呵,J2EE往上走就發(fā)現(xiàn)算法的重要了。至少心中要一直有時(shí)間復(fù)雜度、空間復(fù)雜度的概念,才能必要時(shí)“時(shí)間換空間,空間換時(shí)間”。
      回復(fù)  更多評(píng)論   

    # re: 結(jié)合openfans談算法的重要性 2007-06-18 17:27 ddstrue

    自己簡(jiǎn)單實(shí)現(xiàn)一下spring 和 hibernate, 就知道算法的重要性了  回復(fù)  更多評(píng)論   

    # re: 結(jié)合openfans談算法的重要性 2008-01-15 12:51 路人

    我覺(jué)得像我們做企業(yè)應(yīng)用,開(kāi)發(fā)中很少會(huì)直接接觸算法問(wèn)題,就是自己動(dòng)手寫(xiě)一個(gè)。但間接的接觸就太多了,比如CACHE的幾種實(shí)現(xiàn)算法,不知道咋選?數(shù)據(jù)庫(kù)B TREE索引,多少會(huì)跟二叉樹(shù)沾邊吧。等等。有些東西表面上看就是個(gè)如何使用的問(wèn)題,再深入一步就會(huì)發(fā)問(wèn),我為什么要這么用,那就要涉及原理了。  回復(fù)  更多評(píng)論   

    # re: 結(jié)合openfans談算法的重要性 2008-12-29 16:35 ゞ沉默是金ゞ

    確實(shí)算法用到的很少很少了,以前自己組裝的數(shù)據(jù)結(jié)構(gòu)現(xiàn)在也都用不上了,有點(diǎn)不甘心啊。有時(shí)間還是需要自己努力鉆研一下的  回復(fù)  更多評(píng)論   

    # re: 結(jié)合openfans談算法的重要性 2009-02-04 01:53 leekiang

    像我們這種企業(yè)應(yīng)用開(kāi)發(fā)者的核心價(jià)值在哪里?樓主可有什么新的想法?  回復(fù)  更多評(píng)論   

    <2008年12月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    主要記錄作者在學(xué)習(xí)java中的每一步足跡。除非特別說(shuō)明,所有文章均為本blog作者原創(chuàng),如需轉(zhuǎn)載請(qǐng)注明出處和原作者,如用于商業(yè)目的,需跟作者本人聯(lián)系。
    歡迎大家訪問(wèn):

    常用鏈接

    留言簿(16)

    隨筆分類(lèi)

    隨筆檔案

    文章分類(lèi)

    文章檔案

    相冊(cè)

    收藏夾

    java技術(shù)

    人間百態(tài)

    朋友們的blog

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 114级毛片免费观看| 亚洲伊人成无码综合网| 中文字幕无码一区二区免费| 亚洲日本VA午夜在线电影| 亚洲AV成人片色在线观看高潮 | 五月天婷婷免费视频| 亚洲成a人片在线观看播放| 亚洲国产成人久久笫一页| 毛片a级毛片免费播放100| 最近的中文字幕大全免费8| 巨胸喷奶水www永久免费| 激情无码亚洲一区二区三区| 亚洲www在线观看| 亚洲大片免费观看| 亚洲午夜视频在线观看| 亚洲国产精品一区二区久久hs| 免费国产成人α片| 看Aⅴ免费毛片手机播放| 亚洲一卡2卡三卡4卡无卡下载 | 99亚洲乱人伦aⅴ精品| 久久亚洲精品国产亚洲老地址| 真实乱视频国产免费观看| 最近新韩国日本免费观看| 日本免费一区二区三区| 亚洲免费人成在线视频观看| 成人A毛片免费观看网站| 福利免费在线观看| 丁香花在线观看免费观看图片| 亚洲av永久无码嘿嘿嘿| 久久亚洲AV成人无码国产| 亚洲AV无码成人专区片在线观看| 免费看AV毛片一区二区三区| 在线观看免费污视频| 免费理论片51人人看电影| 国产中文字幕免费| 亚洲无码视频在线| 在线精品亚洲一区二区小说| 亚洲中文久久精品无码ww16| 亚洲国产精品lv| 亚洲成人网在线播放| 亚洲日韩精品无码专区加勒比|