IC培訓
           
         
        軟件重構實戰培訓
         
           班級規模及環境--熱線:4008699035 手機:15921673576/13918613812( 微信同號)
               堅持小班授課,為保證培訓效果,增加互動環節,每期人數限3到5人。
           上課時間和地點
        上課地點:【上海】:同濟大學(滬西)/新城金郡商務樓(11號線白銀路站) 【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學成教院 【北京分部】:北京中山/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領館區1號(中和大道) 【沈陽分部】:沈陽理工大學/六宅臻品 【鄭州分部】:鄭州大學/錦華大廈 【石家莊分部】:河北科技大學/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協同大廈
        近開課時間(周末班/連續班/晚班):2025年3月24日........................(歡迎您垂詢,視教育質量為生命!)
           實驗設備
             ☆資深工程師授課
                
                ☆注重質量 ☆邊講邊練

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

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

        課程大綱
         

        軟件重構實戰訓練營課程主要內容 第一部分 為什么軟件需要及時重構
        ·第一章 軟件代碼腐爛
        第二部分 重構基本概念
        ·第二章 何為重構
        ·第三章 重構
        第四章 重構難題
        第三部分 重構實戰一函數相關重構
        ·第五章 函數相關重構
        第四部分 重構實戰一模塊/架構重構
        ·第六章 重構模式
        ·第七章 模塊重構
        ·第八章 架構重構
        ·第九章 重構管理
        第一章 軟件代碼腐爛 內容一:軟件業者的反思: 軟件腐爛
        1.軟件腐爛(Software rot),也叫做代碼腐爛(code rot)或軟件腐朽(software decay)。它描述了隨著時間的逝去感知到軟件的緩慢衰退,其將終導致它變得不完善、不可使用或難以維護。
        2.軟件腐爛(Software rot)有兩種形式:
        a)隱匿的腐爛:軟件逐漸不再(仍)被使用隨著剩余的應用程序的改變變得不能用。它已經被觀察到不再被使用的軟件有可能一年的半衰期;
        b) 活動的腐爛:軟件隨著不斷地被修改趨向于失去它的完整性。
        3.破窗效應與技術債務
        4.案例演示1-通過演示大型項目,隨著客戶需求的變化,導致軟件結構混亂,大家反思,為什么? 你認為軟件腐爛的原因? 反思你們公司的軟件系統也面臨這樣的問題嗎?
        第二章 何為重構 內容一:重構
        1.重構概述
        2.何時重構
        3.重構的誤區
        4.重構是持續進行的,不要先編寫爛代碼,再抽出重構
        5.如何發現哪些地方需要重構
        6.如何保證重構的正確
        7.如何測試重構
        8.通過一個小案例演示重構的基本思想(什么時間重構,如何發現重構點,如何保證重構的正確性,后如何驗收)

        內容二:案例—通過實際項目演示重構
        1.介紹項目需求情況,進行設計
        2.閱讀代碼指出代碼壞癥狀
        3.通過重構逐步改善代碼質量
        4.通過該案例演示重構的過程,我們遇到的難處,如何解決?

        內容三:重構關鍵—代碼的壞味道
        1.代碼壞味道概述
        2.代碼壞味道的分類
        3.識別代碼壞味道,是重構的重要一步
        4.所謂重構,無非就是嗅到壞味道,然后,一小步一小步的改了它。問題是,很多人對壞味道的容忍度讓他們嗅不到壞味道,
        5.案例分析—通過真實項目的代碼,分析代碼壞味道

        內容四:代碼壞味道—代碼的質量底線
        1.代碼壞味道概述
        2.代碼壞味道的分類
        3.代碼壞味道----低級篇(重復的代碼、過長的函數、過大的類、過長的參數列表、發散式變化、分散的修改)
        4.代碼壞味道----中級篇(偽面向對象的調用、數據泥團、基本類型的誤用、switch-case結構的誤用、平行繼承體系、過薄的類、只有局部意義的成員變量)
        5.代碼壞味道----高級篇
        6.通過案例,讓學員尋找代碼壞味道
        7.可以根據客戶現在的項目作為案例進行現場分析,找出相應的代碼壞味道

        內容五:某項目分析----重點了解現實項目代碼的充斥大量壞味道
        1.介紹項目需求情況,閱讀現有代碼指出代碼壞癥狀
        2.不看不知道,代碼到底有多爛—觸目驚心的代碼
        3.通過重構逐步改善代碼質量
        4.本案例學習多種重構方式
        第三章 重構 內容一:重構
        1.重構手法概述
        2.簡要演示重構的主要手法
        3.使用IDE重構工具進行重構
        4.通過案例演示如何通過重構工具完成重構

        內容二:Rhythm of Refactoring -baby step
        1.Baby steps involve making a few code changes and then checking your work by running tests. Typical refactorings take seconds or minutes to perform
        2.The Rhythm of Refactoring goes like this:
        a)Verify that all automated tests (microtests) pass
        b)Decide what code to change
        c)Implement one or more refactorings carefully
        d)Run the microtests whenever you wish to confirm that changes have not altered system behavior
        e)Repeat until the refactoring is complete or revert to an earlier state

        內容三: Refactoring Strategies & Tactics
        1.Refactoring Strategy: Piecemeal Refactoring
        2.Refactoring Strategy:Divide & Conquer
        3.Refactoring Strategy:Narrowed Change
        4.Refactoring Strategy:Parallel Change
        5.Refactoring Strategy:Unified Methods
        6.Refactoring Strategy:Evolved Target
        7.Refactoring Strategy: Graceful Retreat
        8.Refactoring Strategy: Gradual Cutover
        9.Refactoring Strategy: Preparing for Change
        10.Refactoring Tactic: Rejected Parameter
        11.Refactoring Tactic: Caller Swap
        12.Refactoring Tactic:Encapsulated Dependency
        第四章 重構難題 內容一:重構技術難題
        1.如何發現重構點
        2.知道重構的目標(結果)
        3.如何去重構—重構實踐
        4.如何保證重構的正確性-單元測試

        內容二:重構業務難題
        1.重構手法概述
        2.簡要演示重構的主要手法
        第五章 函數相關重構 內容一:函數的重構
        1.函數的重構
        2.巨型函數的種類
        a)項目列表式巨型方法
        b)鋸齒狀巨型方法
        3.分解函數
        4.助手方法提取
        5.利用自動重構對付巨型方法
        6.利用手工重構對付巨型方法
        7.引入感知變量
        8.函數依賴收集
        9.分解助手方法和方法對象
        10.通過案例介紹長函數的重構佳實踐

        內容二:高質量函數/過程
        1.為什么需要函數
        2.函數復雜度度量
        3.函數圈復雜度以及度量
        4.函數抽象層次-單一抽象層次原則SLAP(Single Level of Abstrction Principle)
        5.函數實現模式之—組合函數(Composed Method)
        6.萬惡之源—函數過長
        7.函數的單一職責
        8.函數第一原則:是要短小,函數第二原則:是還要短小,函數第三原則:是必須短小
        9.函數重構之道—抽取方法(Extract Method)和抽取對象函數
        10.函數命名—怎樣取好的函數名
        11.通過大量項目代碼分析,函數的遇到的各種問題,如何編程高質量函數

        內容三:函數易理解與溝通
        1.函數主體流
        2.函數的異常處理
        3.函數主題流程簡化方法1-助手方法
        4.助手方法的應用場景
        5.助手方法的效果
        6.函數主題流程簡化方法2-函數對象(MethodObject)
        通過真實項目代碼進行分析,如果提高代碼的可讀性

        內容四:函數10個一
        1.每個變量只用于單一用途
        2.每一個行代碼只表達一件事
        3.一個循環只做一件事
        4.單一抽象層次原則
        5.代碼組織得一次只做一件事情
        6.函數體內只關注一種變化的原因(動機)
        7.函數應該遵守單一職責
        8.函數圈復雜應該小于一十
        9.函數第一原則是必須要短小
        10.編寫函數時必須一心一意,專注,懷有謙卑的心態
        第六章 重構模式 內容一:重構到模式
        1.軟件設計的基本原則
        2.設計模式概述
        3.設計模式的本質論
        4.設計模式如何適應變化和封裝
        5.重構到模式的思路

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

        內容三:案例---重點介紹重構代碼重復和對應模式
        1.通過案例學習以下重構到模式手段
        2.構造Template Method
        3.以Composite取代一/多之分
        4.引入Null Object
        5.用Adapter統一接口
        6.用Fatory Method引入多態創建
        7.重點學習案例的重構到模式的過程
        第七章 模塊重構 內容一:模塊重構
        1.結合以下問題進行分析,具體內容還在整理之中
        2.由于有些同事不會去分析數據流,不會去根據數據流去抽象和設計,從而導致了數據流的不少處理環節的代碼互相耦合嚴重,公有變量不合理。建議去談談從數據流進行抽象和設計的方法。
        3.我們提供給客戶的軟件產品,二次開發不太方便(可讀性差,可擴展性差,可維護性差)。如何通過重構去達成更好的二次開發便利性?
        4.如何通過合理的調整,確保迭代開發的過程真正做到“增量開發”,而不是“修改”已有代碼?
        5. 如何屏蔽硬件變化導致的軟件系統需要大幅度的修改?
        6.分析某項目,演示模塊重構,如何在大型應用系統進行模塊重構
        第八章 架構重構 內容一: 架構重構
        1.軟件架構概述
        2.遺留系統的軟件架構恢復
        3.軟件架構的重構時機
        4.軟件架構的重構步驟
        5.架構壞味道
        6.架構重構策略

        內容二:案例分析—某互聯網項目架構重構(根據時間調整)
        1.項目背景以及相關需求
        2.軟件架構的演進與重構過程
        3.質量屬性對軟件架構的驅動
        4.架構的可擴展性架構
        5.緩存技術在架構之中的應用
        6.Web層的架構策略
        7.中間層的架構和集群策略
        8.大型并發系統Session的復制和容錯架構策略
        9.數據的架構
        10.該案例主要演示軟件架構的重構策略
        第九章 重構管理 內容一:安全重構
        1.重構的恐懼心里
        2.重構勇氣
        3.安全重構和祈禱式重構
        4.安全重構保證
        5.通過案例如何保證重構的正確性

        曙海教育實驗設備
        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號 .(2014年7月11)...................
        友情鏈接: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培訓 短期培訓系列課程培訓機構 長期課程列表實踐課程高級課程學校培訓機構周末班 曙海 教育 企業 培訓課程 系列班 長期課程列表 培訓機構周末班 短期培訓系列課程培訓機構 曙海教育企業培訓課程 系列班
        在線客服