“切忌浮躁”——我想這是在任何學(xué)習(xí)方法中,都會特意提出來的。
在國內(nèi)的幾個論壇也混了幾年,甚至眼看著曾經(jīng)轟轟烈烈的javaunion從成長到消失。在javaunion ,chinajavaworld,dev2dev,javaresearch,cn-java等論壇上,也相遇或結(jié)識了很多java愛好者,有經(jīng)驗豐富者,也有初出茅廬者。
其實,國內(nèi)技術(shù)論壇,是個很奇怪很有意思的地方。從這里成長了一批批的開發(fā)者,但也從這里消失了一批批的開發(fā)者。猶記得javaunion論壇曾經(jīng)的一篇名為“為什么兩年前的問題,依然在今天還在重復(fù)的問”的帖子,引起了很大的爭論和深思。這個問題的探討,不是本篇的主題,拿到這里來,只是作為一個引子,引出我今天要說的話題。不過,建議大家回頭可以想一想。
其實,在接觸的java愛好者中,還是初學(xué)者居多,而其中不乏有“好高騖遠(yuǎn),心浮氣躁”者。先舉個例子吧,這個例子就發(fā)生在我身邊,我的一個朋友身上。我想,這樣的例子,在很多人身上都有可能發(fā)生,如果不加注意的話。
事情是這樣的:
我的一位好友,他以前是學(xué)asp的,畢業(yè)后也從事的是asp網(wǎng)頁編程工作。大家也知道了,最近兩年,asp編程越來越少了(當(dāng)然待遇也普遍走低,而這時候, java卻在逐漸的火爆)。他說他想轉(zhuǎn)java,問我該怎么學(xué)。我說“先看書吧,看完書再說”,借了他一本《java核心技術(shù)——基礎(chǔ)篇》,并告訴他,哪些是應(yīng)該先看的,哪些是需要仔細(xì)看得,哪些是需要多看幾遍的??墒?,第三天就跑過來告訴我,他去了一家用java開發(fā)的公司,說公司用ejb編程,并說他也開始用ejb編程了。(后來,我才知道他是照著別人的例子依葫蘆畫瓢了)。
如果事情到這里的時候,接下來,俺們這位A兄,如果抽時間能夠?qū)ava基礎(chǔ)好好彌補,一些j2ee體系或者api知識補充一下,發(fā)展前景就很不錯了。
可惜的是,半年以后,這位朋友,依然停留用ejb依葫蘆畫瓢的編程上,半點開創(chuàng)性的編程都沒有。(我想,應(yīng)該說,是沒有內(nèi)容可以讓他擴充了吧)。不過,更可惜的是,他至今還似乎沒有意識到這些,甚至在與朋友們交談的時候,他還會自豪的說“他用了ejb”。
這個故事到這里的時候,是個悲慘的結(jié)局,至少目前是的。我的這位朋友,面對java,也只會告訴別人“他用了ejb”。
今年,包括明年將召開的“Java One”大會,都有一個共同的主題——推廣Java的普及。其實,這也變相的告訴了我們,至少在現(xiàn)在,java的初學(xué)者還是很多,而且今后步入這一行業(yè)的初學(xué)者也會更多。
越遲的進(jìn)入java這個領(lǐng)域,對大多數(shù)來說,就會面對更大的競爭壓力,因為你的同行比你早進(jìn)入了半年。
當(dāng)一位新進(jìn)入的初學(xué)者還在看java 面向?qū)ο蟮母拍畹臅r候,發(fā)現(xiàn)同行們已經(jīng)在看的是jsp/servlet了,而這個行業(yè)已經(jīng)在流行ejb了。心急如焚的這位,就開始匆忙的學(xué)習(xí)jsp。匆忙的配置好tomcat,匆忙的寫了兩個成功jsp頁面后,發(fā)現(xiàn)身邊很多同事開始熱衷ejb了,于是又開始匆忙了編ejb。寫了沒幾天,突然發(fā)現(xiàn)原來很流行 struts——struts是什么東東呢,于是又開始匆忙的學(xué)。學(xué)了沒幾天,出去一聚會,發(fā)現(xiàn)身邊的人,都在聊什么java設(shè)計模式。于是一拍腦袋,又開始學(xué)設(shè)計模式……
也許我寫的有些夸張了,不過,現(xiàn)實中真的不乏有這樣的情況。
當(dāng)然,這個行業(yè)的發(fā)展也過于迅速,很多東東,我們剛剛了解的時候,就需要去應(yīng)用它了。
“浮躁”,讓很多人,陷入了不可自拔的越陷越深的循環(huán)
“浮躁”,也讓很多人,在經(jīng)過幾年的奔波后,發(fā)現(xiàn)什么也沒有學(xué)到
《Thinking in Java》從它出世的那一刻起,就被賦予了java圖書中的圣典。他成為圣典,并不是它說了多少知識,多少api。它只說了更多的“基礎(chǔ)知識”,它告訴和重復(fù)說的,就是“這里是基石,你將站在這里,看的更遠(yuǎn)”
今天匆忙的寫了這篇“引出篇”,接下來還打算寫兩篇“分析篇”“勸導(dǎo)篇”。在此有言語錯誤的地方,望斧正。
同時,也真誠的希望,大家在學(xué)習(xí)java的時候,切忌浮躁。知識是需要沉淀的;思想也是在不斷的學(xué)習(xí)、磨練中走向成熟的;而技術(shù)也是在不斷的創(chuàng)造中開拓的。
知識是需要沉淀的;思想也是在不斷的學(xué)習(xí)、磨練中走向成熟的;而技術(shù)也是在不斷的創(chuàng)造中開拓的。
在《引出篇》中,我簡單的舉了一個身邊的例子,以及夸張的描述了一個浮躁學(xué)習(xí)的狀態(tài)。這些只簡單的點出了浮躁心態(tài)的表象,那么現(xiàn)在讓我們來分析一些根源。
在《引出篇》的議論中,有朋友提到“軟件業(yè)的浮躁”一詞,也建議在“分析篇”中從這方面分析一下。有關(guān)“軟件業(yè)”之類的議論,在各大論壇或網(wǎng)站上比比皆是,有抱有積極心態(tài)的,有唉聲嘆氣的,有發(fā)牢騷的,也有打抱不平的——但這些遠(yuǎn)遠(yuǎn)超越了本篇的主題,也超越了我作為一名開發(fā)者的眼光。
正如題目所說的那樣——“小議”。從自己說起,從自己的角度說起,從自己身邊更多的java開發(fā)者說起。
其實,現(xiàn)實中,絕大多數(shù)開發(fā)者,都有或多或少的浮躁心態(tài),真正能夠保持“穩(wěn)重、矜持”的還是很少。因為在剛開始學(xué)習(xí)java的時候,難免會走些彎路,走些錯路;在經(jīng)驗越來越豐富的時候,也難免會因為一兩次的成功而驕傲。
接下來主要從三個方面闡述:
?。ㄒ唬?nbsp; 轉(zhuǎn)行中的浮躁心態(tài)
?。ǘ?nbsp; 初學(xué)java的浮躁心態(tài)
?。ㄈ?nbsp; 經(jīng)驗越來越多,而引出的浮躁心態(tài)
?。ㄒ唬┺D(zhuǎn)行中的浮躁心態(tài)
在java開發(fā)者中,不乏有從其他領(lǐng)域轉(zhuǎn)行過來的。不論是因為自主轉(zhuǎn)行,還是因為公司轉(zhuǎn)型而造成的轉(zhuǎn)行。
1、從自主轉(zhuǎn)行說起
先從自主轉(zhuǎn)行說起吧,這主要包括兩類開發(fā)者:
一類是以學(xué)生為主的,特別是以學(xué)計算機軟件專業(yè)的為主。轉(zhuǎn)行時期大多在大三下或大四上,因為那時候要找工作了。這兩年,從java的就業(yè)形勢來說,還是比較好的。很多原先學(xué)vb,vc的就開始轉(zhuǎn)java了。
一類是剛剛工作的為主。轉(zhuǎn)行期,大多在畢業(yè)一兩年左右。具體表現(xiàn)在,工作一兩年后,發(fā)現(xiàn)所從事的行業(yè)越來越不景氣,所從事的語言越來越不好找工作,而這時候,java正在逐漸火爆起來。于是開始學(xué)習(xí)java,為轉(zhuǎn)行或跳槽作準(zhǔn)備。
從這些“自主轉(zhuǎn)行”的java開發(fā)者中,我們可以看出,轉(zhuǎn)行很大一方面是有“利益”驅(qū)動的。不論是為獲得一個好就業(yè)機會,還是為了獲取一份好的薪水。這個無可厚非,俺自己曾經(jīng)學(xué)習(xí)java就是因為為了就業(yè)。
但是正因為這樣,學(xué)習(xí)java很可能就帶有很大的“行業(yè)流行性”。比如現(xiàn)在很流行struts,就會有很多人剛接觸java,就開始一窩蜂的學(xué)struts,不論當(dāng)時是否明白servlet,是否明白java/io。
這種浮躁心態(tài),很容易受外界環(huán)境影響。也很容易在后來的學(xué)習(xí)矯正,當(dāng)然也很容易犯下面(三)提到的因為經(jīng)驗越來越多而浮躁的錯誤。
有一句很哲理性的話,叫“我們生存在這個環(huán)境,為了生存,我們首先就必須適應(yīng)這個環(huán)境”。面對這種浮躁心態(tài),我們也許暫時只能說——“如果你有時間,請回過頭去,花些時間,看看java基礎(chǔ)。哪怕只是業(yè)余的時間,抽空看看”
2、從公司轉(zhuǎn)型說起
然后讓我們來看看因為公司轉(zhuǎn)型而造成的轉(zhuǎn)行吧。
公司為了發(fā)展,轉(zhuǎn)型是一種較為正常的商業(yè)性行為,不論是從java轉(zhuǎn)到vc,還是從vc轉(zhuǎn)到j(luò)ava。反正結(jié)局一樣,轉(zhuǎn)行了。下面讓我們來看看會存在什么樣的浮躁心態(tài)。
最主要的表現(xiàn)在,經(jīng)過簡單的培訓(xùn)后,能用java開發(fā),滿足公司應(yīng)用了。這時候,開發(fā)者會認(rèn)為java不過如此簡單:反正vc和java都是面向?qū)ο螅凑齤sp和asp都是編程,久而之久,這就心態(tài)就會蔓延,再結(jié)果就是不思進(jìn)取。再加上很流行一種說法“重要的是思想,用什么語言無所謂”。
面對這種情況,還有些不好處理的就是,受先前經(jīng)驗的影響,一般人很難去勸解這類轉(zhuǎn)行者:舉個例子吧,比如你學(xué)習(xí)了java一年,你的一位轉(zhuǎn)行的同事先前做了幾年其他語言的開發(fā)工作,現(xiàn)在開始轉(zhuǎn)行java。這個時候,如果你如告訴他,該這么學(xué)習(xí)java,該注意這個那個。那么你會獲得什么呢?除了獲得別人的翻白眼,估計很難獲取其他的了(當(dāng)然,如果運氣好,如果那位同事是個謙遜的人,說不定是另一番情景)
當(dāng)然。對于一些很有扎實基本功,思想也很活躍的開發(fā)者來說。轉(zhuǎn)行java不過是用另一種語言而已。雖然java的體系很龐雜,不過對于他們來說,了解或應(yīng)用,只是時間問題而已。