• 我最近意识到所有不同的编程哲学都与状态有关,并且可以归结为关于如何使用状态的简单陈述: 面向对象一次性修改大量的状态是很难正确的;因此:将状态的子集封装成独立的对象,并允许通过方法对封装的子状态进行有限的操
  • 多维思考是超越二维思考的非线性概率思考模型,多维分析三步过程: 步骤 1. 确定关键维度, 步骤 2. 构建多维模型, 以及步骤 3. 分析模型以形成合理准确的结论。 步骤1中:确定关键维度不是二分法:黑与白、好与坏、阴与阳,例如,在决定是否投资一家
  • Java 19 包含Project Loom核心组件的预览:虚拟线程。我们现在可以随意创建线程,因为我们不再(或至少少得多)受它们在内存和上下文切换时间方面的成本的限制。 哪里有线程,哪里就有并发。那么这对于 JVM 上的并发性意味着什么呢?可以肯 icon
  • 物品可以展示,可以下订单购买,提供购买详细信息以验证订单,最后,物品被运送。发货前可以取消订单。下面示意性地描述了该状态机: icon
  • 如何使我们的计算机语言的类型系统更智能,将类型推理从程序员转移到编译器?在当今,随着系统变得越来越复杂,移动部件越来越多,能够确保每个部件协同工作变得极为重要。Rust 的借用检查器就是一个很好的例子,对于那些不熟悉的人,以一种简单的方式,Rust 能够推理内存使用情况,抛弃手动内存 icon
  • 一般来说,避免全局状态。取而代之的是提早创建对象(甚至在main中首先创建对象),然后将该对象的可变引用传递到需要它的地方。这通常会使你的代码更容易推理。 在决定你要使用全局可变变量之前,请仔细看看镜子里的自己。在极少数情况 icon
  • 希望这篇文章能帮助你了解复杂和深度嵌套的条件代码的缺点,并为如何编写更容易理解和维护的代码带来新的视角: 解释了复杂且深度嵌套的条件代码的问题,因为它需要匹配域模型而很常见 介绍了状态机的概念,以及它如何成为降低复杂性和使某些状态不可表示从而减少引入错误的能力的解决方 icon
  • Typestate模式是一种API设计模式,它将对象的运行时状态信息编码在其编译时的类型中。 当我们对一个对象的操作(如方法或函数),只有在该对象处于某些状态时才能使用:| “只有检查过它是有效的 UTF-8 后,才能翻译缓冲区。” icon
  • Java Enum是一种特殊的数据类型,它提供了一个特性来定义一组预定义的常量。在这篇文章中,我们将讨论迭代 Java Enum 的不同方法 。枚举可以包含常量、方法等。 icon
  • 状态模式与有限状态机 (FSM) 概念相关,但是,每个状态都由实现公共状态特征的单独类型表示,而不是实现大量条件语句。状态之间的转换取决于每种状态类型的特定 trait 实现。Rust 中的状态模式在Rust Book中有详细描述:  icon
  • Recoil 是一个新的 React 状态管理库,它允许您以 Reactish 的方式管理全局/可共享状态。很棒的是,Recoil是由 Facebook 团队开发的。在这篇博客中, icon
  • 我认为状态机经常被误解和应用不足:这就是我写这篇文章的原因。这个事实列表的目的不是教你什么是状态机或如何使用它们;还有很多其他资源。相反,这里的目标是激发它们的使用并突出它们经常被忽视但仍然相关的事情。如果您正在阅读其中一个事实并认为它微不足道,或无关紧要,或未经证实,或,或 icon
  • 在 Rust 中创建自定义数据类型有两种方法:结构和枚举。与结构相比,枚举构造一个具有多个变种、变体而不是多个字段的类型。 虽然结构是几乎所有编程语言的一部分,但枚举并不是那么主流,并且主要出现在 Haskell 或 OCaml 等静态类型 icon
  • 例如,查看以下购物车状态机。它代表了它要么是空的,要么是非空的两种基本状态。AddItem 触发器导致对非空购物车状态的更改。如果购物车仅包含 1 个项目,则 RemoveItem 触发器会导致对空购物车状态的更改。 icon
  • 状态更改检测,也就是检测应用程序对状态值的改变,这样才会相应地更新 UI。(#MVC模式 中模型Model的改变会更新View界面UI,又类似后端的#ORM,对象状态更改通过ORM框架自动变更相应数据表值) 变更检测是前端框 icon
  • Flutter Control 是维护 App 和状态管理的复杂库。库在一个引擎盖下合并了多个功能。这种方法有助于将分离的逻辑整齐地绑定到复杂的解决方案中。import 'package:flutter_control/core.dart'; 应用状态管理- 管理应用 icon
  • 希望通过这篇文章完成的是让人们以不同的方式看待 TypeScript,并展示我认为是主流语言中最好的类型系统之一。 先上代码: icon
  • 大多数人都熟悉状态机,也知道状态机的价值。一般的状态机库可以帮助你建立状态模型,防止无效转换,并生成图表,帮助非技术人员也能理解代码是如何运行的。 这篇文章并不是要论证状态机。而是如何利用状态机的概念,让它与你的数据库模型一起工作,利用你的关系数据 icon