Monikers Instead of Variables

The following text is a partial translation of the original English article, performed by ChatGPT (gpt-3.5-turbo) and this Jekyll plugin:

如果我们同意所有局部变量都必须是 final,必须避免多次返回,并且语句之间的时间耦合是有害的——我们可以完全摒弃变量,用内联值和它们的代号来替代它们。

这是我书籍《Elegant Objects》第5.10节(算法)中的代码:

请注意变量secret。它在这里存在是因为我们需要它的值两次:首先作为Diff的构造函数参数,然后作为Farewell的构造函数参数。我们不能通过创建两个单独的Secret类实例来内联该值,因为它必须是同一个对象—它封装了我们在猜数字游戏中对用户隐藏的数字。

在其他许多情况下,可能需要多次使用一个,同时保持不可修改。从技术上讲,如果这些值实际上是常量,为什么我们仍然称它们为变量呢?

我建议我们为这些值引入”别名”,通过as关键字进行赋值。例如:

这里的 new Secret() 是内联值,而 secret 是它的 别名,我们在几行后使用它。

在Java中拥有这个功能会很棒,对吧?

Translated by ChatGPT gpt-3.5-turbo/42 on 2023-11-18 at 05:07

sixnines availability badge   GitHub stars