Java a
int
et Integer
boolean
et Boolean
Cela semble un peu incohérent, pourquoi pas non plus
bool
vs Boolean
pour utiliser un nom plus court établi pour le type primitif?ou
integer
vs Integer
pour garder les noms de type cohérents?I pensez C++ avait décidé d'utiliser bool
un peu plus tôt que Java a décidé d'utiliser boolean
, et peut-être aussi certains ( non standard à l'époque?) Les extensions C aussi, donc il y aurait eu une priorité historique pour bool
. J'ai remarqué que j'essayais souvent instinctivement d'utiliser bool
au début (bonne chose les éditeurs modernes repérer immédiatement sans compilation supplémentaire), il serait donc agréable de connaître la raison d'être de l'état actuel des choses.
Si quelqu'un se souvient (d'une partie de) l'histoire, ou peut même trouver et créer un lien vers une discussion historique pertinente sur le net, ce serait formidable.
Sans entrer en contact avec des personnes réellement impliquées dans ces décisions de conception, je pense qu'il est peu probable que nous trouvions une réponse définitive. Cependant, sur la base du calendrier de développement des deux Java et C++, je suppose que le boolean
de Java a été choisi avant ou en même temps que l'introduction bool
à C++, et certainement avant que bool
ne soit largement utilisé. Il est possible que boolean
ait été choisi en raison de son historique d'utilisation plus long (comme dans l'algèbre booléenne), ou pour correspondre à d'autres langages ( comme Pascal) qui avait déjà un type boolean
.
Selon évolution d'un langage dans et pour le monde réel: C++ 1991-2006 , le type bool
a été introduit dans C++ en 1993.
Java a inclus boolean
dans sa première version en 1995 ( Java Language Specification 1. ). La première spécification de langage que je puisse trouver est la spécification Oak 0.2 ( Oak a ensuite été renommé Java ). Cette spécification Oak est marquée "Copyright 1994", mais le projet lui-même a été lancé en 1991, et apparemment avait une démo fonctionnelle à l'été 1992 .
En fait, Java est plus précis dans l'histoire ici. La théorie des valeurs vraies et fausses a été inventée par George Boole et est communément appelée Algèbre booléenne) en son honneur.
bool
est vraiment juste un raccourci pour éviter un nom plus long, cependant, étant donné la prise en charge de l'achèvement automatique des IDE modernes, ce n'est plus une raison valable (et n'était même pas de retour à l'époque où Java a décidé d'opter pour boolean
).
Je n'ai pas fait partie du processus de décision pour Java, mais si quelqu'un se soucie de l'histoire, alors "l'algèbre booléenne" est la priorité historique pertinente, et on pourrait tout aussi bien remettre en question la décision C/C++ sur la raison pour laquelle ils ont mutilé le nom de Boole en coupant le e
.