Le problème, c'est que tout le monde a une définition différente de ce qu'est la programmation objet, et que selon cette définition, tel ou tel langage sera ou non considéré comme "objet". Certains diront que Java n'est pas "orienté objet" parce qu'il n'a pas le dispatch multiple, que tout n'y est pas objet et qu'il est possible de ne pas cacher les variables d'instance. D'autre qu'Ada n'est pas objet, parce que (jusqu'à 2005 en tout cas) il n'avait pas la syntaxe objet.méthode(arguments). D'autres encore notent que python n'a pas de mécanisme d'encapsulation. Etc. Il n'y a guère que CLOS et Smalltalk qui semblent faire consensus.
Dans le cas de Go, on a les mécanismes d'encapsulation, de polymorphisme, d'introspection et de fonctions attachées à des types, en pratique ça permet déjà de faire des choses.
[^] # Re: Programmation orienté objet : non
Posté par Rodger . En réponse à la dépêche Le langage Go fête ses 4 ans. Évalué à 7.
Pas faux.
Le problème, c'est que tout le monde a une définition différente de ce qu'est la programmation objet, et que selon cette définition, tel ou tel langage sera ou non considéré comme "objet". Certains diront que Java n'est pas "orienté objet" parce qu'il n'a pas le dispatch multiple, que tout n'y est pas objet et qu'il est possible de ne pas cacher les variables d'instance. D'autre qu'Ada n'est pas objet, parce que (jusqu'à 2005 en tout cas) il n'avait pas la syntaxe objet.méthode(arguments). D'autres encore notent que python n'a pas de mécanisme d'encapsulation. Etc. Il n'y a guère que CLOS et Smalltalk qui semblent faire consensus.
Dans le cas de Go, on a les mécanismes d'encapsulation, de polymorphisme, d'introspection et de fonctions attachées à des types, en pratique ça permet déjà de faire des choses.