• First make the change easy, then make the easy change首先使改变变得容易,然后再做改变 这句话来自肯特-贝克,他是一位软件开发者,也是极限编程方法的创造者。
  • 随着时间的推移,我注意到一种设计启发式方法,它极大地帮助了我完成无数项目。这种启发式的地方在于它在概念上易于理解和应用,但它自然会引导您更接近函数式编程。事实上,这与 Haskell 处理 IO 的方式非常相似。它也是 React 等现代 Web/UI 框架的核心理念。
  • Java是 "强类型 "的,但来自java这种督促并没有让我的代码结构变得更好。例如,Java能让你使用UnsignedInteger类型,但人们通常不会使用它。相反,建立“类”的感觉是很麻烦的,有很多模板。 Rust的独特之处在于它强迫你一次只能 icon
  • 本文作者曾经发布《我想离开Golang先生的狂野之旅》,该文反复出现在Reddit、Lobs icon
  • Java 中的重构有很多方面,但其中有两个基础:面向对象和 icon
  • 让我们看一些在实践中经常发生的过早抽象的具体案例。这些都是基于在我们自己的代码库中找到的真实示例。职责抽象得太细了使用设计模式没有真正的好处性能过早优化低耦合无处不在让我们分别仔细看看其中的每一个。 icon
  • 编写可维护的代码很容易。只需保持方法和参数列表简短,名称和注释较长,并遵循样式指南。正如一位著名记者曾经写道:“对于每一个复杂的问题,都有一个清晰、简单和错误的答案。”使代码难以维护的不是样式和形状。这是在缺乏明确的如何代码工作,它代表什么以及为什么它以这种方式被写? icon
  • 通过编写if else条件语句来验证对象是软件开发中的一项常见任务。想象一下,开发人员收到了以下文件验证要求: 只允许txt和html扩展名。 txt 文件的大小不能超过 5 MB。 html 文件的大小不能超过 10 MB。 文件名不能超过 icon
  • 自动资源管理(Automatic resource management 简称ARM)在 Java 7 中首次引入时是一个受 icon
  • 坏代码时有发生——但你不需要成为坏人来打败它。从更轻松的角度来看,糟糕的坏代码还会产生充足的就业机会: 需要许多优秀的开发人员修复错误的代码。 需要一两个高级开发人员审查代码并确保它不会再次变坏。 可能需要不时地咨询糟糕的程序员(写出混乱的逻辑的明星) icon
  • 在当前项目(多人游戏服务器)中遇到的常见情况如下: 1)运行多个返回 Result 的函数。 2a) 如果他们都成功了,继续走快乐的道路 2b) 如果他们中的任何一个失败了,用他们的第一个错误执行一个错误场景。 icon
  • 这个 Java 代码库工具将帮助您识别应该首先重构的上帝类,也就是意大利面条的“大泥球”类,代码很长都混沌编织在一起的类,这 icon
  • Deprank 使用PageRank算法在您的 JavaScript 或 TypeScript 代码库中查找最重要的文件。它使用 icon
  • Setter方法违反了不变性并添加了意外耦合!重构步骤:找到 setter 的用法如果您正在设置基本属性,请将它们移动到构造函数并删除该方法如果你需要改变一个偶然的属性,它不是一个 setter。删除 setXXX 前缀< icon
  • 技术债务是由于在构建功能时采用了太多的技术捷径。产品团队创建了一个雄心勃勃的路线图,几乎没有犯错的空间,工程师在已经过时的软件基础设施上进行不守规则的破解以实现这些雄心壮志。债务像一个孩子踮起脚尖走进厨房,从食品储藏室偷走饼干,导致系统效率逐渐下降。当快速而肮脏的破解黑客习惯 icon
  • 团队经常使用版本控制分支进行大规模更改,以便他们可以继续开发功能并修复主线上的错误。但是如果您的代码位于分支上,则它不能被集成的。合并回主线肯定是痛苦的,痛苦的程度取决于你想要做出多大的改变,同时你在主线上做了多少工作。 这意味着推 icon
  • 有一个代码可读性陷阱,一旦你意识到它就很容易避免,但这个陷阱无处不在:人们喜欢省略“单位unit”。看看 Python、Java 和 Haskell 中的以下三个片段: icon