Descargo de responsabilidad: sé que los tipos de datos son un poco subjetivos para el lenguaje de programación / programación que está utilizando, me gusta escribir en Python como una cuestión de preferencia; aunque me alegra saber de cualquier idioma / implementación.
¿Cuál es el mejor tipo de datos para almacenar una variable de tres estados? Algo capaz o que representa Positivo, Neutro y Negativo.
Ejemplo: Los números enteros -1
, 0
, 1
.
- Pro: muy conciso.
- Pro: Potencialmente eficiente, podría almacenarse como un único entero con signo de 2 bits.
- Pro: podría usarse como una escala, como un multiplicador de coma flotante.
Ejemplo 2: 0
, null
, 1
(o cualquier permutación)
- Pro: el caso de uso no neutral puede ser binario.
- Con: Requiere tipo de datos dinámico
- Con: potencialmente no conciso.
Ejemplo 3: +
, (cadena vacía),
-
- Pro: muy conciso.
- Con: puede utilizar la lógica de cadena para determinar el estado.
- Pro ?: Representación gráfica intuitiva.
Tal vez hay una lógica binaria inteligente que puede hacer algo inteligente que ni siquiera puedo imaginar, quizás hay demasiadas consideraciones sobre el caso de uso.
Además, ¿hay alguna consideración al adaptar un estado ternario para almacenar en un motor de base de datos? Como Innodb como referencia.