zwetan wrote:
quel est pour toi un langage vraiment objet ?
Il me semble pourtant l'avoir écrit.
Un langage objet est un langage qui supporte les caractéristiques centrales
du paradigme objet, et principalement:
- encapsulation,
- typage (Liskov ou Cook), qu'il soit statique, dynamique ou par inférence,
- définition d'objets (que ce soit par classes ou par prototypes),
- communication par messages,
- polymorphisme,
- héritage (sous-typage ou classification, etc.),
- tout est objet.
Maintenant, ce que j'attends en plus d'un langage objet est aussi:
- conception par contrat (pré/post conditions + invariants),
- si typage statique, la covariance multiple et la généricité contrainte,
- les closures,
- et, si en plus le langage supporte la syntaxe language (sujet verbe
complément) comme avec SmallTalk ou Lisaac, alors je suis heureux :)
A côté de ceci, sauf erreur de ma part, tu sembles faire la distinction
entre langage objet et langage orienté objet.
Je voudrais faire remarqué ceci: chez les anglais, lorsqu'ils désignent un
langage qui supporte des caractéristiques d'un paradigme de programmation,
ils le désignent par le mot "oriented", comme par exemple pour le paradigme
objet, object-oriented language ou, pour la programmation par aspect,
aspect-oriented programmation. Ceci a donné en français "langage orienté
objet" (on aime bien traduire mot par mot les expressions anglo-saxones :))
mais la dénomination "langage objet" en français existe aussi. Ceci a
conduit a donner une distinction entre les deux. Il n'y en a pas. Ça n'a
rien à voir avec le fait qu'un langage soit "plus" objet qu'une autre comme
certains le disent plaisamment. AMHA, la vrai dénomination, plus française
si jamais ça existe, devrait être "langage par objets".
Mais peut-être qu'à la lecture de l'article sur JavaScript, je changerais
mon opinion sur celui-ci.
peut-etre mais apparement tu as deja des idées tres arretés sur JavaScript
C'est vrai, je l'admet. Mais mes idées arrivent à changer, à plus ou moins
long terme selon si elles sont bien ou peu arrêtées