重構之路第六篇——處理概括關系
1 Pull up Field(字段上移)
2 Pull up Method(函數上移)
3 Pull up Constructor Body(構造函數本體上移)
4 Push Down Method(函數下移)
5 Push Down Field(字段下移)
6 Extract Subclass(提煉子類)
7 Extract Superclass(提煉超類)
8 Extract Interface(提煉接口)
9 Collapse Hierarchy(折疊繼承體系)
10 Form Template Method(塑造模板函數)
11 Replace Inheritance with Delegation(以委托取代繼承)
12 Replace Delegation with Inheritance(以繼承取代委托)
重構之路第六篇——處理概括關系
相關推薦
重構之路第六篇——處理概括關系
取代 interface face down 函數 orm 塑造 tor 本體 1 Pull up Field(字段上移) 2 Pull up Method(函數上移) 3 Pull up Constructor Body(構造函數本體上移) 4 Push Down Met
重構之路第三篇——重新組織數據
chan direction hang rate state elf with bsp 類型 本篇目錄: 1 Self Encapsulate Field(自封裝字段) 2 Replace Data Value with Object(以對象取代數據值) 3 Change
Django之路第六篇:完善博客
也會 過程 object 通過 打包 但是 項目目錄 添加 實現 博客頁面設計 博客頁面概要 博客主頁面 博客文章內容頁面 博客撰寫頁面 博客主頁面 主頁面內容 文章標題列表,超鏈接 發表博客按鈕(超鏈接) 列表編寫思路 取出數據庫中所有文章
ES6之路第六篇:數組的擴展
最好 布爾 return lte 效果 不一致 List 集合 define index 擴展運算符 擴展運算符(spread)是三個點(...)。它好比 rest 參數的逆運算,將一個數組轉為用逗號分隔的參數序列。 1 console.log(...[1, 2, 3])
python之路第三篇
區別 英語 utf-8 系統 存在 創建 tel run 變量名 python文件目錄操作 python中對文件、文件夾(文件操作函數)的操作需要涉及到os模塊和shutil模塊。 得到當前工作目錄,即當前Python腳本工作的目錄路
構建之法—第六篇
集成 購物 辦公室 電腦 插件 生活 辦公 內容 影響 這周的學習關於典型用戶和場景。 Visual Studio是一個非常成功的軟件開發集成環境,支持項目管理,測試工具,以及第三方的插件。 對於定義典型用戶,我們有不同的需求: 受歡迎的典型用戶和不受歡迎的典型用戶,其中,
Python人工智能之路 - 第三篇 : PyAudio 實現錄音 自動化交互實現問答
獲得 本地文件 一次 cor ets win 不清晰 考題 dbo Python 很強大其原因就是因為它龐大的三方庫 , 資源是非常的豐富 , 當然也不會缺少關於音頻的庫 關於音頻, PyAudio 這個庫, 可以實現開啟麥克風錄音, 可以播放音頻文件等等,此刻我們不去了解
Django之路--第三篇
creat () roo object migrate filter sta migration upd 1.ORM1.1.創建類和字段 class UserInfo(models.Model): name=models.CharField(max_length=6
Pthon學習之路 第四篇 Python基礎(二)
pri bsp programs -s alt 如果 lex class 算數運算 1.運算符:+ - *(乘法) /(除法) %(求余) //(求商) **(求冪) 2.成員運算:in not in:判斷單個字符或者子序列在不在字符串中。(n
java學習之路------第六天
今天開始講了java中很重要的一個知識點,那就是方法(函式) 什麼是方法: 定義:能夠實現某種特定功能的程式碼塊。 語法: 修飾符&nb
JAVA學習之路第2篇-JAVA第一個程式hello world
java實現hello word 第1篇中我們瞭解了什麼是機器語言以及關於儲存單位的一些知識點,知道了能夠用編寫機器語言的二進位制值程式設計,但是二進位制面向機器挺友好機器能夠快速的識別和執行,但是面向編寫它的人就不太友好了。能否有一種語言對人比較友好而且機器還能識別執行的呢?我告訴你是
黎想深度訪談騰訊頂級產品經理的進階之路——第四篇《時機》
16個月精心打磨,9位頂級產品專家研討提煉,凝聚騰訊產品經驗的八集八分鐘產品課分別從使用者、定位、需求、時機、匠心、危機、合作、商業角度出發,還原產品背後的故事,分享給你騰訊產品的心法。藝形藝意工作室創始人黎想將深度訪談騰訊頂級產品經理的進階之路,邀您一起探索一位成功產品經理的核心價值。
OS之路第六章 --- 12.11日學習總結
1. equ是一個程式碼替換指令 equ 作用類似於 define。 str_len equ $-str語句的意思:str-0 則是str字串的長度,用str_len來代替 2.C語言extern關鍵字的用法 修飾符extern用在變數或者函式的宣告前,用來說明“此變數/函式是在
黎想深度訪談騰訊頂級產品經理的進階之路——第三篇《需求》
16個月精心打磨,9位頂級產品專家研討提煉,凝聚騰訊產品經驗的八集八分鐘產品課分別從使用者、定位、需求、時機、匠心、危機、合作、商業角度出發,還原產品背後的故事,分享給你騰訊產品的心法。藝形藝意工作室創始人黎想將深度訪談騰訊頂級產品經理的進階之路,邀您一起探索一
架構師的成長之路---第1篇(開篇)
本人java程式猿一枚,2012年參加工作。一步一步的由最初的程式設計師成長為獨立事業部經理,迷茫過,也興奮過。今天的我又迷茫了。 在人生的道路上,每個人都會遇到很多次選擇,每一次的選擇決定了今後一段時間的人生走向。今天的我又到了選擇的時候。 &nb
配置檔案讀取(架構師的成長之路---第2篇)
開篇後第一個知識點,本想寫資料庫連線池,仔細一想還是放棄了,改寫為《配置檔案讀取》。 畢竟專案中的基礎資訊,比如說資料庫連線資訊是需要配置在專案的配置檔案中的。 重點介紹 ResourceBundle.getBundle("配置檔名稱").getString("配置檔案內的key值"); &
架構師的責任(架構師的成長之路---第3篇)
作為架構師,首先要明確架構師的責任,要不然會再多的技術也是枉然。 簡單的說,帶領方向和難點攻克。 帶領方向是指架構師應不斷地多讀書,多學習,跟隨最新技術,不斷地昇華自己,並不停的為團隊傳輸最新知識,讓整個團隊不斷地進步。
php原始碼之路第六章第一節 (記憶體管理概述)
記憶體是計算機非常關鍵的部件之一,是暫時儲存程式以及資料的空間,CPU只有有限的暫存器可以用於儲存計算資料,而大部分的資料都是儲存在記憶體中的,程式執行都是在記憶體中進行的。和CPU計算能力一樣,記憶體也是決定計算效率的一個關鍵部分。 計算中的資源中主要包含:
映射篇:request-String-Object-Map之間相互轉化(程序員的成長之路---第5篇)
exception types common validate runt eight methods 數據庫 英文 為什麽寫這一篇 問題一:jdbc連接數據庫返回的對象是ResultSet,如何把ResultSet對象中的值轉換為我們自建的各種實體類? 我估計,80%的程序
cocos2dx學習之路----第九篇(深入理解單點觸控的事件機制)
上一篇我們簡單接觸了關於單點觸控的實現。 這一篇我們繼續進一步的理解單點觸控的事件分發的優先順序問題。 我們來回顧一下實現觸控的過程: 1.建立新的監聽器; 2.為新的監聽器分配回撥函式(而我們在上一篇中用到了Lamda表示式來實現); 3.註冊分發監聽器。 好,這一篇就是