文章出處

 

課程名稱:Android與設計模式

一、     簡介

本課程根據講師十多年的一線工作經驗,涉足.NETAndroidiOS等多個技術領域,對設計模式有獨到的理解。不拘泥于傳統的書本教程,結合Android在實際項目中的運用,幫助學員深刻理解設計模式。

 

本課程讓學員掌握二十多個設計模式在Android中的使用場景,理解模式背后深層次的思想,更重要的是,學會如何學習一門新技術。

 

本課程對于開發以下App產品特別有幫助:

1、千萬級用戶的App產品。

2、業務功能繁多。

 

本課程適用于具有以下特征的學員:

11-2Android開發經驗。

2、對設計模式有一些了解或接觸。

 

二、     培訓大綱(2天)

第一天 上午

1SOLID五大原則及UML圖繪制

1.        單一性原則

l   一個類只干一件事情

l   Activity中剝離Adapter

2.        開閉原則

l   對擴展開放,對修改封閉

l   switch-case談起

3.        里氏替換原則

l   父類,子類?

l   對多態的重新認識

l   白馬與馬

4.        依賴倒置原則

l   依賴于抽象,而不是依賴于具體

l   模版方法

l   WebServiceJSON

5.        接口隔離原則

l   類之間的依賴,建立于最小粒度的接口

l   看人下菜碟

l   寬窄接口

6.        迪米特法則

l   不要和陌生人說話

7.        UML圖繪制

l   接口、類

l   類的關系(關聯、依賴、聚合、組合)

8.        總結

l   《建筑的永恒之道》

l   組合,還是繼承?

l   可插拔技術

l   面向接口編程

9.        簡單工廠

l   定義及UML圖、通用代碼實現

l   Android中的使用場景:ActivityonCreate方法

l   Android中的一個例子:文件存儲

 

2 創建型設計模式(一)

1.        工廠模式

l   定義及UML圖、通用代碼實現

l   簡單工廠與工廠的微小區別

l   反射與工廠模式的配合

2.        單例模式

l   定義及UML圖、通用代碼實現

l   多例

l   Android中的使用場景:ImageLoader

 

第一天 下午

1創建型設計模式(二)

1.        單例模式

l   定義及UML圖、通用代碼實現

l   多例

l   Android中的使用場景:ImageLoader

2.        原型模式

l   定義及UML圖、通用代碼實現

l   淺拷貝和深拷貝

l   一個例子:孫悟空的分身

l   Android中的使用場景:Intent

3.        生成器模式

l   定義及UML圖、通用代碼實現

l   編寫一個例子:繪制笑臉

l   Android中的Builder模式

l   Android中的使用場景:AlertDialog

 

2講 構造型設計模式(一)

1.        適配器模式

l   定義及UML圖、通用代碼實現

l   類適配器和對象適配器

l   一個例子:變壓器

l   Android中的使用場景:Adapter

2.        橋接模式

l   定義及UML圖、通用代碼實現

l   兩個維度的簡單工廠

l   加法,還是乘法?

l   編寫一個例子:蠟筆與水彩筆

3.        代理模式

l   定義及UML圖、通用代碼實現

l   Android中的實現:BinderAIDL

l   靜態代理和動態代理

l   遠程代理

l   虛擬代理

l   保護代理

l   智能引用

 

第二天 上午

1講 構造型設計模式(二)

1.        組合模式

l   溫習一下遞歸算法

l   定義及UML圖、通用代碼實現

l   實現的兩種方式

l   一個現實中的例子:山上有座廟

l   Android中的使用場景:ViewViewGroup

2.        享元模式

l   定義及UML圖、通用代碼實現

l   不變模式

l   享元是多例與不變模式的組合

l   自己編寫一個例子:圍棋

l   Android中的使用場景:String

3.        裝飾器模式

l   定義及UML圖、通用代碼實現

l   編寫一個例子:炒菜

l   給工廠增加新方法

l   Android中的使用場景:ContextWrapper

4.        外觀模式

l   定義及UML圖、通用代碼實現

l   與單一職責設計原則的沖突

l   Android中的使用場景:Context

 

2講 行為型設計模式(一)

1.        職責鏈模式

l   定義及UML圖、通用代碼實現

l   寫一個例子:游戲中的傷害計算

l   事件分發機制

2.        模版方法模式

l   定義及UML圖、通用代碼實現

l   Android中的應用1AsyncTask

l   Android中的應用2Activity的生命周期函數

3.        命令模式

l   定義及UML圖、通用代碼實現

l   例子1:玉皇大帝派太上老君封孫悟空為齊天大圣

l   回滾(undo

l   Android中的應用:AAPT

4.        備忘錄模式

l   定義及UML圖、通用代碼實現

l   回滾機制的另一種實現

l   例子:單機游戲的保存和加載

l   寬窄接口:IMemento

l   Android中的應用:onSaveInstanceState

 

第二天 下午

1講 行為型設計模式(二)

1.        迭代器模式

l   定義及UML圖、通用代碼實現

l   外部迭代器和內部迭代器

l   Android中的內部支持:Cursor

2.        策略模式

l   定義及UML圖、通用代碼實現

l   基于策略模式的排序算法

l   Android中的應用:Comparator

3.        觀察者模式

l   定義及UML圖、通用代碼實現

l   例子:RSS

l   Android中的應用1AdapternotifyDataSetChanged方法

l   Android中的應用2BroadcastReceiver

l   Android中的應用3:事件總線EventBus

4.        中介者模式

l   定義及UML圖、通用代碼實現

l   編寫一個例子:房產中介

l   Android中的應用:Activity中控件間通信

5.        狀態模式

l   定義及UML圖、通用代碼實現

l   寫一個例子:空調遙控器

l   Android中的應用:ViewonVisibilityChanged

l   App中的應用:用戶登錄

2講 總結回顧

1.        回顧23個設計模式

2.        設計模式沉思

 


文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()