• <input id="gi6g0"></input>
  • <table id="gi6g0"><kbd id="gi6g0"></kbd></table>
  • <option id="gi6g0"><kbd id="gi6g0"></kbd></option>
    <bdo id="gi6g0"><noscript id="gi6g0"></noscript></bdo><table id="gi6g0"></table>
  • <menu id="gi6g0"></menu>
  • <td id="gi6g0"></td>
  • <table id="gi6g0"><option id="gi6g0"></option></table>
  • <table id="gi6g0"><noscript id="gi6g0"></noscript></table>
  • 18986369768
  • 新聞中心JINLI EDU

    當前位置:新聞中心 >

    襄陽軟件培訓學校講訴冗余代碼檢測與分析的導

    來源:互聯網 作者:|發布時間:2018-10-08|0瀏覽

    講訴冗余代碼檢測與分析的導言 前段時間,我開發了一款工具,分析源代碼中的依賴關系。它使用Roslyn...

    講訴冗余代碼檢測與分析的導言


    前段時間,我開發了一款工具,分析源代碼中的依賴關系。它使用Roslyn創建C#源代碼抽象語法樹,使用libclang創建C++源代碼抽象語法樹。為了驗證它是否可以取得預期效果,我接下來實現了識別未使用方法的功能。結果顯示,C#代碼解析比C++代碼解析準確得多,因此,我選擇把重點放在C#分析器的進一步開發和其他人開發的更復雜的C#代碼上。


    12.jpg


    起初,該工具會標記出冗余方法所在的行,在弄清楚問題范圍之后,我實現了自動刪除那些行的選項。一個典型的分析過程會多次執行這個工具,盡可能地修剪源代碼樹。接下來是多個變更還原循環,以便可以成功地構建并通過測試。失敗的原因是工具行為異?;蛘咭阎木窒扌?,例如,反射或代碼契約。


    我選擇了多個自己用過而又想回饋的C#項目,用它們的GitHub庫訓練了這個工具。最后,我向社區提交了pull request,請求他們討論我在自己的分支里做的變更。由于這個工具很苛刻,而我又是第一次在網上與人交流,不懂技巧,所以希望我沒有冒犯太多的人。在向社區做貢獻及參與后續討論的過程中,我對問題的理解更深入了,本文旨在將我的所得回饋給更廣泛的社區。


    預約報名

    RESERVATIONS

    Free course or class

    招生熱線

    18986369768

    Copyright©襄陽金礪教育科技有限公司襄陽網站建設:創杰科技   鄂ICP備2023020818號-1

    客戶服務熱線

    189-8636-9768

    139-8637-5839

    在線客服
    七七国产福利在线二区&91热久久免费频精品99欧美&在线亚洲专区中文字幕&日本三级香港三级三级人!妇久&久久久久久久久久久鸭&国产精品美女久久久久av福利&曰本女人牲交全视频免费播放
  • <input id="gi6g0"></input>
  • <table id="gi6g0"><kbd id="gi6g0"></kbd></table>
  • <option id="gi6g0"><kbd id="gi6g0"></kbd></option>
    <bdo id="gi6g0"><noscript id="gi6g0"></noscript></bdo><table id="gi6g0"></table>
  • <menu id="gi6g0"></menu>
  • <td id="gi6g0"></td>
  • <table id="gi6g0"><option id="gi6g0"></option></table>
  • <table id="gi6g0"><noscript id="gi6g0"></noscript></table>