Kezdőoldal » Számítástechnika » Programozás » Egy ember neme az boolean?

Egy ember neme az boolean?

Figyelt kérdés
C#

2023. jan. 13. 12:44
1 2 3 4 5
 11/42 anonim ***** válasza:
32%
Nem. Az LONG... ;)
2023. jan. 13. 15:09
Hasznos számodra ez a válasz?
 12/42 anonim ***** válasza:
84%

Hatosnál a pötty!

A boolean arra jó csak, hogy eltárold, valaki férfi-e vagy sem.

2023. jan. 13. 15:12
Hasznos számodra ez a válasz?
 13/42 anonim ***** válasza:
88%

Gazdag?


- Igen

- Nem

- Talán

- Hátha

- Na de mi van, ha mégsem?

2023. jan. 13. 15:14
Hasznos számodra ez a válasz?
 14/42 anonim ***** válasza:
100%

Igaz, amit többen írnak fent (boolean igaz/hamis jelentésű, vagyis ebből a szempontból helytelen), de az is igaz, hogy alapesetben egy olyan elem, aminek két értéke van, ebből a szempontból az egyik érték reprezentálhatja a nőt és a másik a férfit.


Programozásban használnak 1/0 jelöléseket digitális állapotokra, különösen hardver-közeli környezetben, pl. nyitva az ajtó/ablak vagy zárva, van benne víz vagy nincs, aktív egy vészjelzés vagy sem.


Mindez jól működik addig, amíg bármilyen dolognak, de két állapota van (akár az, hogy piros vagy zöld).


Ebből a szempontból érdekes kérdés lehet, hogy hányféle nem létezik.

Normál esetben biológiailag létezik a nő és a férfi (XX és XY kromoszómával), ez külső nemi jelleg alapján egyértelmű szokott lenni - de még ez sem igaz, mert született már olyan ember, akinek pl. kétféle nemi szerve is volt... vagyis itt már bukhat a boolean.


Reálisan nézve még alapesetben is adott a nő, a férfi és a nem ismert (pl. nem nyilatkozott) variáció, ami nem tárolható boolean-ként.


Ne azzal magyarázzuk, hogy valami nem tárolható boolean-ként, mert meglétet/hiányt ad meg. Bármit megadhat, legyen az igen/nem, vizes/száraz, nagyobb vagy kisebb 10-nél, stb.


Azt _NE_ magyarázzuk bele programozásba, hogy egyértelmű válasz esetén (ami itt nő/férfi akart lenni), akkor a 0-nak (false) vagy 1-nek (true) bármi jelentősége van a valóságra nézve. (Nincs!)


A boolean egy reprezentáció, a mögöttes jelentése pedig az, amit a programozó(!) szán neki, a végtermékben (program, webes felület, bármi), már nem ez a szám lesz, ami jelentéssel bír, hanem a hozzárendelt jelentés lesz érdekes.


Tehát nem azért mondhatjuk, hogy nem boolean, mert igen/nem filozófiába nem illik bele, hanem azért, mert nem kétállapotú az információ - legalább egy harmadik (nem ismert) információnak van jelentéstartalma.

2023. jan. 13. 15:34
Hasznos számodra ez a válasz?
 15/42 NTBS ***** válasza:
0%
Nem. Nem ez a helyes válasz.
2023. jan. 13. 15:56
Hasznos számodra ez a válasz?
 16/42 anonim ***** válasza:
100%
#5 - Technikailag a 8 bites integer sem pazarlóbb egy boolean valtozónál, mert mindenképp a teljes byte kerül lefoglalásra. Magas szintű nyelvekben inkább a jelentésen a hangsúly: a boolean igen/nem választ tarol, ami nem túl hasznos válasz arra a kérdésre, hogy "Mi a neme?". Ezért érdemes beszédesebb kódként tárolni, még ha egyébként csak 2 értékű is.
2023. jan. 13. 16:06
Hasznos számodra ez a válasz?
 17/42 anonim ***** válasza:
100%
Használható hozzá boolean, de egy enum jobb, mert akkor a kódban is egyértelmű tud lenni. Boolean esetében ugye kb isMale vagy isFemale lehet true/false, enum esetén meg megadhatod, hogy male és female.
2023. jan. 13. 16:16
Hasznos számodra ez a válasz?
 18/42 anonim ***** válasza:

De úgy hogy könyveli a hermafroditákat?

Akiknek a személyi száma 3-al kezdődik.

2023. jan. 13. 16:29
Hasznos számodra ez a válasz?
 19/42 anonim ***** válasza:
100%
#18 - A 2020 környékén született fiúk személyi száma már 3-al kezdődik.
2023. jan. 13. 16:46
Hasznos számodra ez a válasz?
 20/42 anonim ***** válasza:

#14 - Ez nem feltétlenül jó hozzáállás. Sok esetben az olvashatóság nagyon sokat számít, és a business domain már az adatszerkezetekben megjelenik. Így válhat egy "gender" vagy "sex" mező integerré (még akkor is, ha C# kódban még enumerált típus) Sőt, tovább megyek: sok esetben születik meg az a döntés, hogy egyébként enum típusú mezőt sztringként tárolunk, részint a rugalmassága, részint az olvashatósága miatt - az ilyen adatok előbb utóbb valamilyen adatbázisba kerülnek, és ott a "0-1-2-3-..." helyett az "unknown, male, female, nonbinary" értékek olvashatóbbak, a plusz tárigény pedig a legtöbb esetben egyszerűen nem akkora, hogy megérje elkódolni a mezőt ennél tömörebben.


Illetve a logikai változók névkonvenciója általában úgy néz ki, hogy "IsSomething" - márpedig az "IsGender" teljesen mást jelent, mint a "Gender" Elannyira, hogy egyes IDE-k beépített kódgenerátorai eleve ilyen néven hozzák létre a változókat. Ez persze másodlagos szempont, de rámutat, hogy a két lehetséges értékkel rendelkező változókat nem célszerű logikai értékként tárolni.


Ilyen lehet pl. egy "Maturity" nevű változó, aaminek az értéke lehet "child" és "adult". Logikai változóként már IsAdult és IsChild neveken él meg.


A szoftverfejlesztés egy igen nagy része a helyes nevek megtalálása. Az a névkonvenció a helyes, amelyik a legjobban illeszkedik az üzleti modellhez, és nem erőszakolja azt meg.

2023. jan. 13. 16:55
Hasznos számodra ez a válasz?
1 2 3 4 5

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!