IC培訓
   
 

重構-改善既有系統的代碼,設計與架構的最佳實踐課程


 
   班級規模及環境--熱線:4008699035 手機:15921673576( 微信同號)
       每期人數限3到5人。
   上課時間和地點
上課地點:【上?!浚和瑵髮W(滬西)/新城金郡商務樓(11號線白銀路站) 【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學成教院 【北京分部】:北京中山學院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領館區1號(中和大道) 【沈陽分部】:沈陽理工大學/六宅臻品 【鄭州分部】:鄭州大學/錦華大廈 【石家莊分部】:河北科技大學/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協同大廈
最近開課時間(周末班/連續班/晚班):2020年6月15日
   實驗設備
     ☆資深工程師授課
        
        ☆注重質量 ☆邊講邊練

        ☆合格學員免費推薦工作
        ★實驗設備請點擊這兒查看★
   質量保障

        1、培訓過程中,如有部分內容理解不透或消化不好,可免費在以后培訓班中重聽;
        2、培訓結束后,授課老師留給學員聯系方式,保障培訓效果,免費提供課后技術支持。
        3、培訓合格學員可享受免費推薦就業機會。

課程大綱
軟件代碼的新思維----代碼就是設計,代碼質量決定軟件可維護性
軟件可維護性(為什么必須重視軟件的可維護性)
代碼質量概述
破窗效應
對代碼的重新認識---代碼就是設計
優秀代碼的評價標準
好代碼和糟糕代碼之間的區別
劣質代碼的代價
大師評價整潔代碼的標準
Robert C Martin
Kent Beck`
Ward Cunningham
Ron Jeffries
Grady Booch
Dave Thomas

重構思想
重構概述
何時重構
如何發現哪些地方需要重構
如何保證重構的正確
如何測試重構
通過一個小案例演示重構的基本思想(什么時間重構,如何發現重構點,如何保證重構的正確性,最后如何驗收)

案例—通過實際項目演示重構
介紹項目需求情況,進行設計
閱讀代碼指出代碼壞癥狀
通過重構逐步改善代碼質量







重構關鍵—發現代碼的壞味道?
代碼壞味道概述
代碼壞味道的分類
代碼壞味道----低級篇(重復的代碼、過長的函數、過大的類、過長的參數列表、發散式變化、分散的修改)
代碼壞味道----中級篇(偽面向對象的調用、數據泥團、基本類型的誤用、switch-case結構的誤用、平行繼承體系、過薄的類、只有局部意義的成員變量)
代碼壞味道----高級篇(過度耦合的消息鏈、過薄的中間對象、緊耦合類、相似的類、只有數據的類、濫用類的繼承關系)
通過案例,讓學員尋找代碼壞味道
可以根據客戶現在的項目作為案例進行現場分析,找出相應的代碼壞味道

某項目分析----重點了解現實項目代碼的充斥大量壞味道
介紹項目需求情況,閱讀現有代碼指出代碼壞癥狀
不看不知道,代碼到底有多爛—觸目驚心的代碼
通過重構逐步改善代碼質量
本案例學習多種重構方式




重構技術
重構名錄
介紹常見的重構技術
分別通過相關案例展示重構手段

重構工具
重構工具概述
使用IDE重構工具進行重構
重構工具的使用標準
重構工具的使用心得
通過案例演示如何通過重構工具完成重構

重構案例—該案例重點??函數和函數調用重構
函數的重構
函數調用重構
函數參數的重構
重復代碼處理策略
通過案例介紹函數的重構

重構案例—該案例重點 復雜條件表達式重構
復雜條件表達式重構
IF/Else語句的危害
Switch語句的危害
通過案例介紹如何重構面向過程代碼到面向對象

重構案例—該案例重點學習代碼格式和命名
代碼格式規范
代碼命名-名副其實
很重要,但是總被忽略的基本功
通過案例介紹代碼格式以及如何使用IDE工具進行定制格式
通過案例介紹代碼的命名,以及如何重構

重構案例—該案例重點 數據結構重構
數據結構重構
通過案例介紹如何重構面向過程代碼到面向對象

重構案例—該案例重點 對象職責和對象重構
過程化思維和面向對象設計
對象的重新思考
職責驅動的對象設計
通過案例介紹如何重構面向過程代碼到面向對象





軟件質量和代碼質量
軟件質量概述
代碼質量的度量
Chidamber & Kemerer度量,
Depth of Inheritance Tree(DIT)
Number of Childre(NOC)
Response for a Class(RFC)
Afferent/Efferent Couplings(CA/CE)
Lack of cohesion in methods(LCOM)
業界其他度量標準
通過分析多個實際項目,分別度量相關是否標準

代碼評審和質量抽查
代碼評審前期準備
代碼評審的代碼量
代碼評審的檢查表
代碼評審的總結與學習
通過案例分析如何做好代碼評審




代碼靜態分析工具
代碼靜態分析工具概述
以Java語言代碼靜態分析工具為例介紹
CheckStyle:用于編碼標準?
PMD 的 CPD:幫助發現代碼重復?
Coverlipse:測量代碼覆蓋率?
JDepend:提供依賴項分析?
Metric:有效地查出復雜度
其他語言相關代碼靜態分析工具
通過案例演示工具在項目之中的應用

持續集成
持續集成概述
持續集成的要點和原則?
構建策略和最佳實踐?
持續集成對代碼分析的支持
通過案例演示如何利用持續集成完成代碼檢查和代碼分析




什么是好的設計以及如何預先設計實現?
什么是好的設計和衡量的手段
可擴展性(Extensibility)容易添加新的功能. 結合案例,通過那些手段如何實現該目標
靈活性(Flexibility)代碼修改平穩地發生. 結合案例,通過那些手段如何實現該目標
可插入性(Pluggability)容易將一個類抽出去,同時將另一個有同樣接口的類加入進來. 結合案例,通過那些手段如何實現該目標
軟件的變化分析---發現變化/封裝變化/隔離變化
分析真實項目,如何預先設計,給我們哪些啟示,我們可以學習到什么

重構與設計----敏捷設計思想(演化式設計或者反思性設計)?
重構與設計的思想---根據代碼壞味道改善設計
軟件需求不可預測性----設計師不可能進行預測式設計
軟件設計的重構
軟件演化式設計---敏捷的設計思想
分析某電信項目,如何設計重構,給我們哪些啟示,我們可以學習到什么

通過代碼指標進行設計重構?
代碼指標和可視化有助于識別代碼的重要部分,從而識別設計壞味道,進行重構設計
相關代碼指標(HIT 繼承樹的高度/NOP 包的數量/NOC 類的數量/NOM 方法的數量/LOC 代碼行數/CYCLO 圈復雜度/CALL 每個方法的調用數)
分析案例主要討論兩個指標,圈復雜度(cyclomatic complexity) 和傳入耦合(afferent coupling), 介紹顯示和理解這兩個指標的一些工具,以及如何通過組合指標幫助發現設計特征。






重構到模式
軟件設計的基本原則
設計模式概述
設計模式的本質論
設計模式如何適應變化和封裝
重構到模式的思路

案例---重點介紹重構基本類型依賴和對應模式
通過案例學習以下重構到模式手段
以State取代狀態改變條件語句
以Strategy取代條件邏輯
以Composite取代隱含樹
以Interpreter取代隱式語言
轉移裝飾功能到Decorator
用Builder封裝Composite
重點學習案例的重構到模式的過程

案例---重點介紹重構代碼重復和對應模式
通過案例學習以下重構到模式手段
構造Template Method
以Composite取代一/多之分
引入Null Object
用Adapter統一接口
用Fatory Method引入多態創建
重點學習案例的重構到模式的過程

案例---重點介紹重構代碼過長/過大的類/方法和對應模式
轉移聚集操作到Vistor
以Strategy取代條件邏輯
以Command取代條件調度程序
轉移聚集操作到Collecting Parameter
重點學習案例的重構到模式的過程

案例---重點介紹條件邏輯過度復雜和對應模式
以Strategy取代條件邏輯
以State取代狀態改變條件語句
轉移裝飾功能到Decorator
引入Null Object
以Command替換條件調度程序
轉移聚集操作到Visitor?
重點學習案例的重構到模式的過程
大型
項目
重構
案例
分析
架構重構
軟件架構概述
遺留系統的軟件架構恢復
軟件架構的重構時機
軟件架構的重構步驟
架構壞味道
架構重構策略

案例分析—某web網站架構重構
項目背景以及相關需求
軟件架構的演進與重構過程
質量屬性對軟件架構的驅動
架構的可擴展性架構
緩存技術在架構之中的應用
Web層的架構策略
中間層的架構和集群策略
大型并發系統Session的復制和容錯架構策略
數據的架構
軟件架構的重構策略

案例分析—某電信項目架構重構
介紹項目需求情況,進行設計
通過重構逐步實現設計的可維護, 可重用
應用管道與過濾器/元數據/微內核等架構模式
應用AOP架構思想
應用設計模式(Command/ Observer/Proxy/Chain of Responsibility )?
通過案例學習架構的重構策略和步驟



 

android開發板
linux_android開發板
fpga圖像處理
端海培訓實驗設備
fpga培訓班
 
本課程部分實驗室實景
端海實驗室
實驗室
端海培訓優勢
 
  合作伙伴與授權機構



Altera全球合作培訓機構



諾基亞Symbian公司授權培訓中心


Atmel公司全球戰略合作伙伴


微軟全球嵌入式培訓合作伙伴


英國ARM公司授權培訓中心


ARM工具關鍵合作單位
  我們培訓過的企業客戶評價:
    端海的andriod 系統與應用培訓完全符合了我公司的要求,達到了我公司培訓的目的。 特別值得一提的是授課講師針對我們公司的開發的項目專門提供了一些很好程序的源代碼, 基本滿足了我們的項目要求。
——上海貝爾,李工
    端海培訓DSP2000的老師,上課思路清晰,口齒清楚,由淺入深,重點突出,培訓效果是不錯的,
達到了我們想要的效果,希望繼續合作下去。
——中國電子科技集團技術部主任 馬工
    端海的FPGA 培訓很好地填補了高校FPGA培訓空白,不錯??傊?,有利于學生的發展, 有利于教師的發展,有利于課程的發展,有利于社會的發展。
——上海電子學院,馮老師
    端海給我們公司提供的Dsp6000培訓,符合我們項目的開發要求,解決了很多困惑我 們很久的問題,與端海的合作非常愉快。
——公安部第三研究所,項目部負責人李先生
    MTK培訓-我在網上找了很久,就是找不到。在端海居然有MTK驅動的培訓,老師經驗 很豐富,知識面很廣。下一個還想培訓IPHONE蘋果手機。跟他們合作很愉快,老師很有人情味,態度很和藹。
——臺灣雙揚科技,研發處經理,楊先生
    端海對我們公司的iPhone培訓,實驗項目很多,確實學到了東西。受益無窮 ??!特別是對于那種正在開發項目的,確實是物超所值。
——臺灣歐澤科技,張工
    通過參加Symbian培訓,再做Symbian相關的項目感覺更加得心應手了,理 論加實踐的授課方式,很有針對性,非常的適合我們。學完之后,很輕松的就完成了我們的項目。
——IBM公司,沈經理
    有端海這樣的DSP開發培訓單位,是教育行業的財富,聽了他們的課,茅塞頓開。
——上海醫療器械高等學校,羅老師
  我們最新培訓過的企業客戶以及培訓的主要內容:
 

一汽海馬汽車 DSP培訓
蘇州金屬研究院 DSP培訓
南京南瑞集團技術 FPGA培訓
西安愛生技術集團 FPGA培訓,DSP培訓
成都熊谷加世電氣 DSP培訓
福斯賽諾分析儀器(蘇州) FPGA培訓
南京國電工程 FPGA培訓
北京環境特性研究所 達芬奇培訓
中國科學院微系統與信息技術研究所 FPGA高級培訓
重慶網視只能流技術開發 達芬奇培訓
無錫力芯微電子股份 IC電磁兼容
河北科學院研究所 FPGA培訓
上海微小衛星工程中心 DSP培訓
廣州航天航空 POWERPC培訓
桂林航天工學院 DSP培訓
江蘇五維電子科技 達芬奇培訓
無錫步進電機自動控制技術 DSP培訓
江門市安利電源工程 DSP培訓
長江力偉股份 CADENCE 培訓
愛普生科技(無錫 ) 數字模擬電路
河南平高 電氣 DSP培訓
中國航天員科研訓練中心 A/D仿真
常州易控汽車電子 WINDOWS驅動培訓
南通大學 DSP培訓
上海集成電路研發中心 達芬奇培訓
北京瑞志合眾科技 WINDOWS驅動培訓
江蘇金智科技股份 FPGA高級培訓
中國重工第710研究所 FPGA高級培訓
蕪湖伯特利汽車安全系統 DSP培訓
廈門中智能軟件技術 Android培訓
上海科慢車輛部件系統EMC培訓
中國電子科技集團第五十研究所,軟件無線電培訓
蘇州浩克系統科技 FPGA培訓
上海申達自動防范系統 FPGA培訓
四川長虹佳華信息 MTK培訓
公安部第三研究所--FPGA初中高技術開發培訓以及DSP達芬奇芯片視頻、圖像處理技術培訓
上海電子信息職業技術學院--FPGA高級開發技術培訓
上海點逸網絡科技有限公司--3G手機ANDROID應用和系統開發技術培訓
格科微電子有限公司--MTK應用(MMI)和驅動開發技術培訓
南昌航空大學--fpga 高級開發技術培訓
IBM 公司--3G手機ANDROID系統和應用技術開發培訓
上海貝爾--3G手機ANDROID系統和應用技術開發培訓
中國雙飛--Vxworks 應用和BSP開發技術培訓

 

上海水務建設工程有限公司--Alter/Xilinx FPGA應用開發技術培訓
恩法半導體科技--Allegro Candence PCB 仿真和信號完整性技術培訓
中國計量學院--3G手機ANDROID應用和系統開發技術培訓
冠捷科技--FPGA芯片設計技術培訓
芬尼克茲節能設備--FPGA高級技術開發培訓
川奇光電--3G手機ANDROID系統和應用技術開發培訓
東華大學--Dsp6000系統開發技術培訓
上海理工大學--FPGA高級開發技術培訓
同濟大學--Dsp6000圖像/視頻處理技術培訓
上海醫療器械高等專科學校--Dsp6000圖像/視頻處理技術培訓
中航工業無線電電子研究所--Vxworks 應用和BSP開發技術培訓
北京交通大學--Powerpc開發技術培訓
浙江理工大學--Dsp6000圖像/視頻處理技術培訓
臺灣雙陽科技股份有限公司--MTK應用(MMI)和驅動開發技術培訓
滾石移動--MTK應用(MMI)和驅動開發技術培訓
冠捷半導體--Linux系統開發技術培訓
奧波--CortexM3+uC/OS開發技術培訓
迅時通信--WinCE應用與驅動開發技術培訓
海鷹醫療電子系統--DSP6000圖像處理技術培訓
博耀科技--Linux系統開發技術培訓
華路時代信息技術--VxWorks BSP開發技術培訓
臺灣歐澤科技--iPhone開發技術培訓
寶康電子--Allegro Candence PCB 仿真和信號完整性技術培訓
上海天能電子有限公司--Allegro Candence PCB 仿真和信號完整性技術培訓
上海亨通光電科技有限公司--andriod應用和系統移植技術培訓
上海智搜文化傳播有限公司--Symbian開發培訓
先先信息科技有限公司--brew 手機開發技術培訓
鼎捷集團--MTK應用(MMI)和驅動開發技術培訓
傲然科技--MTK應用(MMI)和驅動開發技術培訓
中軟國際--Linux系統開發技術培訓
龍旗控股集團--MTK應用(MMI)和驅動開發技術培訓
研祥智能股份有限公司--MTK應用(MMI)和驅動開發技術培訓
羅氏診斷--Linux應用開發技術培訓
西東控制集團--DSP2000應用技術及DSP2000在光伏并網發電中的應用與開發
科大訊飛--MTK應用(MMI)和驅動開發技術培訓
東北農業大學--IPHONE 蘋果應用開發技術培訓
中國電子科技集團--Dsp2000系統和應用開發技術培訓
中國船舶重工集團--Dsp2000系統開發技術培訓
晶方半導體--FPGA初中高技術培訓
肯特智能儀器有限公司--FPGA初中高技術培訓
哈爾濱大學--IPHONE 蘋果應用開發技術培訓
昆明電器科學研究所--Dsp2000系統開發技術
奇瑞汽車股份--單片機應用開發技術培訓


 
  端海企業學院  
  備案號:備案號:滬ICP備08026168號-1 .(2024年07月24日)....................
友情鏈接:Cadence培訓 ICEPAK培訓 EMC培訓 電磁兼容培訓 sas容培訓 羅克韋爾PLC培訓 歐姆龍PLC培訓 PLC培訓 三菱PLC培訓 西門子PLC培訓 dcs培訓 橫河dcs培訓 艾默生培訓 robot CAD培訓 eplan培訓 dcs培訓 電路板設計培訓 浙大dcs培訓 PCB設計培訓 adams培訓 fluent培訓系列課程 培訓機構課程短期培訓系列課程培訓機構 長期課程列表實踐課程高級課程學校培訓機構周末班培訓 南京 NS3培訓 OpenGL培訓 FPGA培訓 PCIE培訓 MTK培訓 Cortex訓 Arduino培訓 單片機培訓 EMC培訓 信號完整性培訓 電源設計培訓 電機控制培訓 LabVIEW培訓 OPENCV培訓 集成電路培訓 UVM驗證培訓 VxWorks培訓 CST培訓 PLC培訓 Python培訓 ANSYS培訓 VB語言培訓 HFSS培訓 SAS培訓 Ansys培訓 短期培訓系列課程培訓機構 長期課程列表實踐課程高級課程學校培訓機構周末班 端海 教育 企業 學院 培訓課程 系列班 長期課程列表實踐課程高級課程學校培訓機構周末班 短期培訓系列課程培訓機構 端海教育企業學院培訓課程 系列班 軟件無線電培訓 FPGA電機控制培訓 Xilinx培訓 Simulink培訓 DSP培訓班 數字信號培訓 Ansys培訓 LUA培訓 單片機培訓班 PCB設計課程 PCB培訓 電源培訓 電路培訓 CST培訓 PLC課程 變頻器課程 Windows培訓 R語言培訓 Python培訓 5G培訓
在線客服
a日韩av网址