gpt4 book ai didi

表示性别或性别的 Ruby 约定

转载 作者:太空宇宙 更新时间:2023-11-03 16:53:48 26 4
gpt4 key购买 nike

当将它用作对象中的字段时,用于表示人的性别的 ruby​​ 约定是什么?存在二元性别假设(不是我同意这一点,但通常以这种方式收集数据)。

您会针对不同的情况使用不同的类型吗?当我们向用户显示此信息时,我们希望以某种有意义的方式显示它(MalemaleM 等等,而不是 01),我们可能想用它来按性别对对象进行排序。我的想法是使用 :Male:Female 之类的符号,但我想听听有更多 Ruby 经验的人的想法。

虽然我找到了一些建议(编写您自己的替代枚举代码并创建一个 Gender 类),但我没有找到任何可以比较或对比这种使用 bool 值、符号、字符串、字符的方法,或者将其标识为常见的方法约定。

最佳答案

我认为,在现代编程中,尤其是在像 Ruby 这样的语言中,使用像 0 这样的魔数(Magic Number)。 , 1正如您所说,这被认为是一种不好的做法。然后,自然的选择是为每个性别/性别使用字符串、符号或特定类。对于封闭类,您应该避免使用字符串。使用符号时,我认为使用完整的单词而不是缩写是标准的,并且使用小写字母(如果不仅仅是一个单词,则使用下划线)。所以我觉得:male:female会是一个不错的选择。或者,您可以使用 MaleFemale类,每个类都有一个独特的对象,就像 FalseClassTrueClass .或者,您可以简单地定义两个 Object实例 MaleFemale .由于 gender/sex 之间没有自然排序,因此您需要定义自己的 <=> .

关于表示性别或性别的 Ruby 约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15030036/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com