描述
內容簡介
|
作者簡介
程杰 被讀者譽為很會寫IT技術書的專家,開創一種趣味講解IT知識的風格與模式。 參與過政府、證券、遊戲、交通等多種行業的軟體發展及專案管理工作,也擔任過軟體工程師培訓的教師,目前從事教育類APP/微信小程式的開發與運營。 高中數學教學的獨特經歷,所以著作中處處以初學者視角思考和分析問題,成為當前極受歡迎的IT技術書作者。 |
目錄
Chapter 0 楔子:教育訓練實習生-- 物件導向基礎
0.1 教育訓練實習生 0.2 類別與實例 0.3 建構方法 0.4 方法多載 0.5 屬性與修飾符號 0.6 封裝 0.7 繼承 0.8 多形 0.9 重構 0.10 抽象類別 0.11 介面 0.12 集合 0.13 泛型 0.14 客套 Chapter 01 程式無錯就是優? -- 簡單工廠模式 1.1 面試受挫 1.2 初學者程式毛病 1.3 程式規範 1.4 物件導向程式設計 1.5 活字印刷,物件導向 1.6 物件導向的好處 1.7 複製vs. 重複使用 1.8 業務的封裝 1.9 緊耦合vs. 鬆散耦合 1.10 簡單工廠模式 1.11 UML 類別 Chapter 02 商場促銷-- 策略模式 2.1 商場收銀軟體 2.2 增加打折 2.3 簡單工廠實現 2.4 策略模式 2.5 策略模式實現 2.6 策略與簡單工廠結合 2.7 策略模式解析 Chapter 03 電子閱讀器vs. 手機-- 單一職責原則 3.1 閱讀幹嘛不直接用手機? 3.2 手機不純粹 3.3 電子閱讀器vs. 手機 3.4 單一職責原則 3.5 方塊遊戲的設計 3.6 電子閱讀器與手機的利弊 Chapter 04 考研求職兩不誤-- 開放- 封閉原則 4.1 考研失敗 4.2 開放- 封閉原則 4.3 何時應對變化 4.4 兩手準備,並全力以赴 Chapter 05 會修電腦不會修收音機? -- 依賴倒轉原則 5.1 女孩請求修電腦 5.2 電話遙控修電腦 5.3 依賴倒轉原則 5.4 里氏代換原則 5.5 修收音機 Chapter 06 穿什麼有這麼重要? -- 裝飾模式 6.1 穿什麼有這麼重要? 6.2 小菜扮靚第一版 6.3 小菜扮靚第二版 6.4 裝飾模式 6.5 小菜扮靚第三版 6.6 商場收銀程式再升級 6.7 簡單工廠+ 策略+ 裝飾模式實現 6.8 裝飾模式複習 Chapter 07 為別人做嫁衣-- 代理模式 7.1 為別人做嫁衣! 7.2 沒有代理的程式 7.3 只有代理的程式 7.4 符合實際的程式 7.5 代理模式 7.6 代理模式應用 7.7 秀才讓小六代其求婚 Chapter 08 工廠製造細節無須知-- 工廠方法模式 8.1 需要了解工廠製造細節嗎? 8.2 簡單工廠模式實現 8.3 工廠方法模式實現 8.4 簡單工廠vs. 工廠方法 8.5 商場收銀程式再再升級 8.6 簡單工廠+ 策略+ 裝飾+ 工廠方法 Chapter 09 簡歷複印-- 原型模式 9.1 誇張的簡歷 9.2 簡歷程式初步實現 9.3 原型模式 9.4 簡歷的原型實現 9.5 淺複製與深複製 9.6 簡歷的深複製實現 9.7 複製簡歷vs. 手寫求職信 Chapter 10 考題抄錯會做也白搭-- 範本方法模式 10.1 選擇題不會做,猜吧! 10.2 重複=易錯+難改 10.3 提煉程式 10.4 範本方法模式 10.5 範本方法模式特點 10.6 主觀題,看你怎麼猜 Chapter 11 無熟人難辦事? -- 迪米特法則 11.1 第一天上班 11.2 無熟人難辦事 11.3 迪米特法則 Chapter 12 牛市股票還會虧錢? -- 面板模式 12.1 牛市股票還會虧錢? 12.2 股民炒股程式 12.3 投資基金程式 12.4 面板模式 12.5 何時使用面板模式 Chapter 13 好菜每回味不同-- 建造者模式 13.1 炒麵沒放鹽 13.2 建造小人一 13.3 建造小人二 13.4 建造者模式 13.5 建造者模式解析 13.6 建造者模式基本程式 Chapter 14 老闆回來?我不知道-- 觀察者模式 14.1 老闆回來?我不知道! 14.2 雙向耦合的程式 14.3 解耦實踐一 14.4 解耦實踐二 14.5 觀察者模式 14.6 觀察者模式特點 14.7 Java 內建介面實現 14.8 觀察者模式的應用 14.9 石守吉失手機後 Chapter 15 就不能不換DB 嗎? -- 抽象工廠模式 15.1 就不能不換DB 嗎? 15.2 最基本的資料存取程式 15.3 用了工廠方法模式的資料存取程式 15.4 用了抽象工廠模式的資料存取程式 15.5 抽象工廠模式 15.6 抽象工廠模式的優點與缺點 15.7 用簡單工廠來改進抽象工廠 15.8 用反射+ 抽象工廠的資料存取程式 15.9 用反射+ 設定檔實現資料存取程式 15.10 商場收銀程式再再再升級 15.10 無癡迷,不成功 Chapter 16 無盡加班何時休-- 狀態模式 16.1 加班,又是加班! 16.2 工作狀態- 函數版 16.3 工作狀態- 分類版 16.4 方法過長是壞味道 16.5 狀態模式 16.6 狀態模式好處與用處 16.7 工作狀態- 狀態模式版 Chapter 17 在NBA 我需要翻譯-- 轉接器模式 17.1 在NBA 我需要翻譯! 17.2 轉接器模式 17.3 何時使用轉接器模式 17.4 籃球翻譯轉接器 17.5 轉接器模式的.Net 應用 17.6 扁鵲的醫術 Chapter 18 如果可以回到過去-- 備忘錄模式 18.1 如果再給我一次機會…… 18.2 遊戲存進度 18.3 備忘錄模式 18.4 備忘錄模式基本程式 18.5 遊戲進度備忘 Chapter 19 分公司=一部門-- 組合模式 19.1 分公司不就是一部門嗎? 19.2 組合模式 19.3 透明方式與安全方式 19.4 何時使用組合模式 19.5 公司管理系統 19.6 組合模式好處 Chapter 20 想走?可以!先買票-- 迭代器模式 20.1 乘車買票,不管你是誰! 20.2 迭代器模式 20.3 迭代器實現 20.4 Java 的迭代器實現 20.5 迭代高手 Chapter 21 有些類別也需計劃生育-- 單例模式 21.1 類別也需要計劃生育 21.2 判斷物件是否是null 21.3 生還是不生是自己的責任 21.4 單例模式 21.5 多執行緒時的單例 21.6 雙重鎖定 21.7 靜態初始化 Chapter 22 手機軟體何時統一-- 橋接模式 22.1 憑什麼你的遊戲我不能玩 22.2 緊耦合的程式演化 22.3 合成/ 聚合重複使用原則 22.4 鬆散耦合的程式 22.5 橋接模式 22.6 橋接模式基本程式 22.7 我要開發「好」遊戲 Chapter 23 烤羊肉串引來的思考-- 命令模式 23.1 吃烤羊肉串! 23.2 燒烤攤vs. 燒烤店 23.3 緊耦合設計 23.4 命令模式 23.5 鬆散耦合設計 23.6 進一步改進命令模式 23.7 命令模式作用 Chapter 24 加薪非要老總批? -- 職責鏈模式 24.1 老闆,我要加薪! 24.2 加薪程式初步 24.3 職責鏈模式 24.4 職責鏈的好處 24.5 加薪程式重構 24.6 加薪成功 Chapter 25 世界需要和平-- 仲介者模式 25.1 世界需要和平! 25.2 仲介者模式 25.3 安理會做仲介 25.4 仲介者模式優缺點 Chapter 26 專案多也別傻做-- 享元模式 26.1 專案多也別傻做! 26.2 享元模式 26.3 網站共用程式 26.4 內部狀態與外部狀態 26.5 享元模式應用 Chapter 27 其實你不懂老闆的心-- 解譯器模式 27.1 其實你不懂老闆的心 27.2 解譯器模式 27.3 解譯器模式好處 27.4 音樂解譯器 27.5 音樂解譯器實現 27.6 料事如神 Chapter 28 男人和女人-- 存取者模式 28.1 男人和女人! 28.2 最簡單的程式設計實現 28.3 簡單的物件導向實現 28.4 用了模式的實現 28.5 存取者模式 28.6 存取者模式基本程式 28.7 比上不足,比下有餘 Chapter 29 OOTV 杯超級模式大賽-- 模式複習 29.1 演講任務 29.2 報名參賽 29.3 超模大賽開幕式 29.4 建立型模式比賽 29.5 結構型模式比賽 29.6 行為型模式一組比賽 29.7 行為型模式二組比賽 29.8 決賽 29.9 夢醒時分 29.10 沒有結束的結尾 Appendix A 參考文獻 |
序
|