《高效程序員的45個習慣:敏捷開發(fā)修煉之道》
不管路走了多遠,錯了就要重新返回? ---土耳其諺語
防微杜漸锡垄,把問題解決在萌芽狀態(tài),探索未知領域,在大量成本投入之前先確定其可行性闻坚。知錯能改,在事實面前主動承認自己的多有錯誤兢孝。自我反省窿凤,經(jīng)常編碼實戰(zhàn),加強團隊協(xié)作精神跨蟹。
敏捷開發(fā)就是在一個高度協(xié)作的環(huán)境中雳殊,不斷使用反饋進行自我調整和反饋。
有意識的修改代碼:在功能不變的情況下喷市,重新設計部分代碼改善代碼質量相种。永遠沒有真正意義上的結束。
優(yōu)秀的程序員遇到bug會挖掘更深一層品姓,盡力去理解寝并,更重要的是他會想明白會產(chǎn)生什么其他影響。
千里之堤腹备,潰于蟻穴衬潦,大災難是逐步演化而來的,一次又一次的快速修復植酥,每一次都不探究問題的根源镀岛,久而久之就形成了一個危險的沼澤地弦牡,最終會吞噬整個項目的生命。
不要孤立的編碼
消極扼殺創(chuàng)新? 你不需要很出色才能起步漂羊,但是你必須起步才能變得很出色驾锰。
亞里士多德:能容納自己并不接受的想法,表明你的頭腦有足夠的學識走越。
每天結束的時候椭豫,測試代碼 提交代碼 沒有殘留的代碼
測試驅動開發(fā)? 專注與單元測試? 測試先行可以改進設計
文檔:注釋? 代碼閱讀次數(shù)要大于編寫次數(shù) 保證代碼的可讀性? 付諸于良好的習慣以及注釋精確。但是注釋不能替代優(yōu)秀的代碼旨指。
增量式編程:
可以精煉并結構化代碼 留心可以改進的微小方面--使其變得更易于測試 持續(xù)做一些細小而有用的事情而不是一段長時間的編程或重構赏酥。以此來保證測試的正常進行。
保持簡單:
當你覺得所編寫的代碼沒有一行是多余的 并且能夠交付全部的功能時谆构,這種感覺就是對的裸扶。這樣的代碼容易理解和修正。
編寫內聚的代碼:
類需要遵循內聚性搬素。讓類的功能盡量集中 讓組件盡量小? 避免創(chuàng)建很大的類或者組件 每個類或者組件只做一件事并且做的很好呵晨。這樣代碼易于修改,因為類和組件的責任清晰蔗蹋。
通過替換代碼來擴展系統(tǒng)
記錄問題解決日志---有效的重用你的知識和努力---養(yǎng)成每日日志的習慣
養(yǎng)成代碼復查的習慣