1、開始時需求要明確;
2、盡早發布可執行的demo,持續進行整合;
3、功能粒度要足夠低;
4、架構可以隨時進行調整;
5、測試驅動開發;
6、持續整理**及架構重構;
7、持續的速度,任務分解需要細緻、粒度要小,各個模組的任務完成要及時、有效;
軟體之美在於它的功能,在於它的內部結構,還在於團隊建立它的過程。對使用者來說,通過直觀、簡單的介面呈現出恰當特定的程式就是美的。對於軟體設計者來說,被簡單、直觀地分隔,並具有最小內部耦合的內部結構是美的;對於開發人員和管理者來說,每週都會取得重大進展,並且生產出無缺陷**的具有活力的團隊就是美的。
最好的軟體開發人員都知道乙個秘密,美的東西比醜的東西建立起來更廉價,也更快捷。
過程方法、設計原則、最佳實踐——統一起來;
測試驅動開發的關鍵是從測試或者使用者的角度去構思測試用例,測試用例來指導我們的設計;
is-a 繼承原則是針對行為的。
依賴倒置——呼叫關係的倒置,介面所有權的倒置;依賴抽象,不能依賴細節或者實現類;
命令模式——適用於裝置控制,訊息控制,資料庫事務操作,多執行緒核心,gui的do、undo操作;
faced模式,mediator模式,單件模式,單態模式;
殘缺即是完美,冷淡即是禮儀,壯觀即是虛無,死亡即是圓滿,沒有即是更多;
抽象:事物本質性的東西要放大,無關緊要部分去除;
1、使用者素材;
2、從行為著手,基於用例分析,基於使用者的操作,而非系統的實現細節;
3、找物件,不要找函式;
包的設計,包的內聚性,包間的耦合性,包的維護性,包是從頂而下設計,還是至下而上設計;
內聚性:重用發布等價;共同重用;共同封閉;
敏捷開發的讀書筆記
敏捷開發,就是在乙個高度協作的環境中,不斷使用反饋進行自我調整和完善。你要防微杜漸,把問題解決在萌芽狀態。你要探索未知領域,在大量成本投入之前先確定其可行性。你要知錯能改,在事實面前主動承認自己的所有錯誤。你要能自我反省,經常編碼實戰,加強團隊協作精神。一開始可能會覺得不適應,但只要真正行動起來,習...
《Java敏捷開發》讀書筆記1
1 以使用者故事管理專案 敏捷就是提取故事,拆分故事,開發故事,驗收故事,交付故事。2 使用者故事可以用於評估發布時間.舉例 客戶要求50天交付系統,我們對故事進行故事點評估,預計17個點。根據經驗,乙個故事點 5人天,2個開發人員,預計需要43天。這樣的估計很不準確,給4個人,22天就可以完成嗎?...
《敏捷軟體開發》讀書筆記3
1 如果乙個類承擔的職責過多,就等於把這些職責耦合在了一起。乙個職責的變化可能會削弱或者抑制這個類完成其他責任的能力。這種耦合會倒置脆弱的 fragile 設計,當變化發生時,設計會遭受到意想不到的破壞。p88 2 在srp 中,我們把職責定義為 變化的原因 a reson for change p...