ソフトウェアがブール値で性別を特定するときに論争がありましたか?[閉まっている]


8

Javaを使用した最初のプログラミングクラスでは、データ型を説明しているときに、次のことが起こりました(ちょっと)。

教授:では、プログラムがユーザーの性別を格納する必要がある場合、どのデータ型を選択しますか?

誰か:ブール値はどうですか?ご存知のとおり、男性には真、女性には偽。

教授:確かに、それはうまくいくかもしれませんが、一部の人々はそれについて躊躇するかもしれません。過去に男性を「本当」と女性を「本当」と呼ぶことに異議を唱えてきました...

* 笑い声 *

彼は結局、ブール値は問題ないはずですが'm'、chars(やなど'f')を検討するように勧めました。

このプログラミングの実践に基づいた大規模な紛争について、運が悪かったという歴史的な記録がある場合は、少し検索してみました。

性別にどのデータ型を使用するか、またはブール値を使用するかどうかは問題ではありません。、場合、私は聞いてるのよ歴史的に、(私はそれは言っていませんので、明らかに「間違った」のプログラムで性別を決定するブール値の使用に関する紛争があったある行動-私はそれを気にしない間違いました)教授が示唆するように女性を「偽」と呼ぶことの。

関連する質問を検索すると、結果はたまたまソフトウェアの効率に関するものにすぎません。


3
書かれているように、それは歴史的なプログラミングの競合の真剣な説明よりもおしゃべりのように見えます...
Mason Wheeler

8
現実世界の現象をモデル化するために、列挙型の代わりにブール値を使用する場合の1つの問題-トランスジェンダー、XXY染色体などをモデル化したい場合があります。現実世界のデータベースでトランスジェンダー(2種類)を許容される性別値として見ました。それが紛争の結果なのかどうかはわかりません。
psr 2013

8
@PhillipBurch:ブール値を引き続き使用できます。サードジェンダーには「FileNotFound」を使用してください。
kevin cline 2013

2
@YannisRizos:男性としても女性としても識別できない人にとって重要な質問をクローズするのは不愉快だと思います。気にしてください。特に賛成投票されているため。
DistantEcho

3
@Niphra閉鎖に同意しない場合は、メタサイトに自由に質問を投稿してください。
yannis

回答:


5

これは技術的というより文化的な問題であり、社会のジェンダーに対する見方を表しています。

イスラム国や中国に留学されていれば、なぜこれが問題になるのか理解できます。

ですから、答えはノーです。プログラミングでこのようなばかげた問題を聞いたことがありません。


1
重みを加えるために、私はイギリスのNHSからのデータを使用します。これは、全人口をカバーする全国的なデータです。性別はintとして保存され、男性の場合は1、女性の場合は2であり、同じ倫理上の質問が発生します。他の値(不明、トランスジェンダーなど)が使用されているため、ここではブール値ではなくintが使用されていますが、効率を向上させるコーディングシステムを使用することには躊躇はありません。他の値をコーディングすることをためらわないので、なぜここでためらうのですか?
マット

23

値が2つしかないという理由だけでブール値を使用しないでください。trueとfalseの意味が明らかでない限り、可能な場合は列挙型を使用し、そうでない場合は文字列定数または記号などを使用します。そして、たいていの場合、最初は2つの値があり、その後は3つの値があります。または4つ。


1
非常に良いアドバイスです。ありがとうございましたが、質問には対応していません。
オメガ

1
女性を「偽」と呼ぶ明らかに「間違った」道徳的行動のために、性別にブール値を使用する際の紛争について歴史的事実はどれですか?(タイトルには道徳的な部分は含まれていませんが、質問の内容はそれに焦点を当てています)
Omega

1
ブーリアンを使用する場合、女性または男性であると識別しない人が無視または拒否されたと感じたため、実際に論争がありました-彼らは性別を選択することを余儀なくされました(google +を参照)。true / falseの使用はそれほど問題ではありません。
DistantEcho、2013

とにかく、ほとんどのプログラミング言語はブール値を格納するために完全な単語を使用し、「性別」は明らかに(意味的に)true / falseプロパティではないことを考えると、あなたは完全に正しいです。「偽」の性別を持つことは社会的なことではなく、意味的に正しくなく、パフォーマンス上の利点さえ得ていません。
スコットウィットロック

-4

この場合、Kevinnによって与えられた理由に加えて、ブール値を使用すると、性別ではなく、isMale(またはis Female)のような変数名とプロパティ名が使用されます。

私にとって、「ジェンダー」のようなニュートラルな名前は、プロパティ名として「イスブラブラ」よりもはるかに優れています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.