ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

可以不用,但必须知道

可以不用,但必须知道 我们常常被“学以致用”驱动只学马上要用的只碰项目里会碰的。这当然高效但也很容易让人陷入另一种狭窄——手里只有一把锤子看什么都是钉子。我越来越觉得很多知识可以不用但必须知道。它的价值不在于立刻变成生产力而在于它在你脑中建立了一张地图。你知道某个东西存在知道它大概能解决什么、不能解决什么、有哪些坑真正需要的时候你才知道该往哪里找才知道自己是不是在重复造轮子。一、知道存在才能避免重复造轮子技术史上很多“自研”其实是因为不知道已经有现成方案。比如要做延迟任务有人第一反应是写数据库轮询自己维护状态、重试、分片。但如果他听说过 Redis ZSet、RabbitMQ 延迟队列、Kafka 时间轮、云厂商的调度服务他就会先停下来调研我到底需要什么有没有成熟轮子我是不是在造一个更差的轮子知道存在不一定就要用。但不知道存在你连选择的资格都没有。你会把别人已经踩过的坑重新踩一遍把别人已经优化过的东西重新实现一遍。最后还安慰自己“这是自研可控。”可很多时候那不是可控是封闭。二、知道边界和坑才能避开或选择只知道“它能做什么”还不够更重要的是知道“它不能做什么”。Redis 很快但持久化、复杂查询、事务不是它的强项MongoDB 很灵活但多文档事务和关联查询有代价正则很强大但不适合解析 HTML浮点数很快但不适合算钱。每一个工具都有它的边界边界之外就是坑。知道坑的价值不是让你拒绝一个工具而是让你在使用时保持清醒什么时候可以用什么时候必须换怎么用才不会出事。没有边界意识的知识很容易变成盲目崇拜。别人说某个框架好你就全盘押上别人说某个数据库快你就把所有数据都塞进去。最后不是工具的问题是你不知道它的边界。选型不是选“最好”的而是选“最适合的”。而“最适合”的前提是你知道还有哪些选项以及它们各自的代价。三、避免锤子综合症手里有锤子看什么都是钉子。只会一个框架所有需求都往里塞只会一种数据库所有数据都建模成表只会一种语言所有问题都用它写。不是深度不好而是只有深度、没有广度会限制你的判断。广度让你知道除了锤子还有扳手、螺丝刀、电钻。深度让你知道选中的那把工具怎么用才能用好。两者结合才是真正的 T 型能力。深度决定你能走多稳广度决定你能走多远。四、如何低成本地“知道”“知道”不等于“精通”。你不需要把每本书读完只需要建立索引。读技术雷达、awesome lists、年度综述建立整体地图。看文档目录和“适用场景 / 不适用场景”不必从头读到尾。记一句话它是什么、解决什么问题、不解决什么问题、替代品是谁。多关注失败案例和坑它们比成功案例更有信息量。定期复盘最近遇到的问题有没有更合适的现成方案需要时再深入从“知道”到“会用”往往只差一个项目。这种“知道”成本很低但回报很高。它像图书馆的分类索引你不必读完所有书但需要时你能找到那本书。五、深度与广度的平衡这不是反对深度。没有深度什么都是浅尝辄止。但深度应该建立在广度之上。先知道地图再选择路线。你可以主攻一两项同时保持对其他领域的“可发现性”。就像开车你不必会修发动机但要知道仪表盘上每个灯大概意味着什么。平时不占地方关键时刻能救命。结语可以不用但不能不知道。这些知识像地图上的坐标平时不占地方迷路时却能救命。它们让你在需要时知道去哪里找知道什么不该做知道还有别的选择。真正的能力不只是把手里的事做好还包括知道手里拿的是不是最合适的工具。知道是为了自由选择不用是为了聚焦。知道而不用不是浪费是储备。愿我们既有深度也有广度既能埋头拉车也能抬头看路。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进