一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Uber開源“食人魚”,專吃落后代碼

 西北望msm66g9f 2020-03-23
Uber 開源了一款自動化工具 Piranha,該工具能夠自動從應(yīng)用程序代碼庫中刪除過時的和未使用的代碼。

▲Piranha,意為“食人魚”
根據(jù) Uber 官方博客的介紹,開發(fā) Piranha 的初衷是消除過時代碼帶來的負(fù)面影響。當(dāng)一項特性已 100% 推送給用戶后,或某些實(shí)驗(yàn)性功能失敗后,代碼中的特性標(biāo)識(feature flags)就已過時。
而它可能導(dǎo)致技術(shù)債的產(chǎn)生,使應(yīng)用程序變得更加臃腫,開發(fā)人員為此要執(zhí)行更多不必要的操作,甚至可能影響到程序的整體性能。消除技術(shù)債不僅耗時,也會影響到新功能的開發(fā)。
為了使該過程自動化,Uber 開發(fā)了 Piranha,它可以通過掃描源代碼,來刪除與過時的特性標(biāo)識相關(guān)的代碼,從而使代碼庫更清潔、更安全、性能更高,且更易于維護(hù)。對于企業(yè)來說,Piranha 有助于加快開發(fā)周期、降低維護(hù)成本,并改善用戶體驗(yàn)。
Piranha 首先會輸入標(biāo)識的名稱、預(yù)期的處理行為以及標(biāo)識作者的名稱,接著分析程序的抽象語法樹(AST)以生成適當(dāng)?shù)闹貥?gòu),并將其打包到 diff 中,分配給對應(yīng)的作者進(jìn)一步檢查,作者可以將更改提交到主代碼庫,或者在必要時執(zhí)行其他重構(gòu)。
Uber 表示,Piranha 作為獨(dú)立工具可執(zhí)行代碼重構(gòu),也可作為工作流管道的一部分。該管道可定期自動生成 diff 和任務(wù),以清除過時的特性標(biāo)識。
上圖展示了 Piranha 管道的架構(gòu)圖。Piranha 會先生成一個 diff,將其放入代碼審查系統(tǒng),該標(biāo)識的原始作者為默認(rèn)審查者。作者可以按原樣接受 diff,根據(jù)需要對其進(jìn)行修改,也可以拒絕并將其標(biāo)記為 not being stale(未過時)。
這個管道還在任務(wù)管理系統(tǒng)中生成了一個清理任務(wù),以跟蹤每個 diff 的狀態(tài)。另外, 由于開發(fā)人員并不總是能夠及時地對它們采取行動,這里還引入了一個被稱作 PiranhaTidy 的提醒機(jī)器人,以定期添加 Piranha 相關(guān)任務(wù)的提醒。
Piranha 管道采用啟發(fā)式(heuristic)方法,將超過特定時間段未修改的標(biāo)識視為過時,并為它們生成 diff。至于具體的時間段設(shè)置,可以自定義。根據(jù) Uber 的說法,Piranha 能夠處理數(shù)百萬行代碼,平均不到 3 分鐘即可生成 diff。
目前為止,Piranha 已經(jīng)在 Uber 的 Android 和 iOS 代碼庫中運(yùn)行了相當(dāng)長一段時間,被用來刪除了約兩千個過時的特性標(biāo)識及相關(guān)代碼。開源后的 Piranha 包含三個獨(dú)立的版本,分別支持三種不同的語言:Objective-C、Swift 和 Java。
接下來,Piranha 有可能會擴(kuò)展至更多語言,Uber 號召更多開發(fā)人員來一起為它做出貢獻(xiàn)。
有關(guān) Piranha 的更多信息可查看 Uber 博客原文: 
https://eng./piranha

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日韩人妻欧美一区二区久久| 日本黄色高清视频久久| 亚洲男人的天堂久久a| 久久精品国产亚洲av麻豆| 午夜精品麻豆视频91| 亚洲欧美日韩精品永久| 一区二区日韩欧美精品| 日韩精品视频一二三区| 国内精品一区二区欧美| 国产一区一一一区麻豆| 欧美欧美欧美欧美一区| 中文字幕中文字幕在线十八区| 国产精品日本女优在线观看| 亚洲欧美日韩国产成人| 国产精品免费视频久久| 日韩精品亚洲精品国产精品| 午夜福利视频偷拍91| 久久综合日韩精品免费观看| 出差被公高潮久久中文字幕| 东京热一二三区在线免| 精品国产亚洲区久久露脸| 国产又色又爽又黄又大| 欧美精品一区二区水蜜桃| 好吊日在线视频免费观看| 色婷婷视频国产一区视频| 欧美日韩精品久久亚洲区熟妇人 | 伊人色综合久久伊人婷婷| 欧美国产日产综合精品| 好吊色免费在线观看视频| 大香伊蕉欧美一区二区三区| 亚洲中文字幕视频在线播放| 久热在线视频这里只有精品| 性感少妇无套内射在线视频| 91偷拍视频久久精品| 国产精品流白浆无遮挡| 久久国产亚洲精品赲碰热| 国产毛片不卡视频在线| 欧美性猛交内射老熟妇| 欧美韩日在线观看一区| 亚洲国产av国产av| 亚洲国产日韩欧美三级|