{"version":1,"pages":[{"id":"qI914A1Wq13ik0oPFH6N","title":"前言","pathname":"/","siteSpaceId":"sitesp_Q9FBt","description":""},{"id":"Nk6NbMWqmDcIkwOK40i3","title":"原理篇","pathname":"/yuan-li-pian","siteSpaceId":"sitesp_Q9FBt"},{"id":"cS2pbA2nkWAH6YZsiQqm","title":"编译器","pathname":"/yuan-li-pian/compiler","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"}]},{"id":"3MKkPfF8KBAabOtAyJIF","title":"编译器前端","pathname":"/yuan-li-pian/compiler/compiler-front","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"},{"label":"编译器"}]},{"id":"rL5WfAswUBqMBnqofR7o","title":"编译器中端","pathname":"/yuan-li-pian/compiler/compiler-mid","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"},{"label":"编译器"}]},{"id":"9v8LrUGJRH15kqi0PKSk","title":"程序分析","pathname":"/yuan-li-pian/program-analysis","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"}]},{"id":"vyIm7pINrtieszBSsxeO","title":"静态分析","pathname":"/yuan-li-pian/program-analysis/static-analysis","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"},{"label":"程序分析"}]},{"id":"HFtqs8BPMIFBZmmT8sKk","title":"动态分析","pathname":"/yuan-li-pian/program-analysis/dynamic-analysis","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"},{"label":"程序分析"}]},{"id":"KeZlhHNUiLfvZygRTwh7","title":"可视化图类型","pathname":"/yuan-li-pian/graph","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"原理篇"}]},{"id":"RMbvsKwCqQUKGGmWQB2A","title":"实践篇","pathname":"/shi-jian-pian","siteSpaceId":"sitesp_Q9FBt"},{"id":"EtsX9LeDSQeUjO31Z1QR","title":"实践练习","pathname":"/shi-jian-pian/tools","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"}]},{"id":"6MAcxi2m3G1nE3TDzLbV","title":"常见图表生成","pathname":"/shi-jian-pian/tools/graphs","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"实践练习"}]},{"id":"54VW0WLTfyk1AtqBDxZA","title":"代码变更影响分析","pathname":"/shi-jian-pian/tools/cg-diff","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"实践练习"}]},{"id":"kk1dxnjdpvj9agOecwr1","title":"业界实践","pathname":"/shi-jian-pian/case-intro","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"}]},{"id":"ioPjooxRWrDnGAHeun8n","title":"代码理解与分析","pathname":"/shi-jian-pian/case-intro/understand-code","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"RhJhg4AB7RmBdy2x4IpN","title":"代码阅读辅助工具","pathname":"/shi-jian-pian/case-intro/understand-code/code-read-tools","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"},{"label":"代码理解与分析"}]},{"id":"6XyX8mNJ0SfrMl4cDdqz","title":"正则表达式可视化工具","pathname":"/shi-jian-pian/case-intro/understand-code/regex-read-tools","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"},{"label":"代码理解与分析"}]},{"id":"Gf8ajn6mlw9peqXF1AWV","title":"代码质量检测","pathname":"/shi-jian-pian/case-intro/code-quality","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"HO6u200966YQgk3RQjWk","title":"代码性能分析","pathname":"/shi-jian-pian/case-intro/code-performance-analysis","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"mCiPLrYGaLvz00Jq6xDJ","title":"精准测试","pathname":"/shi-jian-pian/case-intro/precision-testing","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"Cei0bm6JMAVsvwS0MtqU","title":"代码自动重构","pathname":"/shi-jian-pian/case-intro/automated-refactoring","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"R4QvlwbdNN5NaUvezLcO","title":"冗余代码治理","pathname":"/shi-jian-pian/case-intro/automated-refactoring/rong-yu-dai-ma-zhi-li","siteSpaceId":"sitesp_Q9FBt","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"},{"label":"代码自动重构"}]},{"id":"7qTudmHHmra8ab3CaFLI","title":"架构治理","pathname":"/shi-jian-pian/case-intro/architecture-governance","siteSpaceId":"sitesp_Q9FBt","description":"","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"}]},{"id":"sljSjRttH9MQzaIjTNi4","title":"架构度量","pathname":"/shi-jian-pian/case-intro/architecture-governance/jia-gou-du-liang","siteSpaceId":"sitesp_Q9FBt","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"},{"label":"架构治理"}]},{"id":"ru1Per8xHiG0sCyyu0WH","title":"架构守护","pathname":"/shi-jian-pian/case-intro/architecture-governance/jia-gou-shou-hu","siteSpaceId":"sitesp_Q9FBt","breadcrumbs":[{"label":"实践篇"},{"label":"业界实践"},{"label":"架构治理"}]},{"id":"KUt6U9mzZcdn76DvhyPZ","title":"结语","pathname":"/jie-yu","siteSpaceId":"sitesp_Q9FBt"}]}