在移動(dòng)互聯(lián)網(wǎng)“泛濫”的今天,越來越多非專業(yè)(這里的非專業(yè)指的是非計(jì)算機(jī)專業(yè)畢業(yè)的程序員)程序員加入到了IT行業(yè)中來了,可能是因?yàn)橐苿?dòng)互聯(lián)網(wǎng)的火爆導(dǎo)致程序員容易就業(yè)而且工資很高,可能實(shí)體行業(yè)不景氣,可能這確實(shí)是互聯(lián)網(wǎng)+的時(shí)代,越來越多的人加入到程序員的行列當(dāng)中來,使這個(gè)行業(yè)魚龍混雜?,F(xiàn)在這個(gè)程序員行業(yè)普遍的問題就是:人數(shù)多,底子薄,基礎(chǔ)差,人均技術(shù)水平就是有問題,找百度,順手Ctrl+C和Ctrl+V就把代碼來寫。管它什么算法,什么性能呢。如何從非專業(yè)走向?qū)I(yè)程序員呢?
1、扎實(shí)基礎(chǔ),不斷學(xué)習(xí)
基礎(chǔ)的重要性其實(shí)不言而喻,基礎(chǔ)是你擴(kuò)展的資本,不了解基礎(chǔ),不扎實(shí)基礎(chǔ),你想進(jìn)一步學(xué)習(xí),了解高精尖是不可能呢,那得多吃力啊,這個(gè)基礎(chǔ)對(duì)于不管是科班出身的還是非科班出身的程序員都很重要,畢竟興趣才是自己最大的動(dòng)力,跟科班不科班沒關(guān)系??赡芸瓢鄬W(xué)的比較全面和系統(tǒng),所以基礎(chǔ)上有可能略勝一籌,可是有興趣的人比科班可能更可怕,說不定懂得更多。
我們生活在一個(gè)很有趣的時(shí)代,互聯(lián)網(wǎng)的存在幾乎使我們到了免費(fèi)學(xué)習(xí)的時(shí)代,技術(shù)分享遍布網(wǎng)絡(luò),想學(xué)習(xí)并非以前那么困難了。在百度上谷歌一下,相關(guān)資料滿屏都是,隨著移動(dòng)互聯(lián)網(wǎng)的火爆,越來越多的人躋身這個(gè)行列當(dāng)中,如果你不學(xué)習(xí),你就會(huì)落伍,停滯不前,直到有一天,這份工作不再需要你,或者外包給一些更廉價(jià)的勞動(dòng)力,甚至被淘汰,所以我們需要不斷的努力學(xué)習(xí)新技術(shù),以保持有力的競(jìng)爭(zhēng)力。我們要擺正心態(tài),對(duì)自己最好的負(fù)責(zé)就是不斷學(xué)習(xí)。
學(xué)習(xí)的地方有很多,比如:
閱讀相關(guān)的雜志,技術(shù)博客,書籍和網(wǎng)站,看那些技術(shù)大牛的分享,肯定會(huì)讓你受益不少。比如:非著名程序員公眾號(hào)里的內(nèi)容就不錯(cuò)嘛!哈哈……
深入了解源碼,閱讀源碼可以讓你真正的感受到那些大牛對(duì)待代碼的嚴(yán)謹(jǐn)與思維的縝密,看看人家是如何運(yùn)用架構(gòu)模式的。
參加一些技術(shù)分享的沙龍,和高手面對(duì)面的交流學(xué)習(xí)。
想學(xué)習(xí),方法多得是,就看自己努不努力。
2、要有強(qiáng)烈的責(zé)任心
專業(yè)程序員的一個(gè)最重要的特點(diǎn),也是核心,就是有責(zé)任心。專業(yè)程序員會(huì)為他們的職業(yè)生涯、預(yù)算、日程安排承諾、錯(cuò)誤、技能技巧負(fù)責(zé)。一個(gè)專業(yè)的程序員不會(huì)將責(zé)任推卸給別人。實(shí)事求是地說,現(xiàn)在的程序員都對(duì)工作非常消極,沒有人督促就慢慢悠悠的做,代碼也是寫的亂糟糟的,沒有任何優(yōu)化,別人看你寫的代碼看的頭都大了。一個(gè)好的程序員是對(duì)自己的代碼有追求的,不僅能完成功能,還能寫的一手好代碼,跟寫的一手好字似的。優(yōu)美的代碼才能讓人賞心悅目,負(fù)責(zé)的態(tài)度才能提高自己的責(zé)任感。有了責(zé)任感才能讓自己更好的成長(zhǎng)。
3、關(guān)心和反復(fù)檢查代碼
一個(gè)好的程序員是對(duì)自己的代碼有追求的,漂亮的代碼就是你的臉面,代碼優(yōu)化的好,你的臉就比較干凈,像個(gè)白面書生,如果代碼雜亂無章,效率低下,感覺這個(gè)程序員的臉就像長(zhǎng)滿了青春痘,不忍直視。
關(guān)心自己的代碼,那是負(fù)責(zé)任的表現(xiàn),如果一個(gè)程序員代碼寫完了,之后就不管了,那是不負(fù)責(zé)任的表現(xiàn),關(guān)心自己的代碼,多讀讀,多看看,比較一下和別人的差別,化繁為簡(jiǎn),逐步優(yōu)化,這樣不僅讓你的代碼嬌小可人,亭亭玉立,更重要的是還能提高自己的能力。把代碼當(dāng)做自己的女朋友,才是正確的做法。不要老是想著coder,coder,因?yàn)閏oder那么多有毛用,代碼依舊難看,自己依舊還是沒有女朋友。好程序員最起碼還是有自己的女朋友的,是吧,代碼。
反復(fù)檢查自己的代碼,就猶如讀書百遍其義自見。不要老是在別人說你代碼有問題的時(shí)候,你就信誓旦旦的說:不可能。就猶如測(cè)試對(duì)著程序員說,這里有bug一樣,第一反應(yīng)肯定是不可能,在我這里沒這個(gè)問題啊,最后還不是老么實(shí)的自己去改bug。責(zé)怪自己的環(huán)境有問題,責(zé)怪編譯器有問題,就是不責(zé)怪自己寫的代碼爛,這絕對(duì)不是一個(gè)專業(yè)程序員應(yīng)該做的。在你責(zé)怪別人之前,先檢查自己的代碼,這才是正解。
4、不懼怕別人的爛代碼
專業(yè)的程序員肯定遇到過很多人寫的爛代碼。非專業(yè)的程序員肯定會(huì)懼怕別的代碼,感覺看完他寫的代碼,再去修改,會(huì)不會(huì)牽一發(fā)而動(dòng)全身呢?補(bǔ)一個(gè)bug,冒出一個(gè)bug,還不如自己重新寫的快呢。相信有這樣想法的程序員肯定占大多數(shù)。
比如:系統(tǒng)很糟糕,并且改變這邊總是會(huì)破壞另一邊不相關(guān)的功能。每次添加模塊,程序員只能想著盡可能少地改變代碼,每次發(fā)布都膽戰(zhàn)心驚。這座軟件的摩天大樓隨時(shí)有坍塌的可能。之所以改動(dòng)代碼會(huì)如此傷腦筋是因?yàn)橄到y(tǒng)太糟糕了。但是即使你知道系統(tǒng)出了問題,卻又因?yàn)橥妒蠹善?,而不得不聽之任之。任何一個(gè)外科醫(yī)生都懂得,傷口要想愈合就必須得切除腐肉。雖然手術(shù)會(huì)帶來痛苦,但絕對(duì)比任傷口發(fā)炎潰爛要好。
不要害怕,沒有人會(huì)在乎當(dāng)你搗鼓代碼的時(shí)候有沒有暫時(shí)破壞了什么東西。只要你做的改變不會(huì)讓項(xiàng)目重新回到開始狀態(tài),就不會(huì)令人崩潰。投入時(shí)間重構(gòu),能讓你受益于項(xiàng)目整個(gè)生命周期。這樣做還有一個(gè)額外的好處是,由于你有過這種處理病危系統(tǒng)的經(jīng)驗(yàn),所以你對(duì)它應(yīng)該如何工作非常內(nèi)行。要善于應(yīng)用這些知識(shí),千萬不要反感這些寶貴的財(cái)富。重新定義內(nèi)部接口,重構(gòu)模塊,重構(gòu)復(fù)制粘貼代碼,并通過減少依賴來簡(jiǎn)化設(shè)計(jì)。
5、學(xué)習(xí)和總結(jié)的能力
程序員是很容易被淘汰的職業(yè),所以要善于學(xué)習(xí)總結(jié)。許多程序員喜歡盲目追求一些編碼的小技巧,這樣的技術(shù)人員無論學(xué)了多少語言,代碼寫起來多熟練,只能說他是一名熟練的代碼民工(碼農(nóng)),他永遠(yuǎn)都不會(huì)有質(zhì)的提高。一個(gè)善于學(xué)習(xí)的程序員會(huì)經(jīng)??偨Y(jié)自己的技術(shù)水平,對(duì)自己的技術(shù)層面要有良好的定位,這樣才能有目的地提高自己。這樣才能逐步提高,從程序員升級(jí)為軟件設(shè)計(jì)師、系統(tǒng)分析員。
責(zé)任編輯:wv
-
程序員
+關(guān)注
關(guān)注
4文章
952瀏覽量
29818
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論