先說個(gè)發(fā)生在自己身上的事情吧:
2003的整個(gè)下半年的私人時(shí)間里更多是偏重workflow方面的理論和技術(shù),卻忽略了新知識(shí)的更新。偶然的機(jī)遇,卻發(fā)覺MDA和AOP已經(jīng)成長起來,而我卻幾乎一無所知。那幾天一直在責(zé)問自己,“為什么我不知道呢”“為什么我沒有關(guān)注呢”。
但是,當(dāng)我花了一些時(shí)間看AOP的資料的時(shí)候,卻突然反問自己“我為什么要知道呢?”。對,我只需要簡單了解,或者說,我只需要稍稍的了解這AOP可以解決什么問題。如果這個(gè)新生物不是我所急需的,或者說起所解決的問題不是我目前所碰到的問題,我為什么需要去花時(shí)間鉆研呢?
接下來的幾天,我放棄了對aop的進(jìn)一步鉆研。僅僅只是將這個(gè)概念和可以解決的問題留在了大腦中??吹搅税?。這樣,我就可以省下一些時(shí)間,更多的投入到我的workflow鉆鉆研中了。
因?yàn)檫@件事情,我考慮了幾天??紤]為什么會(huì)出現(xiàn)這樣情況,考慮如何解決這種問題。于此,便有個(gè)這篇感悟。
其實(shí),多數(shù)有幾年經(jīng)驗(yàn)的java工程師,會(huì)在突然的一瞬間感悟:自己對新知識(shí)反映變得越來越遲鈍。驀然回首,突然會(huì)發(fā)覺短短的半年,又出現(xiàn)了很多新的概念,很多新的api。但是,更多的時(shí)候,我們不得不搖搖頭??新知識(shí)太多了,我們學(xué)不完啊。
也許大家都想到了以前IT很奇怪的狀況:舊人比不過新人。(還好,這兩年?duì)顩r好多了)。雖然一方面是“精力”問題,但是對新事物的敏感度降低,我想也是一方面。
Java這一兩年的發(fā)展,遠(yuǎn)比前幾年要迅猛的多。不論信息流通量,還是知識(shí)廣度,都較前幾年要大。
如果把Java的發(fā)展比作一條流淌的大河,那么那些新知識(shí)(應(yīng)用概念,技術(shù)標(biāo)準(zhǔn)等等),就象一條條匯流的旁支。大家都知道,在匯流的地方,總匯或多或少激起“急流”,激起“漩渦”,激起“波濤”。當(dāng)然,匯流的越多,越頻繁,反映也就越激烈。
那么我們?nèi)绾文軌虮容^良好的解決自己的Technology問題呢?這就是我這幾天思索的核心問題。下面就說說得自己的一些看法:
其實(shí),這也是對新知識(shí)一個(gè)把握度的問題,總的來說,分為四種層次:了其然,知其用,研其究,發(fā)其思。
了其然:對最近新出現(xiàn)的理念技術(shù)能夠有所了解,簡單知道其可以解決什么問題,分析一下是否最近自己所需要應(yīng)用,或可被更好的利用。
知其用:知道如何應(yīng)用這門新技術(shù)。簡單的應(yīng)用一般花費(fèi)不少時(shí)間,但是想復(fù)雜的應(yīng)用,需要耗費(fèi)的時(shí)間和精力可就多了。如果把握不好,盲目的應(yīng)用和學(xué)習(xí),會(huì)浪費(fèi)不少時(shí)間。
研其究:對新技術(shù)新理念研究其深層次的原理,框架,結(jié)構(gòu)。
發(fā)其思:這是最難的一層,首先需要有研其究的基礎(chǔ),這本身就是一個(gè)高難度的事情。而研究之后,能夠發(fā)散思維,擴(kuò)充或本土化改造,則更是艱巨的事情。
所以,做好“了其然”對大多數(shù)java愛好者來說,是個(gè)很關(guān)鍵的問題。做好并不意味著了解的多。每個(gè)開發(fā)者首先需要對自己所從事的行業(yè),愛好,領(lǐng)域有所分析。這樣當(dāng)理念或技術(shù)推陳出新后,能夠很迅速的辨別出那些該被重點(diǎn)關(guān)注,那些該被一般關(guān)注,哪些應(yīng)該被嘗試使用,那些需要深層次的研究??????也就是說,不能夠“了其然”,怎能夠“知其用”和“研其究”。
這樣做的目的無非兩個(gè):
(1) 保持自己對新知識(shí)新理念新技術(shù)的關(guān)注
(2) 將有限的時(shí)間有效合理的利用,用管理學(xué)的角度叫做:資源合理分配。
說實(shí)在,真的很希望更多的java開發(fā)者能夠達(dá)到“發(fā)其思”。中國的軟件業(yè)需要更多的敢于“研其究”“發(fā)其思”的人才,需要更多堅(jiān)持走在Technology道路上的研究人才。