refactor重构编程
如何判断自己是否是一名优秀开发人员?
如何知道您是否是一名优秀的开发人员,这相当简单:您收到一个问题——一个商业问题或一个科学问题。你看看问题所在。你会想出如何用你的知识解决问题。你解决问题。如果你每天都能重复这个过程,并且偶尔会出现一些.
为什么开发人员痴迷于“关注点分离”?
高级开发人员经常提到以下三件事: DRY Clean架构 关注点分离 这其实是一种宗教,教条主义。就像盲人摸大象一样,只有摸过大象才知道它有多少个部位,有多少个值得关注的地方,然后才能分离这些关注点。.
JetBrains推出类似Copilot的IDE内AI助手和AI服务
只需在聊天中提出问题,人工智能助理就会自动根据项目上下文中的必要细节对您的询问进行补充。无需复制和粘贴代码片段,只需给 JetBrains AI 下达任务,如 "解释打开文件中的代码 "或 "将 My.
编程经验:上拔if、下压for
“push ifs up and fors down”是代码结构的经验法则, 将 if 条件向上推和将 for 循环向下推: 尽可能将 if 条件移出函数并移至调用代码中。这集中了复杂的控制流,并且更.
幽默:删除你以为无用的代码
无头组件:一种构建 React UI 的模式
随着 React UI 控件变得越来越复杂,复杂的逻辑可能与视觉表示交织在一起。这使得很难推理组件的行为,难以对其进行测试,并且需要构建需要不同外观的类似组件。无头组件提取所有非视觉逻辑和状态管理,将.
NASA 向 120 亿英里外的航天器发送了软件更新
旅行者 2 号距离地球超过 120 亿英里,正在穿越星际空间。在近 50 年的旅程中,探测器看到的宇宙范围比我们以往任何时候都多。现在,NASA 已经完成了Voyager 2的关键软件更新,这将有助于.
Meta:自动清理死代码
Meta 的系统代码和资产删除框架 (SCARF) 有一个用于识别和删除死代码的子系统。 SCARF 结合了程序的静态和动态分析,从业务和编程语言的角度检测死代码。 SCARF 自动创建更改请求,删除.
迁移:唯一可扩展的技术债务解决方案
我参与过的最有趣的迁移是 Uber 从 Puppet 管理的服务迁移到完全自助式的供应模式,在这种模式下,公司的任何工程师都可以通过两次点击启动一项新服务。他们不仅可以,而且还做到了,在服务完成时,每.
使用Holder类实现通用值对象
假设我们有一个简单的Holder类,它包装了T类型的值。我们可以这样定义它:public class Holder<T> { public T value; public Holder(T.
幽默:企业软件
幽默:如果在运行就不要碰它
幽默:解决BUG简单直接办法是注销代码
最难的验证码:从代码中找BUG
幽默:接着奏乐,不要停,问题迟早能解决
如何通过80%抽象建模防止单体走向混乱
吐槽:低质量代码对业务影响最大
如何将核心服务与单体应用解耦?
用Rust很难编写出糟糕的代码
"坏代码无处不在。Rust让坏代码变得更难。Tangram Vision正在全心全意地拥抱Rust。嗨,我是布兰登-麦纳尔,Tangram Vision公司的首席执行官和联合创始人,这是一家感知传感器.
什么是认知重构?
认知重构、或称重新构思问题(Reframe the Problem):是指从不同的角度来看待当前的情况。重构背后的基本理念是,一个人的观点取决于他所处的框架(背景上下文)。当框架被改变时,意义就会改变.
使用Rust和Axum实现整洁代码 - PropelAuth
在《Clean Code》一书中,我最喜欢的部分之一是看到一个代码片段开始时很粗糙且难以管理,然后看着它迭代改进。在这篇文章中,我们将做同样的事情,但特别使用 Rust 和 Axum 的接近真实世界的.
如何在不重构的情况下将单体拆分成微服务?
软件开发中业务知识的激活 - Feathers
使用系统不仅仅是编写代码,它是主动知识的生成。 在这篇文章中,Michael Feathers描述了这个概念,以及如何使用它来影响组织决策:就其核心而言,软件开发是一个知识生成过程。当我们思考这到底意.
编写易于删除的代码 - ploeh
处理坏代码的 4 种策略
坏代码时有发生——但你不需要成为坏人来打败它。从更轻松的角度来看,糟糕的坏代码还会产生充足的就业机会: 需要许多优秀的开发人员修复错误的代码。 需要一两个高级开发人员审查代码并确保它不会再次变坏。 可.
Rust能让我写出好的代码 - Reddit
Java是 "强类型 "的,但来自java这种督促并没有让我的代码结构变得更好。例如,Java能让你使用UnsignedInteger类型,但人们通常不会使用它。相反,建立“类”的感觉是很麻烦的,有很.
幽默:程序员的修道过程
重构:首先要让改变变得容易?
Rust中用元组模式匹配替代if-else
在当前项目(多人游戏服务器)中遇到的常见情况如下: 1)运行多个返回 Result<T, String> 的函数。 2a) 如果他们都成功了,继续走快乐的道路 2b) 如果他们中的任何一个失败了,用他.
deprank:使用PageRank算法查找代码库中最重要文件的工具
Deprank 使用PageRank算法在您的 JavaScript 或 TypeScript 代码库中查找最重要的文件。它使用dependency-cruiser来构建源文件的依赖关系图,然后根据它.