原创 第六章 對象和數據結構

第六章 對象和數據結構 1 數據抽象 2 數據對象的反對稱性 3 德墨忒耳律The Law of Demeter 31 火車失事 32 混雜 33 隱藏結構 4 數據傳輸對象 第六章 對象和數據結構 變量設爲私有(p

原创 第九章 單元測試

第九章 單元測試 1 TDD三定律 2 保持測試整潔 3 整潔的測試 31 面向特定領域的測試語言 32 雙重標準 4 每個測試一個斷言 5 FIRST 第九章 單元測試 9.1 TDD三定律 在編寫不能通過的測試代

原创 第八章 邊界

第八章 邊界 1 使用第三方代碼 2 瀏覽和學習邊界 3 學習log4j 4 學習性測試的的好處不只是免費 5 使用尚不存在的代碼 6 整潔的邊界 第八章 邊界 8.1 使用第三方代碼 藉口提供者和使用者之間存在天然的分歧

原创 第十章 類

第十章 類 1 類的組織 2 類應該短小 21 單一權責原則 22 內聚 23 保持內聚性就會得到許多短小的類 3 爲了修改而組織 第十章 類 10.1 類的組織 類的組織應該從一組變量開始;首先是公有靜態變量,之後私

原创 第二章 命名的意義

2.2 名副其實 當發現更爲合適的名稱時,及時換掉舊名稱; 變量名稱應當解釋其爲何存在,如何使用,當需要註釋時,不能稱爲名副其實 對於變量的命名,開頭的單詞小寫,之後的單詞首字母大寫; 當一段簡潔的代碼不能解釋其具體功能時,問題是其模

原创 第七章 錯誤處理

第七章 錯誤處理 1 使用異常而非返回碼 2 先寫Try-Catch-Finally 3 使用不可控異常 4 給出異常發生時的環境說明 5 依調用者需要定義異常類 6 定義常規流程 7 別返回null值 8 別傳遞null值

原创 第8章 異常控制流

8.1 異常 所謂異常就是控制流過程中的突變,用來響應處理器狀態中的某些變化; 處理器的狀態的變化稱爲事件(event),事件可能和當前指令的執行相關(虛擬存儲器缺頁,算術溢出,除數爲零),也可能沒有關係(定時器信號,I/O請求完成);

原创 第9章 虛擬存儲器

虛擬存儲器是硬件異常、硬件地址翻譯、主存、磁盤文件和內核軟件的完美交互,它爲每個進程提供一個大的、一致的私有的地址空間; 主存是磁盤的高速緩存、主存中只保留活動區域、並且根據需要,在磁盤和主存之間來回傳送數據; 每個進程提供一致的地址

原创 第四章 註釋

第四章 註釋 1 註釋不能美化的代碼 2 用代碼來闡述 3 好註釋 31 法律信息 32 提供信息的註釋 33 對意圖的解釋 34 闡釋 35 警示 36 TODO註釋 37 放大 4 壞註釋 41 喃喃自語 42 多餘的註釋

原创 第三章 函數

3.1 短小 函數第一規則短小 第二規則短小 if、else、while中的代碼塊語句應該只有一行;該行應該是一個函數調用語句,並且名稱具有解釋函數本身作用的功能; 函數不應大到可以容納嵌套結構,縮進層應該只有一層或者兩層; 3.2