本篇解答以下問題:

  • 如何對執行中的程式進行偵錯?
  • 如何對 Web Service 進行偵錯?

本文假設讀者已熟悉基本的偵錯概念,包括使用命令列的 fglrun -d 或 Genero Studio 的圖形化偵錯器。兩種介面都具備逐步執行、中斷點、監看變數、顯示指令與堆疊框架等核心功能。

偵錯技巧一:變數變更高亮顯示

在 Genero Studio 的圖形化偵錯器中,最近被修改的變數會以紅色顯示,讓你可以快速識別哪些值發生了變化,無需逐一比對。

偵錯技巧二:DataView 核取方塊控制

DataView 允許切換偵錯期間哪些變數需要更新。當處理大量變數時,取消勾選部分選項可以提升逐步執行的效能。透過右鍵選單,可以取消勾選 Fetch on Local、Module 與 Global 等設定。

偵錯技巧三:呼叫函式功能

call 功能允許你在偵錯期間呼叫應用程式中的任意函式。例如,可以建立專用的偵錯函式來查詢環境變數,在不重新編譯程式的情況下即時取得系統資訊。

偵錯技巧四:附加至執行中的程序

程式不需要從一開始就以偵錯模式啟動。開發者可以將偵錯器附加到已在執行中的程序:

  • 使用命令列:fgldb -p process-id
  • 使用 Genero Studio:透過 Debug → Attach to Process 選單

附加後,偵錯器會使用 FGLLDPATHFGLSOURCEPATH 環境變數來定位原始碼檔案。

偵錯技巧五:遠端與行動裝置偵錯

附加至執行中程序的能力同樣適用於遠端伺服器,以及執行 Genero 應用程式的行動裝置。這意味著你可以對在生產環境中實際運行的程式進行即時偵錯,無需在本地重現問題。

原文:https://4js.com/ask-reuben/ig-169/  ·  有任何 Genero 技術問題或翻譯疑問,歡迎來信 support@t100.app