與 AI 互動 - 學習如何看呼叫鏈堆疊資訊
目的
收集不同結構呼叫鏈,對應的堆疊結構資訊,熟悉堆疊結構與程式邏輯的對應關係。
避免當看到後臺系統一堆報錯堆疊資訊後,無從下手的情況。
互動記錄
💡 淺顯的認為,在向 AI 提問題前,是處於 2 種求知的狀態:-- 一無所知,沒有方向
-- 有一些淺顯的瞭解,可以從一些簡單的方向,順藤摸瓜
基於與 Cursor Claude-3.5-sonnet-20241022 模型多輪對話:
HumanMessage 代表本人的問題
AIMessage 代表 AI 的回答(摘取關鍵的部分)
HumanMessage-1
給出示例並列印 for 迴圈語句呼叫鏈 堆疊資訊 與 if 迴圈語句呼叫鏈 堆疊資訊
AIMessage-1
public class StackTraceDemo {
public void forLoopMethod() {
for(int i = 0; i < 2; i++) {
System.out.println("\n第" + (i+1) + "次迴圈的堆疊資訊:");
methodA();
}
}
public void ifMethod() {
if(true) {
methodB();
}
}
private void methodA() {
// 獲取當前堆疊資訊
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
printStackTrace(stackTrace);
}
private void methodB() {
// 獲取當前堆疊資訊
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
printStackTrace(stackTrace);
}
private void printStackTrace(StackTraceElement[] stackTrace) {
for(int i = 0; i < stackTrace.length; i++) {
System.out.println("\t" + stackTrace[i]);
}
}
public static void main(String[] args) {
StackTraceDemo demo = new StackTraceDemo();
System.out.println("===== For迴圈堆疊資訊 =====");
demo.forLoopMethod();
System.out.println("\n===== If語句堆疊資訊 =====");
demo.ifMethod();
}
}
程式碼真實執行結果
HumanMessage-2
以 markdown 圖形化展示呼叫鏈
AIMessage-2
For 呼叫鏈
IF 呼叫鏈
持續學習
使用(結果 + 視覺化圖形)的方式,學會與 AI 進行溝通,持續學習,汲取更多知識
最後
不用再透過傳統搜尋的學習,效率更高,各位還有什麼透過與 AI 互動後,學習到的新知識呢?
相關文章
- [golang]如何看懂呼叫堆疊Golang
- 你真的會看異常堆疊資訊麼
- pretty-printers:更優雅的看GDB堆疊資訊
- 區塊鏈學習-Golang 與智慧合約的互動(一)區塊鏈Golang
- android 解碼混淆過的堆疊資訊Android
- thinkphp console 命令列列印錯誤呼叫堆疊PHP命令列
- JavaScript是如何工作的:引擎,執行時和呼叫堆疊的概述!JavaScript
- Java獲取堆疊資訊的3種方法Java
- JVM異常不列印堆疊資訊 [ -XX:-OmitStackTraceInFastThrow ]JVMMITAST
- Go 錯誤堆疊資訊之 CockroachDB errors 庫GoError
- VC++ 崩潰處理以及列印呼叫堆疊C++
- 解讀 JavaScript 之引擎、執行時和堆疊呼叫JavaScript
- JavaScript的工作原理:引擎,執行時和呼叫堆疊JavaScript
- 如何有效學習互動設計1
- 如何有效學習互動設計2
- Python實現堆疊與佇列Python佇列
- JS 堆疊JS
- 平衡堆疊
- 堆疊圖
- MySQL與Python的互動學習筆記MySqlPython筆記
- (資料科學學習手札93)利用geopandas與PostGIS進行互動資料科學
- Beego框架學習--(核心:資料互動)Go框架
- JavaScript 工作原理之一-引擎,執行時,呼叫堆疊(譯)JavaScript
- JS 資料型別和堆疊JS資料型別
- 資料結構的概念、堆疊資料結構
- 如何用堆疊來儲存和恢復滾動條位置
- JS中堆疊記憶體的練習JS記憶體
- FastJson TemplatesImpl利用鏈詳細呼叫學習ASTJSON
- 學習 PixiJS — 互動工具JS
- Laravel/Lumen 自定義錯誤日誌格式過濾堆疊資訊Laravel
- 【資料結構】堆疊(順序棧、鏈棧)的JAVA程式碼實現資料結構Java
- 看動畫輕鬆理解「 堆 」動畫
- flash如何與js互動?JS
- 如何利用執行緒堆疊定位問題執行緒
- 【譯】JavaScript的工作原理:引擎,執行時和呼叫堆疊的概述JavaScript
- 從彙編視角解析函式呼叫中的堆疊運作函式
- C#堆疊(Stack)C#
- 遷移學習:互資訊的變分上下界遷移學習