From bb8d7886104513fe015d50bdc6b4d45b8b1e822b Mon Sep 17 00:00:00 2001 From: yumaojun03 <719118794@qq.com> Date: Sat, 16 Nov 2024 17:53:04 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E5=8D=95=E5=85=83=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- book/config/README.md | 15 +++++++++++++++ book/config/image-2.png | Bin 0 -> 16789 bytes book/config/load_test.go | 1 + 3 files changed, 16 insertions(+) create mode 100644 book/config/image-2.png diff --git a/book/config/README.md b/book/config/README.md index d69a802..f99a66f 100644 --- a/book/config/README.md +++ b/book/config/README.md @@ -77,3 +77,18 @@ type Stringer interface { ## debug 测试 +才是一个程序员入门的标准, + +Debug是一个什么事儿: 让你的代码 一行一行的运行,你人肉观察 程序的每一步 是否符合你的预期(这里的变量是不是对的) + + +1. 添加程序断点: 程序停止那里,等待运行 + +![alt text](image-2.png) + ++ Continue: 继续到下一个端点 ++ Step Over: 下一步 ++ Step In: 单步调试 ++ Step Out: 跳出当前调试步骤 + +学了Debug 遇到了问题,写个单元测试,看程序每一步的运行状态是否是正确的。 \ No newline at end of file diff --git a/book/config/image-2.png b/book/config/image-2.png new file mode 100644 index 0000000000000000000000000000000000000000..22325303cd856ed331238d25a6b167cbda9cf71a GIT binary patch literal 16789 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