|
有一句話我一直記得很深,“當(dāng)人深處迷茫之中時(shí)早已不再迷茫”。很繞很矛盾的話,也可能有人聽(tīng)到后會(huì)馬上跳腳喊,我一直迷茫怎么還是迷茫呢?呵呵。靜一下想一下再喊。
大家都這么大了,路該怎么走,你知道么?作為程序員,路該怎么走,你知道么?
05年入學(xué),對(duì)IT一無(wú)所知,對(duì)程序一無(wú)所知,甚至對(duì)自己也是一無(wú)所知。路走到了今天,我感觸確實(shí)不少,寫(xiě)點(diǎn)東西以饗來(lái)者。
科班出身的我們,從開(kāi)始就按部就班的學(xué)著操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu),組成原理;從c到c++,匯編,Java這些又是標(biāo)準(zhǔn)課程。面對(duì)紛繁復(fù)雜的IT界,你每天記住五個(gè)名詞或者縮寫(xiě),到今天我敢說(shuō)你依舊很多東西不知道。難怪不知道怎么走。我們不是選擇太少而是選擇太多。我們得到的信息不是太少而是太多。
不知道現(xiàn)在還有沒(méi)有人疑惑是該學(xué)c++還是學(xué)Java;是該選擇.NET平臺(tái)還是Java平臺(tái);是該學(xué)通信還是學(xué)web;是好好編程還是學(xué)好軟件工程;是學(xué)Python還是ruby;是學(xué)JavaFX還是WPF;是專(zhuān)注windows開(kāi)發(fā)還是去linux;是跟著大家一起SOA還是OO。。。如果這個(gè)單子繼續(xù)列下去,就像死循環(huán)一樣吧,無(wú)終無(wú)止直到崩潰。
但單子上的每一個(gè)選擇又都是那么切身的煩惱著我們。站著說(shuō)話不腰疼的人無(wú)法理解切身的痛。我是從大二下學(xué)期開(kāi)始學(xué)習(xí)的,是突然之間對(duì)作為程序員感了興趣,雖然晚了點(diǎn),但遲到總比不到強(qiáng)。當(dāng)時(shí)我就很迷茫,也不知道該學(xué)什么,當(dāng)時(shí)網(wǎng)上c++還是比較火的,雖然有人說(shuō)它已經(jīng)死去,被什么什么替代,但總有很多人站出來(lái)力爭(zhēng)并有些道理。于是熱血的我斥資買(mǎi)了大量c++經(jīng)典,基本能叫上名來(lái)的經(jīng)典我都買(mǎi)了吧,五本以上。當(dāng)時(shí)看著書(shū)架上一片c++,心情澎湃啊,誰(shuí)說(shuō)c++會(huì)死掉,我跟誰(shuí)玩命。可最后呢,呵呵,不好意思,沒(méi)堅(jiān)持下去,除了effective c++看了一半左右,其他有的翻翻有的連動(dòng)都沒(méi)有,最后把所有書(shū)半賣(mài)半送給同學(xué)了。
然后馬上轉(zhuǎn)到.NET平臺(tái),開(kāi)始學(xué)習(xí)C#,至今都不知道為什么,也許打了雞血,又是心潮澎湃吧。可這次基本算是堅(jiān)持下去了。一如既往,書(shū)架上一片.NET,c#,圖書(shū)館的相關(guān)書(shū)籍也是不知被我借了多少本。我覺(jué)得有一點(diǎn)幸運(yùn)的是我看的第一本.NET書(shū)籍是understanding .NET的中文譯本《.NET大局觀》。看了以后確實(shí)有了一個(gè)不錯(cuò)的大局觀,雖然當(dāng)時(shí)有不少地方看不懂,但足夠了。我知道.NET是平臺(tái),C#什么都不是。如果不理解.NET,學(xué)c#沒(méi)用。以至后來(lái)我跟同學(xué)說(shuō)“Java不是一種語(yǔ)言,c#不能獨(dú)存”,至今想想都很有道理。
于是一路沿著程序員的路走了下去,開(kāi)始去理解OO,間斷的編程序,學(xué)習(xí)web,了解SOA,看《程序員》雜志,總和幾個(gè)哥們高談闊論技術(shù)。其實(shí)我知道自己水平很低,但是我知道我在干什么,而且還有點(diǎn)興趣。足夠啦。
那么再回到題目,路該怎么走。我是那種不愛(ài)聽(tīng)別人話的人,我不同場(chǎng)合跟人說(shuō)過(guò),別人說(shuō)話都是放屁,如果你覺(jué)得香就去聽(tīng),不喜歡就算了,喜歡屁的人還是不多的。我話雖然說(shuō)得很難聽(tīng),但tell the truth,我就是喜歡屁的那種人,我當(dāng)面抵觸背地里就會(huì)想人家說(shuō)得到底對(duì)不對(duì),我自己哪里有問(wèn)題。表里不一啊。
既然是程序員的感悟,再回頭說(shuō)點(diǎn)技術(shù)的路怎么走。技術(shù)大牛們總是喧囂著這鼓吹著那,什么技術(shù)的發(fā)展總是朝著更快更簡(jiǎn)單(很多人說(shuō),孟巖也說(shuō)過(guò),他是個(gè)有爭(zhēng)議的牛人)想想還真對(duì),誰(shuí)不喜歡簡(jiǎn)單點(diǎn)快點(diǎn)啊。但是從一個(gè)技術(shù)跳變到另一個(gè)技術(shù)為什么簡(jiǎn)單了為什么快了。你知道么?
很多人都學(xué)過(guò)c++,先不管編過(guò)多少代碼。C++中的多重繼承大家印象深刻吧,在后來(lái)的高級(jí)語(yǔ)言中都把這個(gè)特性砍掉了。為什么?我不知道。為什么不知道,因?yàn)槲覜](méi)用過(guò)多重繼承,它沒(méi)有給我?guī)?lái)過(guò)巨大的麻煩讓我困惑不已。如果硬讓我說(shuō)多重繼承帶來(lái)的麻煩就是我不知道為什么它被砍掉了。蠻有道理蠻有現(xiàn)實(shí)意味的東西。這一點(diǎn)我也問(wèn)過(guò)SY,因?yàn)槲抑浪庍^(guò)不少c++的程序,而且項(xiàng)目還不太小。他說(shuō)他也沒(méi)被多重繼承煩惱過(guò),也無(wú)從說(shuō)起它的壞來(lái)。
再說(shuō)一個(gè)更有趣的,萬(wàn)惡之源的goto。市面上我們接觸的語(yǔ)言大多都有g(shù)oto,但是所有技術(shù)大牛都說(shuō)不要用。那是萬(wàn)惡之源啊。我用過(guò),在匯編里,因?yàn)閾?jù)我的水平匯編不用goto沒(méi)辦法。可是我的匯編程序小的可憐,根本不足以暴露goto的惡來(lái),所以至今我也不恨它。
再說(shuō)一下重量級(jí)和輕量級(jí),太流行的兩個(gè)詞匯啦,或者說(shuō)輕量級(jí)更流行吧。為什么,因?yàn)樗p吧。哈哈。俗話說(shuō),船小怕風(fēng)浪,船大難掉頭。不大不小又怕風(fēng)浪有難掉頭。所以不要一直不變的以為輕量級(jí)一定是發(fā)展方向。想要迎風(fēng)破浪,沒(méi)有大船也不行。
大家看懂我要說(shuō)什么了吧。所有的技術(shù)變革都是有原因的,即使廠商們?cè)俟拇担际且娴挠心敲椿厥拢麄儾拍苌酚薪槭隆?墒俏覀優(yōu)槭裁磿?huì)對(duì)技術(shù)變革感到迷茫,對(duì)選擇感到困惑,因?yàn)槲覀儾涣私馇耙蚝蠊覀儧](méi)有受到上一種技術(shù)的煎熬,我們沒(méi)有感受到后一種技術(shù)帶來(lái)的便捷。那怎么可能不困惑呢。。。
別人的經(jīng)歷再豐富再有道理,但那不是你的,你依舊不會(huì)真的明了其中的道理。但話說(shuō)話來(lái),我還是不會(huì)用多重繼承的,我還是不會(huì)使用goto的,我還是會(huì)命名規(guī)范的。我還是會(huì)欣然接受技術(shù)變革的。斷代史的特點(diǎn)就是這樣。
那么你現(xiàn)在還會(huì)為選擇了Python的同時(shí)ruby火了而憤怒么?還會(huì)為了選擇了.NET而J2EE異常流行感到遺憾么?
其實(shí)路就在腳下,怎么走看你自己,結(jié)果也只有你自己知道。如魚(yú)飲水啊。去經(jīng)歷那些困難和麻煩,才會(huì)知道簡(jiǎn)單快捷的好處。去經(jīng)歷迷惑才能體味清醒的快樂(lè)。還要去看技術(shù)大牛們的吹噓和感嘆。還是要自己一行一行的敲打垃圾程序。給你十年。夠不夠?
程序員的路是一行一行打出來(lái)的。
有些東西確實(shí)是有感而發(fā),另一些是憤青。
----- 寫(xiě)在后面
by 千冰念@YITIAN Studio
it知識(shí)庫(kù):程序員感悟----路該怎么走,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。