<thead id="fflbj"><font id="fflbj"><cite id="fflbj"></cite></font></thead>
    <progress id="fflbj"><thead id="fflbj"><font id="fflbj"></font></thead></progress>

            課程目錄:軟件擴展性與重用性設計培訓
            4401 人關注
            (78637/99817)
            課程大綱:

            軟件擴展性與重用性設計培訓

             

             

             

            1. 什么是好的設計以及如何預先設計實現
            (1)什么是好的設計?
            (2)衡量好設計的手段
            (3)可擴展性(Extensibility)容易添加新的功能
            (4)靈活性(Flexibility)代碼修改平穩地發生
            (5)可插入性(Plug ability)容易將一個類抽去-同時也可將相同接口類加入
            (6)軟件的變化分析-發現變化/封裝變化/隔離變化
            (7)軟件需求的不可預測性-設計師預測式設計與過度設計
            (8)軟件演化式設計-敏捷的設計思想
            2. 邏輯架構切割
            (1)技術切割范式:針對所有業務功能進行技術切割方法論
            (2)技術元素的分層組織
            (3)技術元素的分包組織
            (4)技術元素的相似性與重疊性分析
            (5)技術元素的變化性設計
            (6)技術元素的性能、可靠、穩定與安全設計
            (7)技術元素并行開發與開發管理組織
            (8)技術元素難度復雜度與開發者能力關系
            (9)動手實踐:面向對象與面向方面的技術切割實踐,評選佳實踐成果
            3. 接口設計與解耦
            (1)接口設計的基本原則
            (2)接口的變化性與穩定性
            (3)定義技術元素間相互調用的接口
            (4)定義系統外部訪問集成的接口
            (5)定義框架管理的接口
            (6)注入變化觀察技術元素的波及面-耦合性分析
            (7)技術元素職責單一性與松耦合
            (8)案例分析:google的MapReduce的接口設計
            (9)動手實踐:類庫接口設計實踐,評選佳實踐成果
            4. 數據庫結構設計與大數據
            (1)數據庫設計的基本原則:適度使用范式原則
            (2)實現數據庫結構的彈性設計8種方案
            (3)大數據設計:權衡SQL與NoSQL
            (4)數據切割:分庫、分區與分布
            (5)數據存儲文件系統的彈性設計:MySQL與淘寶TFS
            (6)數據性能設計方案:對比MemCached、OceanBase與Spark
            (7)數據中的知識與決策
            (8)動手實踐:分組實現數據庫彈性設計,評選佳實踐成果
            5. 公共組件設計
            (1)公共組件結構切割
            (2)公共組件接口設計
            (3)公共組件的彈性設計
            (4)公共組件與功能組件的動態耦合設計
            (5)動手實踐:Cache組件設計
            (6)動手實踐:現有系統反向工程的公共組件合理性分析
            6. 框架平臺設計
            (1)UI框架設計
            (2)功能邏輯組件集成管理框架設計
            (3)數據訪問框架設計
            (4)數據存儲框架設計
            (5)案例分析:HADOOP框架剖析
            (6)動手實踐:現有系統反向工程的自定義框架的合理性分析
            7. 非功能性設計
            (1)各種質量屬性設計的戰術策略
            (2)掌控“相互沖突的質量屬性”設計的平衡點
            (3)軟件變化分析與預測
            (4)軟件變化設計策略
            (5)基于設計模式的變化設計
            (6)基于key-value的變化設計
            (7)基于邏輯判斷的變化設計
            (8)高可靠性設計
            (9)案例分析:SAP自我維護設計策略分析
            (10)動手實踐:現有系統反向工程的質量設計的合理性分析
            8. 部署運行維護設計
            (1)規劃系統開發的配置庫結構
            (2)規劃系統的編譯方案
            (3)規劃系統源代碼的版本方案
            (4)規劃系統物理文件的安裝方案
            (5)規劃系統中各個技術元素部署方案
            (6)系統集成構建方案
            (7)注入敏捷思想-持續集成構建
            (8)案例分析:微軟的每日構建
            (9)標注軟件結構中的“運維點”
            (10)制定“運維點”的運行維護策略
            (11)軟件結構中內置免疫系統
            (12)動手實踐:產品源代碼結構、編譯計劃、版本計劃與部署方案,評選佳實踐成果
            9. 架構關鍵點與工程
            (1)架構設計與開發效率:簡化開發
            (2)架構設計指導詳細設計與代碼編寫
            (3)注入敏捷的開發實踐方法:TDD
            (4)融合ITIL與DevOps的架構設計
            (5)軟件架構與人力組織結構映射
            (6)基于“軟件工廠”的開發模式
            (7)建立企業級知識庫
            (8)軟件動態運行維護規劃
            (9)動手實踐:現有系統反向工程的運維設計的合理性分析
            10. 架構模式與設計模式
            (1)模式的場景、角色、職責
            (2)模式應用誤區與風險
            (3)設計重構中模式應用
            (4)把握模式的使用尺度-過度使用模式與適度使用模式
            11. 軟件設計模式的應用(Design Patterns)
            (1)建筑模式與設計模式
            (2)過度使用設計模式的問題
            (3)設計模式如何適應變化和封裝
            (4)GRASP設計原則
            (5)關于功能與邏輯的分離
            (6)設計模式的組合應用方式
            (7)Framework設計中設計模式
            (8)結合案例進行分析,應用設計模式之前和應用之后的對比
            (9)動手實踐:學員依據案例進行設計模式實踐






            538在线视频二三区视视频