|
是否總是覺得工作特別的枯燥、乏味、無聊,面對成堆的代碼后頭腦開發(fā)犯困,表情開始僵硬,這對你來說簡直就是一種折磨,它甚至和你原先所想象的不一樣,程序員本來應(yīng)該是精力充沛,激情四溢的,幻想著能夠去創(chuàng)造去駕馭所有的東西。歸根結(jié)底是因?yàn)槲覀儗ぷ魇チ伺d趣,因?yàn)槲覀冊絹碓桨l(fā)現(xiàn),情況已經(jīng)超出我們的控制范圍了。我們不知道為什么程序昨天還運(yùn)行得好好的,一覺醒來后就不能正常工作了,我們不知道為什么項(xiàng)目到了后期總是能給我們留下一份刻骨銘心的回憶,為什么在集成測試的時(shí)候我們總是擔(dān)心受怕,總覺得會發(fā)生什么問題似的,而事實(shí)上問題確實(shí)經(jīng)常如期而至。下面針對自己的體會列舉一些解決問題的觀點(diǎn)(希望大家一起來發(fā)表自己的見解):
把握需求
盡可能多地去了解需求挖掘需求,對于不懂的業(yè)務(wù)知識花時(shí)間去學(xué)習(xí),這在開發(fā)階段會避免你做錯(cuò)事,給你節(jié)省很多寶貴的時(shí)間。
了解整體架構(gòu)
或許你并不是架構(gòu)師也不是項(xiàng)目經(jīng)理,而只是一個(gè)coder,你的工作僅僅是去實(shí)現(xiàn)系統(tǒng)中某個(gè)模塊的功能,但我也建議你盡可能地去了解系統(tǒng)的整體架構(gòu),了解其它人都在做些什么。
團(tuán)隊(duì)交流
只有互相交流你們才是一個(gè)團(tuán)隊(duì)而不是幾個(gè)人拼湊在一起,任何問題都可以拿出來交流,并且互相幫助跟互相學(xué)習(xí)。我想這比一個(gè)人整天悶著頭寫代碼感覺要好得多。
基礎(chǔ)決定高度
對于基礎(chǔ)知識,我們應(yīng)該花更多的時(shí)間來學(xué)習(xí),因?yàn)闆]有什么比基礎(chǔ)更能長遠(yuǎn)地讓你受益的了,如果你是做Web開發(fā),HTML、CSS、JavaScript一樣要熟悉,在你的眼里應(yīng)該只有他們而沒有服務(wù)器控件。
編程思想
語言是你手中的劍,語法是招式,而思想則是內(nèi)功,只有內(nèi)功達(dá)到一定的深度,你才能最大程度地發(fā)揮武功的威力,而且這時(shí)候再去學(xué)習(xí)另一個(gè)門武功將顯得容易許多。
設(shè)計(jì)模式
深刻理解面向?qū)ο蟮脑O(shè)計(jì)原則和設(shè)計(jì)模式可以讓你的代碼更加具有魅力,看總這樣的代碼你總能心情愉快,實(shí)際上看著自己的程序因?yàn)樾枨蟮母淖兊珔s沒有影響到程序原本的設(shè)計(jì)或者僅需要寫一小段代碼就實(shí)現(xiàn)了一個(gè)新功能的擴(kuò)展是非常有成就感的一件事。
重構(gòu)
學(xué)會欣賞你的代碼,他們是你花心思寫出來的,你不能放著糟糕的代碼卻視而不見,而且還安慰自己說,“只要它能工作,就不要去動它”,及時(shí)地重構(gòu)每一行有臭味的代碼,這將會給你帶來無盡的快樂。
單元測試
盡可能地給你的方法寫單元測試,它可以讓你對你的代碼更有信心,這樣你才能對你的代碼更有把握,你也會更加快樂。
不要把問題留到明天
如果已經(jīng)下班了問題卻還沒有解決怎么辦?加班吧,既使是沒有加班費(fèi),問題不應(yīng)該被累積,要不總有一天它會成為你的惡夢,把問題全部解決了再回家,你可以安穩(wěn)地睡個(gè)好覺。
學(xué)習(xí)英語
程序員應(yīng)該學(xué)習(xí)好英語,它可以幫助你看懂英語文獻(xiàn)跟文檔,可以讓你在論壇上跟全世界的人一起討論問題,它也可以幫助你寫程序的時(shí)候取一個(gè)有意義的類名,變量名或方法名,如果你們公司需要跟老外打交道,升官發(fā)財(cái)?shù)臋C(jī)會也就全靠它了。
Work Hard, Play Hard
工作的時(shí)候我們努力地工作,玩的時(shí)候我們也要瘋狂地玩。
最后推薦幾本程序員必看的書,不看會后悔的哦。《設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)》《重構(gòu)》《敏捷軟件開發(fā)》《代碼大全(第二版)》《人月神話》。都是很經(jīng)典的書,相信大多數(shù)人都已經(jīng)拜讀過了。
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。