日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
寫個(gè)取代自己的工具:Coco——自動(dòng)化項(xiàng)目分析與建議

 作為一個(gè)資深的軟件工程師,我經(jīng)常遇到其他/她開發(fā)人員大量的重復(fù)問題。過去只靠寫博客,現(xiàn)在,我有了四種方式來解決:

10年積累的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有芝罘免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

  • 博客。我的博客 phodal.com 上有 850+ 的博客
  • 工具。創(chuàng)造開源工具解決重復(fù)性問題,如:ADR、Lemonj、Coca、Clij
  • 開源電子書。系統(tǒng)性的歸納某一個(gè)領(lǐng)域相關(guān)實(shí)踐和模式,如:《Serverless 應(yīng)用架構(gòu)》
  • 知識平臺。結(jié)合工具和電子書,如 DevOps 知識平臺:Ledge

即使如此,依舊沒有解決一個(gè)問題:我需要人力來分析項(xiàng)目、再拋出這些鏈接。于是,過去我一直就在想:能否做一個(gè)工具來取代自己? 當(dāng)然了,我的真實(shí)意思不是:取代我自己,而是取代我做的那些重復(fù)性活動(dòng)。(PS:等寫完之后,再寫一個(gè)自動(dòng)化寫 PPT 的工具,就完美了。)

所以,我開始編寫一個(gè)新的工具,一個(gè)關(guān)于對代碼進(jìn)行自動(dòng)化分析與建議的工具。

Coco:自動(dòng)化分析與建議工具

在 Coco 的 README ( https://github.com/phodal/coco )里,可以看到現(xiàn)在規(guī)劃的 1.0 的相關(guān)的 Todo 列表。從某種意義上來說,這是一個(gè) AI 工具(專家系統(tǒng)),它依賴于資深工程師的大量的經(jīng)驗(yàn)。它的難度主要在于:

  • 工具的 MVP 版本。驗(yàn)證工具在技術(shù)上是可行的(PS:從我的角度來看,它并不存在問題)
  • 持續(xù)性的經(jīng)驗(yàn)輸入。持續(xù)完善整個(gè)工具的建議體系和架構(gòu)
  • 上下游生態(tài)完善。獲取上下游工具相關(guān)的資料和數(shù)據(jù)(PS:如 DevOps、云原生相關(guān))
  • 避免功能膨脹。必要的情況下,通過插件的方式來擴(kuò)展功能

Coco 與 Coca 的關(guān)系

Coca 是筆者(@phodal)寫的一個(gè)用于系統(tǒng)重構(gòu)、系統(tǒng)遷移和系統(tǒng)分析的瑞士軍刀。它可以分析代碼中的測試壞味道、模塊化分析、行數(shù)統(tǒng)計(jì)、分析調(diào)用與依賴、Git 分析以及自動(dòng)化重構(gòu)等。

Coco 這個(gè)名字的來源是椰子雞,正如 Coca 項(xiàng)目(https://github.com/phodal/coca )的來源是 Coca Cola,只是維度上由喝的變成吃的而已。Coco 是 Coca 的姊妹工具,與 Coca 工具是相互補(bǔ)充。

Coco:自動(dòng)化分析與建議工具

Coco 要實(shí)現(xiàn)的主要功能是:

  • 分析。對項(xiàng)目進(jìn)行全面化的分析,如 Git 歷史、模塊化分析、框架使用等
  • 報(bào)告。以可視化和文檔的形式輸出項(xiàng)目的總覽信息(結(jié)合 D3 可視化的形式)
  • 建議。針對于項(xiàng)目中的問題,進(jìn)行自動(dòng)化的建議
  • 成熟度。(TBC,待定)

從里程碑來說,我們所要做的功能特別多。而結(jié)合 Coca 和 DevOps 知識平臺 Ledge 在開源社區(qū)經(jīng)受了一年多的洗禮,它們受到了越來越多的開發(fā)者的喜愛。與此同時(shí),在這一年多的時(shí)間里,我也將自己的經(jīng)驗(yàn)不斷也輸入到了項(xiàng)目中。

與此同時(shí),我們將先創(chuàng)建一個(gè)組織:Inherd,作為這一系列工具的核心團(tuán)隊(duì)。

Coco 技術(shù)棧

作為一個(gè) CLI 工具,我本該選取 Golang 作為主要技術(shù)棧的。但是,經(jīng)常與 Ledge 的開發(fā)者們討論一番后,大家決定使用 Rust(雖然大部分人都沒有經(jīng)驗(yàn))作為主要語言。與此同時(shí),作為一個(gè)已經(jīng)使用了一年的 Rust 語言的開發(fā)者,我覺得這并不是太大的難題。與此同時(shí),這個(gè)工具未來也將在瀏覽器上運(yùn)行,Rust 的 Web Assembly 支持比幾大主流語言友好。

除了 Rust 之外,我們還需要可視化相關(guān)的報(bào)告等,為此我們還需要前端相關(guān)技術(shù)棧的開發(fā),如 D3.js。當(dāng)然了,能結(jié)合 Web Assembly + D3.js + 其它框架也是一個(gè)不錯(cuò)選項(xiàng)。

Coco 進(jìn)度

對于寫一個(gè)工具來說,最難的是開個(gè)頭,隨后就是補(bǔ)充功能和重構(gòu)了,誰都能做。

當(dāng)前主要進(jìn)展:

  • 使用 libgit2 實(shí)現(xiàn)對 Git 相關(guān)的分析中。
  • 集成 Tokei 實(shí)現(xiàn) CLOC 相關(guān)的行數(shù)統(tǒng)計(jì)。
  • 集成 Scie 的框架檢測功能,對技術(shù)棧進(jìn)行可視化

以下主要模塊還未開始:

  • 模塊化分析
  • 可視化報(bào)告
  • 標(biāo)簽生成(AI,分詞)
  • 改進(jìn)建議
  • 工具建議

本文轉(zhuǎn)載自微信公眾號「phodal」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系phodal公眾號。


新聞標(biāo)題:寫個(gè)取代自己的工具:Coco——自動(dòng)化項(xiàng)目分析與建議
轉(zhuǎn)載注明:http://www.5511xx.com/article/dhphgpo.html