? ?? 成為一個(gè)優(yōu)秀的程序員和成為其他優(yōu)秀的專(zhuān)業(yè)人員一樣,需要盡可能多的做一些有質(zhì)量的工作。一個(gè)好的軟件開(kāi)發(fā)人員需要培養兩種技能:技術(shù)技能和非技術(shù)技能。不幸的是一些開(kāi)發(fā)者只注重技術(shù)的部分,以致養成一些陋習,下面是5個(gè)非技術(shù)性錯誤:1.缺乏自律 2. 自我意識過(guò)甚? 3.不善溝通交流 4. 忽略用戶(hù) 5. 不能合理安排工作。 ??? 如何保持每天都能寫(xiě)出好代碼的5個(gè)建議,對于自律,我的個(gè)人做法是每天遵循以下步驟: 1. 將一天要做的事情列成清單 完成復雜活動(dòng)(activity)的最好方法是將其拆分成簡(jiǎn)單的各項活動(dòng)。每天早上,將你一天要完成的活動(dòng)進(jìn)行拆分,然后制定一個(gè)相應的日程安排表,這樣能夠幫助你: 更好的理解這個(gè)活動(dòng)。 每天都有一個(gè)集中的目標。 提高你的估計能力,幾天之后,你會(huì )發(fā)現你能預測一天的工作量。 2. 一次只做一件事 集中于一項任務(wù)比同時(shí)做多項任務(wù)更多產(chǎn),不同的研究已經(jīng)證明這個(gè)觀(guān)點(diǎn),并且發(fā)布在不同的媒體上。 3. 正確做事 以下兩個(gè)是考察事情是否正確完成的關(guān)鍵: 要為解決方法感到到自豪,因為這不僅僅只是個(gè)普通的解決方法,這是個(gè)好的方法。遵循“軟件質(zhì)量金字塔”的原則。 解決方法至少要經(jīng)過(guò)一次檢查。在你的同事中,請一位你尊敬的優(yōu)秀開(kāi)發(fā)人員檢查你的方法,并接受他的真誠建議。 4. 不要半途而廢 眾所周知,若仍有一個(gè)玻璃杯需要清洗,則不能說(shuō)已經(jīng)洗完了。粉刷墻壁或驅車(chē)前往某處這些事情上我們也認可同樣的道理,但在軟件開(kāi)發(fā)上我們卻不這么認為 了。即便我們沒(méi)有完成所有的單元測試,或者我們沒(méi)有核實(shí)實(shí)現方式是否符合用戶(hù)的需要,我們也說(shuō)完成了任務(wù)。這是典型來(lái)自Hope Driven Development的行為,是非常有害的。 5. 與其道歉,不如補救,而放棄最不可取。 如果你要花額外的時(shí)間來(lái)完成一些代碼的測試,或者重構不可讀的類(lèi),那么就去做,因為這是為將來(lái)投資時(shí)間。但是如果你在某件事上面卡住了或者將項目拖延的太久,那么尋找一個(gè)更容易的方案。它可能不如你目前正在實(shí)現的方案優(yōu)雅,但至少你有方案。確保記錄下來(lái)以應對這個(gè)項目將來(lái)的風(fēng)險,并且有些東西需要重新審查。