• 什么是清洁代码?正如鲍勃大叔清洁代码书中说:清洁代码的定义可能与程序员一样多。首先,我最喜欢的一位著名作家的话是:“干净的代码读起来就像写好的散文”(@Grady_Booch)。简短的句子说明了一切。干净的代码应该和读一本好小说一样愉快。名字已经透露,流程很简单。清洁代码讲述了一个故
  • 大对象散布了代码的坏味道:随着职责和依赖的不断增长,它们变得越来越繁重,要定义它们究竟要负责什么变得更加困难。大对象更难重用,测试也较慢。更糟糕的是,它们花费了开发人员更多的时间和精力来理解,从而增加了引入错误的机会。未经检查的大对象冒着将代码库其余部分变成泥潭的风险,但是请不要担心!有一些
  • 干净Clean代码并不总是面向对象的。有时它将以程序样式编写。哪种风格更好:过程式还是面向对象?我们应该在一定条件下进行选择,以使其易于开发和可读,根据“Clean守则”的原则。下面是过程代码的示例,它将帮助我考虑代码的纯度及其对面向对象代码的重构。 icon
  • 能够满足用户需求的优秀软件的关键是什么?对我来说,它不是编程语言或框架。它是对业务域以及系统如何在用户上下文中工作的深刻理解。工程学科可以为我们提供帮助。持续交付。当软件始终处于可发布状态时,我们可以经常将其交付给用户以获取新知识。领域驱动设计。DDD使我们 icon
  • 当您编写一条if / else语句链时,了解并评估执行时顺序的依赖性是明智的。将每个条件构造为逻辑互斥而非依赖于执行顺序可能是明智的。 新开发人员要学习的第一个概念是if / else语句。if / else语句是执行条件逻辑的最常见方法。但是,复杂的嵌套if / else语 icon
  • 技术负债概念提出者Ward Cunningham认为:长期开发一个应用程序时,我们是通过不断添加功能进行的,但是却从未对其进行重新组织 icon
  • YAGNI 是You Ain't Gonna Need It(你不会需要它)的简写,是极限编程的关键原则。YAGNI意思非常简单:仅在您真正需要它们时才去做,而不是在您认为或预见将来可能需要它们时就提前做了!您可以将YAGNI视为即时制造的拥护者。在这种情况下,制造业正在编写 icon
  • 我的代码不是固体SOLID,而是液体LIQUID:Low In Quality, Unrivaled In Despair(品质低劣,绝望无可匹敌) 众说纷纭:我的代码是KISSNUWYD:Keep it so stupid nob icon
  • 我们是程序员,所以编写代码就是我们要做的工作,不是吗?但是,我们的工作比整天在屏幕前敲击键盘上的按键要复杂得多。如果跳出编程语言,框架和流程的范畴,超出了测试套件、冲刺和Jira的范畴,那么您总会发现需要解决的问题。 作为程序员,我们首先是问题的解决者。我们解决了其他人遇到的问题,并 icon
  • 仅仅编写有效的代码是不够的。问题发生时,必须易于维护,增强和调试该代码。面向对象编程如此受欢迎的原因之一是因为它满足了这些要求。但是,当开发人员选择捷径或更多地关注完成工作而不是正确完成工作时,往往会出现反模式。这些常见的反模式之一是上帝式对象。面向对象编程中的主要概念之一是 icon
  • 熟悉TDD的三个定律这些规则是在实践中使用TDD的基础。它们限制我们一次只更改一件事。他们迫使我们采取步伐!记住并严格遵守这些规则,以便有效地使用TDD!在代码没有通过失败的单元测试之前不要编写任何生产代码。没有遭遇更多失败还有编译错误之前不允许编写更多的单 icon
  • 过时旧代码的一些缺点: 不必要的代码混乱会增加整体复杂性,从而降低开发人员的工作效率 这些标记可以代替其他实验标记 标记过时也会导致错误 未使用的代码以及二进制文件都保留在源代码中 为减轻此类缺陷,Uber的研究人员开发了一种工具,该工具能够 icon
  • 什么是设计模式?设计模式大约在30年前出现。然而,许多人认为他们今天和以往一样重要。首先,什么是“设计”?它是关于软件设计的,而不是关于UI设计的。代码中的所有内容都是设计。从诸如变量名之类的细节到更多体系结构问题。 设计是一种形状Shape,系统需要 icon
  • 技术团队和管理层非常热衷于使用一个称为微服务的新流行语。但这涉及转换的成本。您如何进行这种转变?进行转换值得吗?还是继续进行一些修改以继续使用当前方法是否好?您如何决定?从遗留系统本身定义微服务的过程是一个传奇。让我们以单体/整体/旧式系统的POS应用程序域为例。这是 icon
  • 我们听说过SOLID原则,听说过STUPID原则吗? icon