最近很多同事都請年假了,因?yàn)榕R近國慶節(jié),有的同事想讓自己的假期更有連貫性,所以就用年假來調(diào)整國慶節(jié)假期。我和他們不一樣,我們實(shí)習(xí)生是沒有年假的,而且我們就算轉(zhuǎn)正之后還有半年的試用期,試用期內(nèi)也是不準(zhǔn)使用年假的。但是我反而不喜歡放假,我現(xiàn)在超級喜歡這種上班的節(jié)奏,畢竟自己剛剛進(jìn)入社會工作,感覺需要學(xué)習(xí)的東西實(shí)在是太多了,不敢輕易地放松自己?,F(xiàn)在有時間我都會好好利用,因?yàn)槲矣X得合理安排時間真的很重要。在我的電腦上面,有個時間表,上面清晰地寫了自己什么時候?qū)⒁瓿墒裁词?,就像一個備忘錄一樣。 我之所以開始做時間表是因?yàn)槲议_始接到經(jīng)理分配給我的任務(wù),剛接到任務(wù)的時候我非常興奮,感覺終于有機(jī)會去做一些有實(shí)際價值的東西了。我的任務(wù)又涉及到一個新的技術(shù),那是一個開源項(xiàng)目里面的一個部分。這個開源項(xiàng)目是Hadoop,我們需要用到的是里面其中一個分支項(xiàng)目——HBase。而HBase是一個版本化、面向列、分布式的數(shù)據(jù)庫,非常適合大型數(shù)據(jù)的處理。Hadoop本來也是一個大型Java項(xiàng)目,所以使用里的技術(shù)也需要有Java的基礎(chǔ)。而我需要完成的任務(wù)就是寫一個程序,實(shí)現(xiàn)將數(shù)據(jù)文件里面的數(shù)據(jù)導(dǎo)入到HBase數(shù)據(jù)庫里面,并可以做到相應(yīng)的查詢和處理。我覺得這個任務(wù)對于我來說其實(shí)并不復(fù)雜,只是其中涉及到了一些以前從來沒有接觸過的新技術(shù),所以會花更多的時間去學(xué)習(xí)這些新的技術(shù)。 我覺得在接觸到一個新的技術(shù)時,學(xué)會瀏覽文檔時非常重要的。特別是Java方面的技術(shù),API文檔是必不可少的。我一邊編程一邊瀏覽文檔,按照自己需要實(shí)現(xiàn)的功能,去具體查看相對應(yīng)的部分。很快的,我就把整體的框架設(shè)計出來。不過,這個程序是運(yùn)行在Linux系統(tǒng)里面的,除了要學(xué)習(xí)Linux命令之外,還要解決Linux系統(tǒng)的一些依賴性關(guān)系問題。在解決Linux系統(tǒng)依賴性問題的時候,剛開始我不知道可以使用工具,只能靠看代碼。而且有一點(diǎn)是可以肯定的,那就是人工地看代碼發(fā)現(xiàn)的依賴性Jar包根本就不夠完整,當(dāng)程序運(yùn)行的時候,就會拋出異常信息,這個問題必須解決。 在自己網(wǎng)上查看資料之后,問題還是沒有解決,我開始請教有經(jīng)驗(yàn)的同事。同事說我經(jīng)歷的就像當(dāng)年他剛剛進(jìn)來時候的經(jīng)歷,所以他非常建議有什么不懂就應(yīng)該問一下老同事。這位同事推薦我使用Maven這個工具來解決Java庫包之間的依賴性關(guān)系問題,Maven還有一個插件可以安裝在Eclipse里面,在Eclipse里面開發(fā),就可以方便地使用這個插件來導(dǎo)入相對應(yīng)依賴的庫包。根據(jù)這位同事提供的信息,我開始安裝這個插件,并配置在Eclipse里面。為了解決這個問題,我上網(wǎng)找了很多資料,也學(xué)習(xí)了Maven的使用方法。確實(shí),通過這個工具不僅僅可以自動導(dǎo)入庫包,還有其他非常有用的功能。 慢慢地,我的一個個難題都迎刃而解,很快我就把這個任務(wù)完成了。在這周的星期五,我把程序提交到經(jīng)理那里,經(jīng)理對我的成果作出了中肯的評價,他覺得我的代碼雖然可以實(shí)現(xiàn)功能,但是寫得太死了,非常不易于擴(kuò)展。如果需要整合為其他系統(tǒng)中的一個小工具的話,還需要有更好的設(shè)計模式的支持。聽完之后我覺得很有道理,我真的需要學(xué)習(xí)到更多的經(jīng)驗(yàn),做一個好的程序員不是一天就可以的,要有時間和實(shí)踐的磨煉,才能有更好的改善。 |
|