成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

谷歌大神又一開源神器!代碼調試不選它選誰?

新聞 前端
如果調試是Debug的必經之路,那么編程應該將它考慮在內。今天就和大家分享一個代碼調試神器——Cyberbrain。

 [[389321]]

如果調試是Debug的必經之路,那么編程應該將它考慮在內。今天猿妹就和大家分享一個代碼調試神器——Cyberbrain。

Cyberbrain是一個免費開源的Python代碼調試解決方案,它可視化程序執行以及每個變量的變化方式,讓程序員免受調試之苦。主要具有以下3個特性:

  • 回溯變量更改
  • 查看程序執行的每個狀態,包括變量的值
  • 循環調試

Cyberbrain并不會改變你的工作流程,運行一個程序(從 vscode 或命令行,都可以),一個新的面板將被打開,程序執行情況全部以可視化展示。

Cyberbrain如何安裝

Cyberbrain由一個Python庫和各種編輯器/ IDE集成組成。當前,它支持VS Code。要安裝Cyberbrain:

  1. pip install cyberbrain 
  2.  
  3. code --install-extension laike9m.cyberbrain 

你也可以直接從VS Code上安裝。

如何使用

假設你想跟蹤一個函數foo,只需用@trace以下命令裝飾它:

  1. from cyberbrain import trace 
  2.  
  3. # As of now, you can only have one @trace decorator in the whole program. 
  4.  
  5. # We may change this in version 2.0, see https://github.com/laike9m/Cyberbrain/discussions/73 
  6.  
  7. @trace # Disable tracing with `@trace(disabled=True)` 
  8.  
  9. def foo(): 
  10.  
  11. ... 

以下gif演示了工作流程:

使用Cyberbrain,可能有哪些意外

Cyberbrain可能與其他調試器發生沖突。如果設置斷點并使用VSC的調試器,則Cyberbrain可能無法正常運行。

如果你打開了多個VS Code窗口,則將始終在第一個窗口中創建跟蹤圖。

當有多個裝飾器時,應將其@trace作為最里面的裝飾器。

  1. @app.route("/"
  2.  
  3. @trace 
  4.  
  5. def hello_world(): 
  6.  
  7. x = [123
  8.  
  9. return "Hello, World!" 

賽博大腦——數據流分析和變量跟蹤

與其他調試器不同,Cyberbrain可以顯示準確的數據流,并且可以在程序的每個狀態中持續存在。你不僅不需要記住任何事情,甚至你都不需要逐步執行操作,這樣一來就可以節省大量調試時間。

下圖是使用Cyberbrain進行調試的方法:

假如你想找出返回值錯誤的原因。通過查看圖表,你已經對導致返回值的原因有了一個大概的了解。

接下來,將鼠標懸停在“返回”節點上,所有相關值都會顯示出來,形成從函數開始到結束的跟蹤路徑:

只要動動鼠標就能找到問題,誰還會去用編譯器呢?

目標檢查

如果現在有一個大列表,但它無法與圖匹配,如何使用工具來檢查它的值?devtools可用于檢查值,如下所示。

啟動后,Cyberbrain會自動打開devtools窗口。將鼠標懸停在變量上時,其值將記錄在devtools控制臺中。因此,在這種情況下,盡管沒有足夠的空間在跟蹤圖中顯示整個列表,但是您仍然可以從devtools中檢查其值。

幾乎所有的Python調試器(PyCharm,VS Code等)都會截取參數,并且無法顯示大列表中的每個元素。但是我們相信“細節決定成敗”,每條信息可能都是有用的,不應忽略。因此,除非你明確指示,Cyberbrain不會截取參數。

循環

Cyberbrain還有另一個獨特的功能,你可以在調試時設置循環計數器。

由于實現非常復雜,因此存在一些已知的錯誤,不過隨著更新,應該會變得更好。

目前,Cyberbrain已經在Github上標星1.5K,累計分支 64 個。(Github地址:https://github.com/laike9m/Cyberbrain)

最后,值得一提的是,創建者laike9m畢業于清華大學,谷歌軟件工程師,目前全職開發Cyberbrain工具。

 

責任編輯:張燕妮 來源: 開源最前線
相關推薦

2011-04-28 10:08:08

噴墨打印機

2021-01-26 10:59:52

開源技術 數據

2020-11-25 12:50:53

微軟老舊照片開源

2022-09-30 09:24:27

開源模型

2013-08-01 16:52:31

Tizen移動操作系統移動平臺

2020-09-11 15:37:18

GitHub代碼開發者

2012-09-04 11:20:31

2011-07-15 09:27:43

亞馬遜Kindle平板電腦

2021-08-06 06:44:01

Serverless無服務器計算云服務

2011-05-07 14:59:18

投影幕投影機

2021-09-06 06:45:06

普通索引唯一

2025-01-08 11:02:49

2009-12-21 10:33:45

開源項目

2022-07-14 10:54:15

Python代碼Matplotlib

2012-07-24 09:19:05

打印機

2018-07-06 14:27:26

存儲

2020-09-25 15:40:21

戴爾

2021-01-08 13:03:48

散熱器風冷水冷
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区免费 | 亚洲成av人片在线观看 | 伊人久久伊人 | 天天精品在线 | 日本一区二区不卡 | 欧美一区二区三区四区五区无卡码 | 久久精品国产亚洲一区二区三区 | 成年人的视频免费观看 | 久久男人 | 欧美男人天堂 | 中文字幕一区二区三区日韩精品 | 视频一区在线观看 | 精品日本久久久久久久久久 | 国产午夜精品一区二区三区四区 | 嫩呦国产一区二区三区av | 欧美国产亚洲一区二区 | 福利社午夜影院 | 国产伦精品一区二区三区精品视频 | 国产成人精品视频在线观看 | 国产欧美一区二区精品久导航 | 成年人的视频免费观看 | 99国产精品一区二区三区 | 成人免费视频网站 | www.av在线| 一区二区精品 | 亚洲欧洲国产视频 | 久久精品中文 | 国产伦精品一区二区三区照片91 | 国产精品久久久久久久三级 | 国产在线一区二 | 国产激情在线 | 天天射网站 | 亚洲码欧美码一区二区三区 | 久久久久久久久久影视 | 国产精品一区一区 | 又黄又色| 亚洲欧美一区二区三区1000 | 在线播放亚洲 | 亚洲人久久 | 国产精品毛片一区二区在线看 | 国产日韩精品在线 |