<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>书单 on 方糖猫Blog</title>
    <link>https://ftmao.com/blog/tags/%E4%B9%A6%E5%8D%95/</link>
    <description>AI 视频、AI Agent 与工程实践笔记</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    <lastBuildDate>Sun, 04 Sep 2022 10:00:00 +0800</lastBuildDate><atom:link href="https://ftmao.com/blog/tags/%E4%B9%A6%E5%8D%95/index.xml" rel="self" type="application/rss+xml" /><item>
      <title>程序员逻辑思维训练手册：书单、方法与 12 周刻意练习计划</title>
      <link>https://ftmao.com/blog/posts/programmer-logical-thinking-training/</link>
      <pubDate>Sun, 04 Sep 2022 10:00:00 +0800</pubDate>
      <guid>https://ftmao.com/blog/posts/programmer-logical-thinking-training/</guid>
      <description>&lt;h1 id=&#34;程序员逻辑思维训练手册书单方法与-12-周刻意练习计划&#34;&gt;程序员逻辑思维训练手册：书单、方法与 12 周刻意练习计划&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;写这篇的动机很直接：「我感觉自己逻辑思维很弱」是我听过最多、也最难回答的自我评价。它太大了，大到无从下手。&lt;br&gt;
这篇的思路：&lt;strong&gt;先把「逻辑思维」这个模糊的大词拆成五种具体的、可单独训练的能力，再给每种能力配书、配练习、配检查清单&lt;/strong&gt;，最后拼成一份 12 周计划。跟着清单做就行，不用自己设计训练方案。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&#34;第一篇-先诊断逻辑思维不是一个东西是五个东西&#34;&gt;第一篇 先诊断：逻辑思维不是一个东西，是五个东西&lt;/h2&gt;
&lt;p&gt;「逻辑思维弱」是个无法改进的表述——就像说「我身体不好」而不说「我 5 公里跑不下来」。先拆开：&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;button class=&#34;code-copy&#34; type=&#34;button&#34; hidden aria-label=&#34;Copy code to clipboard&#34;&gt;
      &lt;span class=&#34;code-copy-label&#34; aria-hidden=&#34;true&#34;&gt;Copy&lt;/span&gt;
    &lt;/button&gt;
    &lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-mermaid&#34; data-lang=&#34;mermaid&#34;&gt;flowchart TD
    L[&amp;#34;逻辑思维&amp;#34;] --&amp;gt; A[&amp;#34;1 概念清晰&amp;lt;br/&amp;gt;说的每个词都有明确所指&amp;lt;br/&amp;gt;症状: 需求评审说不清&amp;lt;br/&amp;gt;变量命名含糊&amp;#34;]
    L --&amp;gt; B[&amp;#34;2 推理链条&amp;lt;br/&amp;gt;从前提一步步走到结论&amp;lt;br/&amp;gt;症状: 排查 bug 靠猜&amp;lt;br/&amp;gt;改 A 坏 B 想不到为什么&amp;#34;]
    L --&amp;gt; C[&amp;#34;3 抽象分层&amp;lt;br/&amp;gt;能切换粒度看问题&amp;lt;br/&amp;gt;症状: 代码揉成一团&amp;lt;br/&amp;gt;说不清系统架构&amp;#34;]
    L --&amp;gt; D[&amp;#34;4 边界意识&amp;lt;br/&amp;gt;看到输入就想边界与异常&amp;lt;br/&amp;gt;症状: 上线后被空指针/&amp;lt;br/&amp;gt;越界/并发打脸&amp;#34;]
    L --&amp;gt; E[&amp;#34;5 因果辨析&amp;lt;br/&amp;gt;区分相关/因果/巧合&amp;lt;br/&amp;gt;症状: 复盘归错因&amp;lt;br/&amp;gt;优化没效果&amp;#34;]&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;&lt;p&gt;对照一下，你的「弱」大概率集中在其中两三个上。&lt;strong&gt;诊断的意义在于：五种能力的训练方法完全不同&lt;/strong&gt;，混着练等于白练。&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;能力&lt;/th&gt;
					&lt;th&gt;最痛的日常场景&lt;/th&gt;
					&lt;th&gt;对应训练&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;概念清晰&lt;/td&gt;
					&lt;td&gt;需求理解偏差、命名糟糕&lt;/td&gt;
					&lt;td&gt;定义练习、费曼讲解&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;推理链条&lt;/td&gt;
					&lt;td&gt;debug 靠蒙、日志看不出因果&lt;/td&gt;
					&lt;td&gt;假设-验证法、画调用链&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;抽象分层&lt;/td&gt;
					&lt;td&gt;代码越写越乱、讲不清架构&lt;/td&gt;
					&lt;td&gt;分层画图、重构练习&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;边界意识&lt;/td&gt;
					&lt;td&gt;边界 bug 反复出现&lt;/td&gt;
					&lt;td&gt;防御性 checklist、测试先行&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;因果辨析&lt;/td&gt;
					&lt;td&gt;复盘甩锅、优化玄学&lt;/td&gt;
					&lt;td&gt;五问法、对照实验&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;思考与感悟之一&lt;/strong&gt;：编程本质是「用精确的语言描述精确的推理」。IDE 不会因为你概念模糊而报错，编译器不会因为你因果搞错而拒绝构建——&lt;strong&gt;代码能跑通和逻辑是对的之间，隔着一万个线上事故&lt;/strong&gt;。这也是为什么逻辑思维的训练必须在代码之外单独进行。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&#34;第二篇-书单按能力分级别从离散数学开始&#34;&gt;第二篇 书单：按能力分级，别从《离散数学》开始&lt;/h2&gt;
&lt;h3 id=&#34;21-入门层先把讲道理的基本功补上&#34;&gt;2.1 入门层：先把「讲道理」的基本功补上&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;书&lt;/th&gt;
					&lt;th&gt;练什么&lt;/th&gt;
					&lt;th&gt;怎么读&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;《简单逻辑学》（D.Q. 麦克伦尼）&lt;/td&gt;
					&lt;td&gt;概念清晰 + 推理链条&lt;/td&gt;
					&lt;td&gt;薄，一周读完。重点看「论证的前提与结论」「常见谬误」两章&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;《学会提问》（尼尔·布朗）&lt;/td&gt;
					&lt;td&gt;因果辨析&lt;/td&gt;
					&lt;td&gt;批判性思维入门，重点看「证据的效力」「有没有替代原因」&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;《金字塔原理》（芭芭拉·明托）&lt;/td&gt;
					&lt;td&gt;抽象分层（表达侧）&lt;/td&gt;
					&lt;td&gt;结论先行、以上统下。对写技术方案、汇报、写博客立竿见影&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;22-进阶层直接长在编程上的思维&#34;&gt;2.2 进阶层：直接长在编程上的思维&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;书&lt;/th&gt;
					&lt;th&gt;练什么&lt;/th&gt;
					&lt;th&gt;怎么读&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;《怎样解题》（波利亚）&lt;/td&gt;
					&lt;td&gt;推理链条&lt;/td&gt;
					&lt;td&gt;数学书的外壳，debug 的内核。「弄清问题→拟定计划→执行→回顾」就是排查 bug 的标准流程&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;《系统之美》（德内拉·梅多斯）&lt;/td&gt;
					&lt;td&gt;抽象分层 + 因果辨析&lt;/td&gt;
					&lt;td&gt;库存、流量、队列都是系统。看完你会用「反馈回路」的眼光看重试风暴、缓存雪崩&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;《程序员修炼之道》&lt;/td&gt;
					&lt;td&gt;全部五种&lt;/td&gt;
					&lt;td&gt;工程场景化的思维训练，DRY、正交性、曳光弹，每一条都在教你怎么把问题切干净&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;23-硬核层可选别勉强&#34;&gt;2.3 硬核层：可选，别勉强&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;《离散数学及其应用》：命题逻辑、集合、图论——编程的数学地基。只建议读前三章，当工具书查。&lt;/li&gt;
&lt;li&gt;《思考，快与慢》：知道大脑什么时候在骗你。和编程不直接相关，但和「复盘归错因」直接相关。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;选书原则：一次只读一本，读完一本书的每一章都要落到「这周我在代码里用了它哪一点」。&lt;/strong&gt; 读而不用的思维书，和收藏夹里的技术文章没有区别。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;button class=&#34;code-copy&#34; type=&#34;button&#34; hidden aria-label=&#34;Copy code to clipboard&#34;&gt;
      &lt;span class=&#34;code-copy-label&#34; aria-hidden=&#34;true&#34;&gt;Copy&lt;/span&gt;
    &lt;/button&gt;
    &lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-mermaid&#34; data-lang=&#34;mermaid&#34;&gt;flowchart LR
    A[&amp;#34;入门层&amp;lt;br/&amp;gt;讲道理的基本功&amp;#34;] --&amp;gt; B[&amp;#34;进阶层&amp;lt;br/&amp;gt;长在编程上的思维&amp;#34;]
    B --&amp;gt; C[&amp;#34;硬核层&amp;lt;br/&amp;gt;数学地基 可选&amp;#34;]
    A -.-&amp;gt;|&amp;#34;每章落到&amp;lt;br/&amp;gt;一次代码实践&amp;#34;| P[&amp;#34;不是读完&amp;lt;br/&amp;gt;是用完&amp;#34;]
    B -.-&amp;gt; P
    style P fill:#e8f4e8&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;&lt;hr&gt;
&lt;h2 id=&#34;第三篇-日常训练法把练习藏进你每天都在做的事里&#34;&gt;第三篇 日常训练法：把练习藏进你每天都在做的事里&lt;/h2&gt;
&lt;p&gt;刻意练习的关键不是额外抽两小时，而是&lt;strong&gt;改造已有的工作动作&lt;/strong&gt;。五个场景，每个配一个可检查的动作：&lt;/p&gt;
&lt;h3 id=&#34;31-写代码前先说清再动手练概念清晰&#34;&gt;3.1 写代码前：先说清，再动手（练概念清晰）&lt;/h3&gt;
&lt;p&gt;接到需求后，强制自己写三句话再开编辑器：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 这个功能的&lt;strong&gt;输入&lt;/strong&gt;是什么？（精确到字段和类型）&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; &lt;strong&gt;输出&lt;/strong&gt;是什么？什么情况算成功？&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 有哪三种&lt;strong&gt;必然失败&lt;/strong&gt;的情况？&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;写不出来，就是概念还没清晰，回去问。这一步能拦掉一半的返工。&lt;/p&gt;
&lt;h3 id=&#34;32-排查-bug假设-验证法练推理链条&#34;&gt;3.2 排查 bug：假设-验证法（练推理链条）&lt;/h3&gt;
&lt;p&gt;禁止「改一下试试」。用 debug 日志模板强制走流程：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 写下&lt;strong&gt;假设&lt;/strong&gt;：「我认为是 X 导致 Y，因为 Z」&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 写下&lt;strong&gt;验证方式&lt;/strong&gt;：看什么日志/加什么断点能证实或证伪&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 验证结果与假设&lt;strong&gt;不符时，先怀疑假设，不要怀疑现象&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 修复后写下：根因是什么？为什么之前的推理没走到这？&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;波利亚的「回顾」一步，90% 的人会跳过——而推理能力的增长恰恰只发生在这一步。&lt;/p&gt;
&lt;h3 id=&#34;33-讲清楚一个模块费曼技巧练抽象分层&#34;&gt;3.3 讲清楚一个模块：费曼技巧（练抽象分层）&lt;/h3&gt;
&lt;p&gt;每月一次，挑你负责的一个模块，画一张三层图讲给同事（或 AI）听：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 第一层：一句话说清它是干什么的&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 第二层：三个以内的子模块 + 它们之间的关系&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 第三层：被追问时才能展开的细节&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;讲卡壳的地方，就是你分层的薄弱处。&lt;strong&gt;能给 AI 把一个需求描述到它一次生成正确代码，是概念清晰度的绝佳试金石&lt;/strong&gt;——prompt 写不清楚，多半是自己也没想清楚。&lt;/p&gt;
&lt;h3 id=&#34;34-code-review五问清单练因果辨析&#34;&gt;3.4 Code Review：五问清单（练因果辨析）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 这个改动解决了什么&lt;strong&gt;问题&lt;/strong&gt;？（还是先有的方案？）&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 问题和改动之间是&lt;strong&gt;因果&lt;/strong&gt;还是&lt;strong&gt;相关&lt;/strong&gt;？（「上次加了缓存就好了」是相关，不是因果）&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 有没有&lt;strong&gt;替代原因&lt;/strong&gt;能解释这个现象？&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 这个改动的&lt;strong&gt;副作用边界&lt;/strong&gt;在哪？&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 如果它是错的，我们&lt;strong&gt;多快能发现&lt;/strong&gt;？&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;35-复盘只问为什么链练因果辨析&#34;&gt;3.5 复盘：只问「为什么链」（练因果辨析）&lt;/h3&gt;
&lt;p&gt;线上事故复盘禁用「我疏忽了」「运气不好」这类不可证伪的词。只允许五问法往下钻，直到钻出一个&lt;strong&gt;可执行的流程或工具改进&lt;/strong&gt;为止。「粗心」不是根因，「为什么粗心能穿过所有防线到达线上」才是。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;思考与感悟之二&lt;/strong&gt;：所有训练法的共同点是「把隐式思维变成显式文字」。脑子里的推理可以偷步、可以跳步、可以自我欺骗，&lt;strong&gt;落在纸上的推理不能&lt;/strong&gt;。写作是逻辑思维最便宜的压力测试。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&#34;第四篇-12-周刻意练习计划&#34;&gt;第四篇 12 周刻意练习计划&lt;/h2&gt;
&lt;p&gt;每周一个主题。规则：&lt;strong&gt;周末用 30 分钟对照自检清单打分，三项里两项不达标，下周重复同一主题&lt;/strong&gt;。宁可 12 周练成 6 项，不要 12 周路过 12 项。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;button class=&#34;code-copy&#34; type=&#34;button&#34; hidden aria-label=&#34;Copy code to clipboard&#34;&gt;
      &lt;span class=&#34;code-copy-label&#34; aria-hidden=&#34;true&#34;&gt;Copy&lt;/span&gt;
    &lt;/button&gt;
    &lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-mermaid&#34; data-lang=&#34;mermaid&#34;&gt;flowchart TD
    subgraph P1[&amp;#34;第 1-4 周 概念与推理&amp;#34;]
        W1[&amp;#34;W1 定义练习&amp;lt;br/&amp;gt;读《简单逻辑学》&amp;lt;br/&amp;gt;给 10 个日常用词写精确定义&amp;#34;]
        W2[&amp;#34;W2 需求拆解&amp;lt;br/&amp;gt;每个需求先写输入/输出/失败&amp;lt;br/&amp;gt;再动手&amp;#34;]
        W3[&amp;#34;W3 假设-验证 debug&amp;lt;br/&amp;gt;每个 bug 走完整模板&amp;#34;]
        W4[&amp;#34;W4 谬误识别&amp;lt;br/&amp;gt;读《学会提问》&amp;lt;br/&amp;gt;在技术讨论里找出 5 个逻辑谬误&amp;#34;]
    end
    subgraph P2[&amp;#34;第 5-8 周 抽象与边界&amp;#34;]
        W5[&amp;#34;W5 金字塔表达&amp;lt;br/&amp;gt;读《金字塔原理》&amp;lt;br/&amp;gt;写 2 篇结论先行的技术方案&amp;#34;]
        W6[&amp;#34;W6 费曼讲解&amp;lt;br/&amp;gt;画 1 张三层模块图并讲出来&amp;#34;]
        W7[&amp;#34;W7 边界清单&amp;lt;br/&amp;gt;给负责的接口建防御性 checklist&amp;#34;]
        W8[&amp;#34;W8 测试先行&amp;lt;br/&amp;gt;一个完整功能 TDD 写下来&amp;#34;]
    end
    subgraph P3[&amp;#34;第 9-12 周 因果与系统&amp;#34;]
        W9[&amp;#34;W9 复盘训练&amp;lt;br/&amp;gt;读《系统之美》&amp;lt;br/&amp;gt;找 1 个旧事事故做五问法复盘&amp;#34;]
        W10[&amp;#34;W10 对照实验&amp;lt;br/&amp;gt;一次性能优化用基准数据说话&amp;#34;]
        W11[&amp;#34;W11 解题流程&amp;lt;br/&amp;gt;读《怎样解题》&amp;lt;br/&amp;gt;按四步解 5 道算法题并写回顾&amp;#34;]
        W12[&amp;#34;W12 综合输出&amp;lt;br/&amp;gt;写 1 篇技术博客&amp;lt;br/&amp;gt;把 12 周里最有体感的一条讲透&amp;#34;]
    end
    P1 --&amp;gt; P2 --&amp;gt; P3&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;&lt;h3 id=&#34;每周自检清单通用模板&#34;&gt;每周自检清单（通用模板）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 本周的书读了吗？哪一章的观点我这周&lt;strong&gt;真的用了&lt;/strong&gt;？&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 本周的练习动作做了几次？（写次数，不写「做了」）&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; 有没有一个具体场景，我能说出「如果没有这周的训练，我会做错」？&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;两个提醒&#34;&gt;两个提醒&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;不要同时练多项&lt;/strong&gt;。认知资源有限，一周一个主题已经很难。觉得慢，说明做对了——肌肉记忆的形成从来是慢的。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;输出强制闭环&lt;/strong&gt;。第 12 周的博客不是可选项。能把「我怎么练的」讲清楚，本身就是五种能力的综合考试。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;思考与感悟之三&lt;/strong&gt;：逻辑思维不是天赋，是&lt;strong&gt;可分解、可练习、可度量&lt;/strong&gt;的技能组——和学一门框架没有本质区别。区别在于框架三个月过期，这套东西跟你三十年。投资回报率不在同一个数量级上。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&#34;附一句话总纲&#34;&gt;附：一句话总纲&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;诊断先行&lt;/strong&gt;：先弄清弱在五种能力的哪几种，再选训练。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;书不在多&lt;/strong&gt;：一本一用，每章落到代码里才算读过。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;改造日常&lt;/strong&gt;：练习藏进写需求、debug、CR、复盘里，不靠额外抽时间。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;显式化&lt;/strong&gt;：把推理写下来，写下来就不能骗自己。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;12 周起评&lt;/strong&gt;：周末自检，不达标就重复，最后以一篇博客闭环。&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    
  </channel>
</rss>
