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