在日常學(xué)習(xí)、工作或生活中,大家總少不了接觸作文或者范文吧,通過(guò)文章可以把我們那些零零散散的思想,聚集在一塊。范文書(shū)寫(xiě)有哪些要求呢?我們?cè)鯓硬拍軐?xiě)好一篇范文呢?以下是我為大家搜集的優(yōu)質(zhì)范文,僅供參考,一起來(lái)看看吧
程序員修煉之道 程序員的修煉篇一
第一章:
關(guān)于編程的各種話(huà)題:個(gè)人責(zé)任,曳光彈開(kāi)發(fā),調(diào)式策略,源程序設(shè)計(jì),按合約設(shè)計(jì),重構(gòu),無(wú)情測(cè)試。
編程是一種技藝,一種需要用心學(xué)習(xí)的技藝。
在所有的弱點(diǎn)中,最大的弱點(diǎn)就是害怕暴露弱點(diǎn)。
注重實(shí)效的程序員對(duì)他或她的職業(yè)生涯負(fù)責(zé),并且不害怕承認(rèn)無(wú)知和錯(cuò)誤。
我們可以為我們的能力自豪,但是對(duì)于我們的缺點(diǎn)-----還有我們的無(wú)知和我們的錯(cuò)誤----我們必須誠(chéng)實(shí)。
破窗戶(hù)的故事
一扇破窗戶(hù),只要那么一段時(shí)間不修理,就會(huì)漸漸給建筑的居民帶來(lái)一種廢棄感-------一種職權(quán)部門(mén)不關(guān)心這座建筑的感覺(jué)。于是又一扇窗戶(hù)破了。人們開(kāi)始亂扔垃圾。出現(xiàn)了亂涂亂畫(huà)。嚴(yán)重的結(jié)構(gòu)損壞開(kāi)始了。在相對(duì)較短的一段時(shí)間里,建筑就被毀得超出了業(yè)主愿意修理的程度,而廢棄感變成了現(xiàn)實(shí)。(不要容忍破窗戶(hù)(低劣的設(shè)計(jì)、錯(cuò)誤的決策、或是糟糕的代碼))
不做井里之蛙,更不做鍋里之蛙。(井里之蛙看不到外面的世界,鍋里之蛙被慢慢煮熟卻還不知道怎么死的)
早起的鳥(niǎo)兒有蟲(chóng)吃,但是早起的蟲(chóng)呢?
簡(jiǎn)單而得體地阻止你的問(wèn)題。記住你是在請(qǐng)求幫助,不要顯得好像是在要求對(duì)方回答。除非你能夠與他人交流,否則就算你擁有最好的主意、最漂亮的代碼、或者是最注重實(shí)效的想法,最終會(huì)毫無(wú)結(jié)果。沒(méi)有有效的交流,一個(gè)好想法就只會(huì)是一個(gè)無(wú)人關(guān)心的孤兒。
鼓勵(lì)大家通過(guò)提問(wèn)來(lái)交談,或是讓他們總結(jié)你告訴他們的東西。
盤(pán)書(shū)焱 第 1 頁(yè) 2014/1/3
程序員修煉之道 程序員的修煉篇二
《程序員修煉之道》讀后感
編程技術(shù)就是程序員的手藝,你的程序就是你的藝術(shù)品。時(shí)刻關(guān)注自己的技藝,保持熱情、保持好奇,爭(zhēng)取做到富有專(zhuān)長(zhǎng)而又多才多藝。
看似樸素的道理,實(shí)際是若干經(jīng)驗(yàn)的總結(jié),就像這本書(shū)的自序所講的,這是一本包含有許多樸素的經(jīng)驗(yàn),寫(xiě)給注重實(shí)效的程序員的一本“演員的自我修養(yǎng)”。
簡(jiǎn)單和朋友們分享幾點(diǎn):
怎樣提出你的問(wèn)題
1:確切地知道你想要問(wèn)什么,并盡量明確具體;
2:小心而得體地組織你的問(wèn)題,記住你是在請(qǐng)求幫助;
3:發(fā)郵件時(shí)請(qǐng)使用有意義的主題;
4:坐回椅子上,耐心等候
破窗
團(tuán)隊(duì)不能容忍破窗(產(chǎn)品的不完善的地方),需要指定人修復(fù),不能一直放著不管。當(dāng)你看到糟糕的設(shè)計(jì)、錯(cuò)誤的決策和糟糕的代碼時(shí),修正它們。在工作中,很容易對(duì)源源不斷的bug不耐煩,或許被自己說(shuō)服僥幸繞過(guò),以后就會(huì)有更多的直至難以修復(fù)。破窗戶(hù)講的故事是一個(gè)小區(qū)的一扇窗戶(hù)沒(méi)有及時(shí)維修導(dǎo)致整個(gè)小區(qū)陷入被更多破壞的現(xiàn)實(shí),人們?cè)傧肫鹁S修時(shí),代價(jià)巨大,治安特別好的地區(qū)也對(duì)破窗嚴(yán)格治理。
不要恐慌
做一次深呼吸,思考什么可能是bug的原因。記得剛?cè)雸F(tuán)隊(duì)時(shí),我時(shí)常會(huì)對(duì)難以捉摸,尤其是不能復(fù)現(xiàn)的bug感到恐懼,但細(xì)細(xì)尋找,你還是能看到蛛絲馬跡。
溫水煮青蛙
個(gè)人和團(tuán)隊(duì)假如一直在一個(gè)假設(shè)的環(huán)境或者需求或者條件下繼續(xù)下去,就很可能像那只可憐的青蛙一樣,或者定時(shí)的檢測(cè)下環(huán)境或條件或需求是否變化,或者團(tuán)隊(duì)里面專(zhuān)門(mén)有人來(lái)檢測(cè)
重復(fù)的危害
不要在系統(tǒng)各處對(duì)知識(shí)進(jìn)行重復(fù)。作為程序員,我們收集、組織、維護(hù)和利用知識(shí)。我們?cè)谝?guī)范中記載知識(shí)、在運(yùn)行的代碼中使其活躍起來(lái)并將其用于提供測(cè)試過(guò)程中所需的檢查。遺憾的是,知識(shí)并不穩(wěn)定。所有這些不穩(wěn)定都意味著我們要把很大一部分時(shí)間花在維護(hù)上,重新組織和表達(dá)我們的系統(tǒng)中的知識(shí)。程序員須持續(xù)不斷地維護(hù)。我們的理解逐日變化,當(dāng)我們?cè)O(shè)計(jì)或編碼時(shí),出現(xiàn)了新的需求。環(huán)境或許變了。不管原因是什么,維護(hù)都不是時(shí)有時(shí)無(wú)的活動(dòng),而是整個(gè)開(kāi)發(fā)過(guò)程中的例行事務(wù)??煽康亻_(kāi)發(fā)軟件、并讓我們的開(kāi)發(fā)更易于理解和維護(hù)的惟一途徑,是遵循我們稱(chēng)之為dry的原則:系統(tǒng)中的每一項(xiàng)知識(shí)都必須具有單一、無(wú)歧義、權(quán)威的表示。
正交性
不要把任何一項(xiàng)知識(shí)分散在多個(gè)系統(tǒng)組件中。在計(jì)算技術(shù)中,該術(shù)語(yǔ)用于表示某種不相依賴(lài)性或是解耦性。如果兩個(gè)或更多事物中的一個(gè)發(fā)生變化,不會(huì)影響其他事物,這些事物就是正交的。非正交的例子:直升機(jī)駕駛操作的各個(gè)控制器之間就是相互影響的,不是正交的。
正交的好處就是為了可以局部修正(local fix)。
何時(shí)使用異常
將異常用于異常的問(wèn)題。例如:文件讀寫(xiě),例程返回值,各種狀態(tài)異常檢測(cè),服務(wù)器超時(shí)等異常情況,都需要使用異常,通常為異常分等級(jí),可以?huà)伋霎惓#蛘邔惓?xiě)入日志。
交流
我們不是活在真空世界,需要花大量時(shí)間與人交流。只有當(dāng)你是在傳達(dá)信息時(shí),你才是在交流。
有效交流的幾種方法:知道你想要說(shuō)什么,了解你的聽(tīng)眾,選擇時(shí)機(jī),選擇風(fēng)格,讓文檔美觀,讓聽(tīng)眾參與,做傾聽(tīng)者,回復(fù)他人。
定期為你的知識(shí)資產(chǎn)投資
讓學(xué)習(xí)成為習(xí)慣。編程語(yǔ)言、技術(shù)日新月異,小伙伴們都感受至深,幸運(yùn)的是我們的知識(shí)獲得比任何行業(yè)都更加容易和方便,大量的社區(qū),教程和熱心的作者。書(shū)中也給程序員提了幾點(diǎn)建議,每年學(xué)習(xí)一門(mén)新的語(yǔ)言,每個(gè)季度閱讀一本技術(shù)書(shū)籍等。
讓復(fù)用變得容易
如果復(fù)用很容易,人們就會(huì)去復(fù)用。創(chuàng)造一個(gè)支持復(fù)用的環(huán)境。將相同的功能抽離出來(lái),可能會(huì)大量用到的方法使用靜態(tài)關(guān)鍵字。
在你的作品上簽名
過(guò)去時(shí)代的會(huì)陷入自我欣賞中,他其實(shí)還有一個(gè)作用,我對(duì)代碼負(fù)責(zé),我測(cè)試過(guò)并確保他的良手藝人為能在他們的作品上簽名而自豪。你也應(yīng)該如此。坦白的說(shuō),簽名之后再看這段代碼會(huì)非常愉悅,有時(shí)還好運(yùn)行,也是一種自我監(jiān)督吧。
“我的源碼讓貓吃了”,想想作為程序員的我們,是不是經(jīng)常會(huì)幫自己解脫,向領(lǐng)導(dǎo),測(cè)試,客戶(hù)推卸責(zé)任,其實(shí)對(duì)于他們仿佛也就好比聽(tīng)“我的源碼讓貓吃了”這句話(huà),是不是很諷刺?不管我們某個(gè)人基礎(chǔ)再扎實(shí),解決問(wèn)題的能力再?gòu)?qiáng),如果缺失了對(duì)自己的軟件的責(zé)任,一定不會(huì)有好的工作成果。
很多很多,這些不是做過(guò)一次兩次就說(shuō)明已經(jīng)掌握了,需要一個(gè)持續(xù)的過(guò)程去注意,實(shí)踐,直到他們成為你的習(xí)慣,這樣,你才能成為一個(gè)“專(zhuān)家程序員”。
來(lái)源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問(wèn)題,請(qǐng)聯(lián)系我們及時(shí)刪除。
程序員修煉之道 程序員的修煉篇三
才智尚招聘網(wǎng)
中國(guó)it程序員長(zhǎng)生不老之道
大學(xué)里學(xué)完計(jì)算機(jī)專(zhuān)業(yè)后,畢業(yè)后從事了近20年的it。這期間每次大學(xué)同學(xué)聚會(huì)都會(huì)聽(tīng)到這樣的詰問(wèn):“還在寫(xiě)代碼哪?”似乎畢業(yè)后一直在寫(xiě)代碼是一件丟人的事情。這個(gè)月參加了大學(xué)同學(xué)畢業(yè)20年的聚會(huì),到會(huì)的14位計(jì)算機(jī)系的老同學(xué),有做測(cè)試的,有做硬件維修的,有做售前的,有做售后的,有做金融的,有做國(guó)企高管的,就是沒(méi)有一個(gè)還在做編程的。雖然就我一個(gè)做軟件開(kāi)發(fā)顧問(wèn),還在寫(xiě)點(diǎn)代碼,但已經(jīng)沒(méi)有一個(gè)真正意義上的程序員了。可以這樣說(shuō),在中國(guó),無(wú)論是企業(yè)還是個(gè)人,都普遍認(rèn)為程序員是吃青春飯的,程序員的職業(yè)生涯是很短暫的,一般也就是10年之內(nèi)。
相比之下,美國(guó)就不是這樣。一個(gè)美國(guó)人,出生于1961年,從23歲開(kāi)始做程序員,39歲做軟件咨詢(xún)師,43歲做公司董事,49歲做首席科學(xué)家,從50歲(即2011年1月)開(kāi)始至今在facebook做程序員,開(kāi)發(fā)和優(yōu)化一個(gè)用于處理消息傳輸?shù)腸++的服務(wù)器。他就是發(fā)明極限編程xp和測(cè)試驅(qū)動(dòng)開(kāi)發(fā)tdd的美國(guó)程序員kent beck。
才智尚招聘網(wǎng)
是什么力量驅(qū)使kent beck在做過(guò)了公司董事之后,還在50多歲的高齡繼續(xù)做程序員呢?這個(gè)問(wèn)題還是等找機(jī)會(huì)我問(wèn)問(wèn)kent本人吧。另外一方面,即使kent回答了這個(gè)問(wèn)題,對(duì)于我們的幫助也很有限,因?yàn)樗敲绹?guó)人,咱們是中國(guó)人,文化不同,觀念不同,環(huán)境不同,無(wú)法效仿。
那么,在中國(guó)這樣的環(huán)境下,中國(guó)程序員就不能像kent那樣能保持程序員職業(yè)生涯“長(zhǎng)生不老”嗎?
7歲的兒子喜歡聽(tīng)小布丁里單田芳爺爺講的評(píng)書(shū)《西游記》,其中有一段美猴王尋訪長(zhǎng)生不老之道的一段,在《西游記》第一回中,原文如下:
美猴王享樂(lè)天真,何期有三五百載。一日,與群猴喜宴之間,忽然憂(yōu)惱,墮下淚來(lái)。眾猴慌忙羅拜道:“大王何為煩惱?”猴王道:“我雖在歡喜之時(shí),卻有一點(diǎn)兒遠(yuǎn)慮,故此煩惱?!北姾镉中Φ溃骸按笸鹾貌恢?!我等日日歡會(huì),在仙山福地,古洞神州,不伏麒麟轄,不伏鳳凰管,又不伏人間王位所拘束,自由自在,乃無(wú)量之福,為何遠(yuǎn)慮而憂(yōu)也?”猴王道:“今日雖不歸人王法律,不懼禽獸威服,將來(lái)年老血衰,暗中有
才智尚招聘網(wǎng)
閻王老子管著,一旦身亡,可不枉生世界之中,不得久住天人之內(nèi)?”眾猴聞此言,一個(gè)個(gè)掩面悲啼,俱以無(wú)常為慮。
只見(jiàn)那班部中,忽跳出一個(gè)通背猿猴,厲聲高叫道:“大王若是這般遠(yuǎn)慮,真所謂道心開(kāi)發(fā)也!如今五蟲(chóng)之內(nèi),惟有三等名色,不伏閻王老子所管?!焙锿醯溃骸澳阒侨热耍俊痹澈锏溃骸澳耸欠鹋c仙與神圣三者,躲過(guò)輪回,不生不滅,與天地山川齊壽?!焙锿醯溃骸按巳呔佑诤嗡俊痹澈锏溃骸八辉陂惛∈澜缰?,古洞仙山之內(nèi)。”猴王聞之,滿(mǎn)心歡喜,道:“我明日就辭汝等下山,云游海角,遠(yuǎn)涉天涯,務(wù)必訪此三者,學(xué)一個(gè)不老長(zhǎng)生,常躲過(guò)閻君之難。”噫!這句話(huà),頓教跳出輪回網(wǎng),致使齊天大圣成。
你看,在中國(guó)傳統(tǒng)文化里,有三種人是能長(zhǎng)生不老的,他們分別是“佛”、“仙”和“神圣”,分別對(duì)應(yīng)著“釋”、“道”和“儒”。
中國(guó)的程序員們,如果能夠按照儒釋道闡釋的方法,在自己的程序員職業(yè)生涯中,不斷修行軟件開(kāi)發(fā)的心法和手法,最后達(dá)到“佛”、“仙”和“神圣”的境界,不就成為像kent beck那樣長(zhǎng)生不老的程序員了嗎?
程序員修煉之道 程序員的修煉篇四
從2002開(kāi)始接觸java學(xué)會(huì)helloworld這么經(jīng)典的程序到如今不知不覺(jué)已經(jīng)十年啦,十年中
親耳聽(tīng)到過(guò)不少大牛的演講,見(jiàn)到過(guò)項(xiàng)目中的神人在鍵盤(pán)上運(yùn)指如飛的編程速度,當(dāng)時(shí)就
被震撼了。當(dāng)編程越來(lái)越成體力活,我們還能有自己的思想,還能修煉為java系統(tǒng)級(jí)別的
程序員嘛?學(xué)習(xí)與修煉以下知識(shí)與技能,幫你早日達(dá)成愿望。
一:java語(yǔ)言學(xué)習(xí)
對(duì)線程(thread),串行化,反射,網(wǎng)絡(luò)編程,jni技術(shù),容器(map,list, iterator), 類(lèi)加載器
(classloader),輸入輸出流,垃圾回收機(jī)制,有比較深入的了解,最起碼做過(guò)項(xiàng)目應(yīng)用。有
過(guò)java項(xiàng)目的性能優(yōu)化經(jīng)驗(yàn),最起碼掌握一種性能監(jiān)視工具的使用,熟悉jvm參數(shù),最起
碼知道可以在jvm啟動(dòng)時(shí)指定不同垃圾回收機(jī)制,以及不同垃圾回收機(jī)制之間的
差別,熟悉jvm參數(shù)優(yōu)化。
二:j2ee方面
最好知道jdbc規(guī)范是怎么回事情,面對(duì)oracle數(shù)據(jù)庫(kù)如果告訴你jdbc驅(qū)動(dòng)不能用了,你
還知道有oci驅(qū)動(dòng)可以。掌握常見(jiàn)的sql語(yǔ)句,熟悉jms,jndi等組件,掌握一套web開(kāi)
發(fā)模式,從前臺(tái)到后臺(tái),有能力整合好這樣的框架。理解并掌握mvc思想,像ssh已經(jīng)實(shí)
現(xiàn)了mvc的分層,幾乎不需要你自己再實(shí)現(xiàn),假設(shè)你開(kāi)發(fā)一個(gè)簡(jiǎn)單的swing程序,你能mvc
就說(shuō)明你真的掌握了mvc的精髓。有能力在j2ee前端開(kāi)發(fā)中構(gòu)建自己的mvc模式,知道
什么是web2.0,知道什么是soa,saas,saap等含義
三:理解并能合理運(yùn)用設(shè)計(jì)模式,uml建模
知道并理解設(shè)計(jì)模式中蘊(yùn)含的幾種基本原則如:里氏替換原則,開(kāi)閉原則,合成復(fù)用原則,依賴(lài)倒置原則有很好的理解,并能舉例說(shuō)明。對(duì)常用的設(shè)計(jì)模式如工廠模式,單例模式,觀
察者模式,責(zé)任鏈模式,橋接模式等知道靈活運(yùn)用,明白什么是回調(diào)(callback)。最后用一位
高人話(huà)來(lái)總結(jié)設(shè)計(jì)模式,它是為了讓軟件更容易被別人讀懂,更容易維護(hù)而產(chǎn)生,設(shè)計(jì)模
式本質(zhì)是程序員之間的交流,如果a用工廠模式設(shè)計(jì)一個(gè)模塊b來(lái)接替,a只要說(shuō)該模塊是
工廠模式實(shí)現(xiàn),b維護(hù)起來(lái)應(yīng)該容易得多,所以設(shè)計(jì)模式是關(guān)于交流,不關(guān)于代碼。切忌濫
用設(shè)計(jì)模式。學(xué)會(huì)使用uml建模工具至少熟悉一種url建模工具。
四:注重用戶(hù)體驗(yàn),掌握kiss原則,知道歐卡姆剃刀原則
顧客就是上帝這個(gè)口號(hào)我們已經(jīng)喊了n年了,程序員的勞動(dòng)成果最終也需要轉(zhuǎn)換為服務(wù)提
供給客戶(hù),用戶(hù)體驗(yàn)至關(guān)重要,常??吹降膱?chǎng)景是功能實(shí)現(xiàn)了,軟件很難使用,程序員有個(gè)
很充足的理由我不是美工,其實(shí)注重用戶(hù)體驗(yàn)跟美工八桿子也打不到一起,foxmail的成功
在很大程度是用戶(hù)體驗(yàn)的成功,友好,清晰的用戶(hù)提示,強(qiáng)的容錯(cuò)與糾錯(cuò)設(shè)計(jì)是獲得好的
用戶(hù)體驗(yàn)的不二法門(mén)。傻瓜相機(jī)顧名思義傻子都會(huì)使用,這個(gè)就著名的kiss原則(keep it
simple and stupid)意思是ui設(shè)計(jì)要簡(jiǎn)單明了,傻子一看就知道怎么用,想想我們做出來(lái)的
東西,對(duì)照說(shuō)明書(shū)都不知道怎么用。另外一個(gè)就是最著名的例子iphone手機(jī)外觀設(shè)計(jì),是 典型的歐卡姆剃刀設(shè)計(jì)原則來(lái)完成人機(jī)交互。
五:自動(dòng)測(cè)試與軟件配置管理(scm)實(shí)現(xiàn)
知道什么是軟件配置管理,知道hudson微機(jī)原理鬧危機(jī),匯編語(yǔ)言不會(huì)變,實(shí)變函數(shù)學(xué)
十遍。計(jì)算機(jī)基礎(chǔ)知識(shí)被大家普遍忽視。從今天開(kāi)始好好學(xué)習(xí)吧……
十一:java代碼反編譯與代碼保護(hù)
java編譯產(chǎn)生字節(jié)碼,因而可以被輕松的逆向工程(反編譯),微軟的c#生產(chǎn)的dll也一樣可
以被輕松反編譯。正式由于這個(gè)原因產(chǎn)生了許多java開(kāi)源的代碼保護(hù)工具,而proguard是
其中佼佼者,已經(jīng)被google集成在android之中用于java代碼保護(hù),訪問(wèn)這里了解更多:
http:///
十二:努力成為某個(gè)行業(yè)或者領(lǐng)域骨干
面對(duì)漫長(zhǎng)的職業(yè)生涯,要想不被淘汰,必須具備一招鮮吃遍天下的能力,選擇自己感興趣的
方向,努力而深入的研究,計(jì)算機(jī)技術(shù)發(fā)展到今天已經(jīng)細(xì)分很細(xì),努力研究一種java開(kāi)源
框架或者開(kāi)源http服務(wù)器源碼或者研究過(guò)網(wǎng)絡(luò)爬蟲(chóng)源碼或者webkit內(nèi)核,不愁沒(méi)有人要
你。如果你是非常了解金融,企業(yè)erp,證券,保險(xiǎn),移動(dòng)應(yīng)用行業(yè)的應(yīng)用開(kāi)發(fā)業(yè)務(wù)的人,一樣不用愁工作。這些知識(shí)不隨語(yǔ)言而改變,努力做一個(gè)有核心競(jìng)爭(zhēng)力的java程序員。
十三:提高語(yǔ)言與書(shū)面表達(dá)能力,掌握基礎(chǔ)的項(xiàng)目管理知識(shí)
文檔與語(yǔ)言表達(dá)能力是最好的向外界展現(xiàn)自己能力的方式,很多程序員編程能力很高,表達(dá)
能力一般,linux能夠成功,除了歸功于網(wǎng)絡(luò)社區(qū)的力量之外,也得益于linux作者本人給各
大基金會(huì)寫(xiě)信,宣傳推廣,試想如果沒(méi)有良好的書(shū)面語(yǔ)言表達(dá)能力,即使linux系統(tǒng)再優(yōu)秀,卻無(wú)法被準(zhǔn)確表達(dá),失去各大基金會(huì)的支持,linux還會(huì)像今天這么好的局面嘛。所以重視
文檔,重視提升溝通與表達(dá)能力,才有可能成為java系統(tǒng)程序員。掌握基本的2/8原則,學(xué)
會(huì)將模塊細(xì)化分配給不同的人,預(yù)見(jiàn)并控制項(xiàng)目風(fēng)險(xiǎn),把握項(xiàng)目進(jìn)度,優(yōu)化流程,合理的時(shí)
間管理,了解tdd,熟悉敏捷開(kāi)發(fā)模式,常規(guī)軟件開(kāi)發(fā)模式。
十四:掌握英語(yǔ),良好的讀寫(xiě)能力
英語(yǔ)是計(jì)算機(jī)的母語(yǔ),掌握好英語(yǔ)對(duì)于閱讀英文資料學(xué)習(xí)新技術(shù)大有幫助,我的建議是盡量
讀英文原版書(shū),如果是算法方面的可能會(huì)困難一點(diǎn),但是其它像設(shè)計(jì)模式,軟件工程,oo
編程思想等盡量讀原版,提高自己的英文水平,多多訪問(wèn)開(kāi)發(fā)者,code project,程序員天堂,pc-magazine等英文it網(wǎng)站。英語(yǔ)絕對(duì)是你必須修煉與提高的技能。此外英語(yǔ)好在外資企業(yè)
尤其重要,只有外語(yǔ)足夠好才可能在外資企業(yè)中突破職業(yè)瓶頸,向上發(fā)展。
程序員修煉之道 程序員的修煉篇五
? 找其他開(kāi)發(fā)人員合作開(kāi)發(fā)。我們正處在科技?xì)v史上第一個(gè)絕好的時(shí)代,你幾乎不用在意在哪工作、為誰(shuí)工作。只要你有一個(gè)還過(guò)得去的網(wǎng)絡(luò),你就可以和另外一個(gè)在世界任何角落里的人一起來(lái)完成某段程序。我知道,越來(lái)越多的有經(jīng)驗(yàn)的開(kāi)發(fā)人員開(kāi)始把他們的一部分時(shí)間投入到這種知識(shí)共享里。我的朋友evan light特地留出了時(shí)間來(lái)開(kāi)發(fā)一個(gè)幫助ruby愛(ài)好者合作行動(dòng)的網(wǎng)站。我從事這樣的事情也有一段時(shí)間了。你想開(kāi)發(fā)一些floss程序嗎?發(fā)郵件給我,我們會(huì)幫你準(zhǔn)備些東西。
?
?
?
?
? 閱讀經(jīng)典著作:《代碼大全(第二版)》,《程序員修煉之道》,《程序設(shè)計(jì)實(shí)踐》,《設(shè)計(jì)模式》等。閱讀wikiwiki(有時(shí)也被稱(chēng)作wardswiki)。這一條怎么強(qiáng)調(diào)也不為過(guò)。經(jīng)常我會(huì)感覺(jué)到所有我學(xué)到的真正關(guān)于編程的知識(shí)都是在瀏覽這些網(wǎng)站的過(guò)程中慢慢的學(xué)到的。學(xué)習(xí)別人的代碼。github萬(wàn)歲!如果你會(huì)一點(diǎn)ruby,想從別人整理好的現(xiàn)成經(jīng)驗(yàn)入手,你可以讀一下《best of ruby quiz》。參與開(kāi)發(fā)者論壇。如果沒(méi)有這樣的網(wǎng)站,創(chuàng)建一個(gè)。討論問(wèn)題。我不在意你認(rèn)為自己是一個(gè)多么菜的菜鳥(niǎo)。沒(méi)有任何一種形式能比通過(guò)討論一個(gè)問(wèn)題來(lái)學(xué)習(xí)這個(gè)問(wèn)題更有效的方法了。寫(xiě)博客。不要在意是否是原創(chuàng)。互聯(lián)網(wǎng)上很多非常有用的博客都是廣泛的搜集程序員的經(jīng)驗(yàn)和錯(cuò)
誤,以及如何克服這些問(wèn)題的博客。反省是學(xué)習(xí)過(guò)程中最重要的一件事情,寫(xiě)博客能幫助你反省。會(huì)出乎你的意料,你不久就會(huì)收到你的讀者的反饋。
?
?
? 我相信你之前聽(tīng)說(shuō)過(guò)這一條:參與開(kāi)源項(xiàng)目,修改其中的bug或捐獻(xiàn)代碼。丟硬幣。是頭像就選擇vim,否則選擇emacs。學(xué)習(xí)使用這些編輯器。應(yīng)該讓這兩種編輯器伴隨你余下的編程生涯。強(qiáng)大靈活的編輯器會(huì)讓好程序員更好。多學(xué)習(xí)幾種編程語(yǔ)言。但起初應(yīng)該先學(xué)一種語(yǔ)言。你應(yīng)學(xué)習(xí)一種重要的語(yǔ)言,它能讓你對(duì)編程語(yǔ)
言有個(gè)大致的認(rèn)識(shí),讓你第一天就愛(ài)上編程,你需要花大量的時(shí)間去學(xué)習(xí)這種語(yǔ)言中的各種知識(shí),否則你漏掉知識(shí)點(diǎn)或不久就會(huì)忘記。一旦你掌握了這種語(yǔ)言,你需要學(xué)習(xí)新的語(yǔ)言來(lái)驗(yàn)證在第一種語(yǔ)言中學(xué)到的知識(shí)。盡量選擇風(fēng)格迥異的語(yǔ)言。我曾看過(guò)seven languages in seven weeks這本書(shū),它讓我認(rèn)識(shí)了各種各樣的編程模式,很好的書(shū)。
?
具。訂閱跟你使用的語(yǔ)言和平臺(tái)相關(guān)的郵件新聞。人們有時(shí)會(huì)忘了,在各種博客,hacker news,以及twitter里,還有一個(gè)精彩的充滿(mǎn)討論的世界。郵件列表是一個(gè)很通用、很有用的來(lái)比較各種討論觀點(diǎn)的工
?
? stackoverflow是你的朋友。不要花太多的時(shí)間去研究所謂的“最好的“工具。我曾經(jīng)愚蠢的花上數(shù)天或數(shù)周去為某個(gè)項(xiàng)目找出
一種”最好“的框架來(lái)提高開(kāi)發(fā)效率。不要落入這種陷阱。當(dāng)你還是一個(gè)不太熟練的程序員時(shí),選一種大家都在用的語(yǔ)言和框架。重要的是當(dāng)你遇到瓶頸是你知道如何處理。之后你才可以去尋找一種完美的… ?
? 尋找實(shí)習(xí)機(jī)會(huì)。以及最基本的:練習(xí),練習(xí),練習(xí)。在班上練,在家里練。鍛煉編程基本功。編程跟其它技術(shù)一
樣:最終,一切歸結(jié)于練習(xí)。