认知负荷才是关键 张伟达
卓越开发者的特质 要深入了解一个工具,你需要知道: 它的历史:谁创造了它?为什么?要解决什么问题? 它的现状:谁在维护它?他们在哪里工作?在做什么? 它的局限:什么情况下不适合使用这个工具?什么时候会出问题? 它的生态:有哪些库?谁在使用它?有什么插件? 举个例子,如果你是一名后端工程师,大量使用 Kafka,我希望你对 Kafka 了如指掌——不是仅仅停留在 Reddit 上看到的内容。至少,如果你想成为最优秀的工程师之一,这是我对你的期望。
滥用 DRY 原则(Abusing DRY principle) 不要重复编写相同的代码 —— 这是你在软件工程师的学习和工作过程中,被反复灌输的重要原则之一。它植根于我们的观念当中,以至于我们对代码冗余几乎零容忍,哪怕只有几行的重复代码也不行。总体而言,它是一个很好的基本原则,但过度遵循它可能会带来过多的认知负荷,令我们不堪重负。 当前,人们构建软件时通常基于逻辑分离的组件。这些一般分布在多个代码库中,代表着不同的服务。在你努力消除重复的过程中,可能会使原本不相关的组件变得紧密耦合。这样一来,后续对某个部分的修改可能会在其他看似毫无关联的地方引发意想不到的后果。同时,这也会削弱在不影响整个系统的前提下替换或修改单个组件的能力。🤯 事实上,即使在单个模块内部,也会出现类似的问题。你可能会依据自己主观感觉上的相似性(但长远来看可能并不存在)来过早地提取通用功能。而这样做可能会产生不必要的抽象,进而使得软件变得难以修改或扩展。 Rob Pike 曾经说过: 适当的复制要优于不必要的依赖。
AI 神器!一键把 Vue3 源码解析成文档! 李勇鲁
这个比上一次的更狠,面对复杂的源码,往往感到无从下手,这款AI工具帮你深入理解各种开源项目的源码。
车泽民
你以为你在封装组件,其实你在引入混乱
Threejs优化 崔鹏程
优化 Three.js 性能、实现流畅渲染,可采用以下策略:合并网格减少对象数量、使用简单几何体与材质、采用纹理图集、引入多细节层次(LOD)、使用高效的 WebGLRenderer 并结合 requestAnimationFrame 控制渲染循环。这些方法能显著降低计算开销,提升帧率。
正则表达式 刘世豪
关于正则表达式的比较详细的介绍
点云采样 黄鹤翔
常见的点云采样方法
程序员核心竞争力:代码外的关键软技能 陆欣
通过对话形式探讨了《程序员修炼之道》一书中关于程序员软技能的核心观点,重点分析了责任感、破窗理论、蜥蜴脑直觉、工具集优化、风险边界控制及高效沟通等话题
TS用Go重构 徐堂鑫
TypeScript首席架构师宣布将其编译器和工具原生移植到Go。重写原因是TypeScript应对超大型代码库时性能不佳,官方测试显示移植后运行性能快约10倍,编译器加载速度快8倍。选择Go而非Rust,是因其代码与TypeScript兼容性好、内存管理高效等
Cursor编辑代码功能是如何实现的 黄鹤翔
Cursor 编辑代码功能的实现原理和过程
字节Trae调用MCP教程 李文娟
阮一峰的文章,介绍了使用 Trae 调用 MCP 的过程。