Pharo于2021年1月正式发布了Pharo 11这一全新版本。在这个版本中加入了一项非常实用的新特性——常量块(Constant Blocks)。
常量块是一种数据结构,它将代码中的常量打包到一个块中,从而提高代码执行效率。相较于原来的写法,使用常量块可以明显减少常量存储的数量,从而减小代码体积,提高代码执行速度。
除了提高代码执行效率外,常量块还可以提高代码的可读性和维护性。常量块可以将多个常量打包成一个整体,从而使代码更加简洁明了,易于阅读和维护。
在Pharo 11中,使用常量块非常简单。首先,我们需要引入常量块相关的命名空间:
ConstantBlock := PharoObject subclass: #ConstantBlock
instanceVariableNames: ‘values’
classVariableNames: ”
package: ‘ConstantBlocks’
接着,在代码中声明常量块,并通过values实例变量传入常量:
uppercaseLetters := ConstantBlock values: ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’
lowercaseLetters := ConstantBlock values: ‘abcdefghijklmnopqrstuvwxyz’
digits := ConstantBlock values: ‘0123456789’
接下来,我们就可以在代码中使用常量块了:
| letter |
letter := lowercaseLetters at: 20.
上面的代码中,我们使用了前面声明的常量块lowercaseLetters,从中获取了第20个字符“t”,并将其赋值给变量letter。
总之,Pharo 11中的常量块是一项非常实用的新特性,它可以提高代码执行效率、可读性和维护性。如果你是一个Pharo开发者,不妨试试在代码中使用常量块,相信你会有一个全新的体验!
了解更多有趣的事情:https://blog.ds3783.com/