Discussion:Classe (informatique)

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une page de Wikipédia, l'encyclopédie libre.
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons


Définition de la notion de classe[modifier le code]

Citation : Une classe représente donc un ensemble d'objets.

C'est imprécis et peut porter à confusion. Une classe n'est pas une liste ou un tableau d'objets. Elle représente la structure et les méthodes associées à un objet.Webpac 7 mai 2006 à 23:58 (CEST)[répondre]

Je propose comme définition : Une classe est un prototype définissant les champs et les méthodes d'un objet. On peut ainsi le voir comme étant un moule ou une usine permettant d'instancier des objets.Webpac 9 mai 2006 à 01:37 (CEST)[répondre]

Je pense qu'il faut ajouter à l'articles certaines choses:
  • Ajout des notions de classe abstraite et d'interface. -- Fait
  • Préciser (sans empiéter sur l'article correspondant) le mécanisme d'héritage.
  • Je pense qu'il faut ajouter à la définition de Webpac qu'une classe est une structure de donnée avancée, contenant des attributs et des méthodes tous deux typées. Je pense qu'il faut également parler de la résolution de portée et des protections qui existent entre les données (public, private, protected). -- Fait
  • Ajout de la surcharge d'opérateurs. -- Fait
  • Enfin, quelques exemples de définition de classes dans certains langages (c++, java, python) serait une bonne chose. -- Fait
Dites moi ce que vous en pensez. Je me propose de modifier l'article en conséquence. Feeder Fan 14 mai 2006 à 23:08 (CEST)[répondre]

Pour répondre à Webpac...

  • On ne peut pas considérer une classe comme un prototype (enfin, au sens informatique du terme). Si on se réfère à en:Prototype-based programming (et à son équivalent dans le monde des design pattern), un prototype est un objet du même niveau que les instances des classes, qui crée des instances à partir d'une méthode comme clone().
  • Sinon, je ne pense pas qu'un ensemble (au sens mathématique du terme) puisse se réduire à une liste ou à un tableau; par exemple, un ensemble peut contenir une infinité d'objets. Par conséquent, tous les objets qu'il est possible de créer représentent bien un ensemble. Lorsqu'on définit une classe, on distingue une partie de ces objets. Donc, définir une classe revient à définir un sous-ensemble de l'ensemble des objets qu'il est possible de créer. Donc, si une classe n'est pas un ensemble d'objets, au moins elle le représente. Je ne vois donc pas ce qu'il y a d'imprécis dans la définition que j'ai donnée, ni de confu?

Feeder Fan, tes propositions sont intéressantes et je propose de faire le premier pas.

--Kerflyn 15 mai 2006 à 08:01 (CEST)[répondre]

Voila pour mes propositions. Par contre j'ai remarqué que l'on parle de constructeur et d'instanciation sans définir au préalable ce que sont ces concepts. Je pense qu'il faut ajouter une rubrique 1. Définition, dans laquelle on trouverait la définition générale et la précision de blablabla est une instance de kkchose et également expliciter plus "simplement" ce que vous entendez par moule.

-- Feeder Fan 15 mai 2006 à 22:55 (CEST)[répondre]

Référence et liens[modifier le code]

Bonjour,

Le lien vers Class File Inspector (plugin pour Eclipse) me semble présenter un aspect inévitablement publicitaire et, en conséquence, donc non conforme au principe de NPOV de Wikipédia. Cela dit, je ne remets pas en cause la pertinence dudit site (et ne souhaite donc pas que l'auteur de cet ajout, 82.126.15.86 — voir aussi l'historique —, soit offusqué de ma remarque).

Aussi, dans un premier temps, et en attendant un avis tiers, je déplace le lien dans la section « Voir aussi », la section « Notes » étant plutôt destinée aux notes de "bas de page" ou de "fin de document" dans la terminologie usuelle (ce que, je l'admets, le nom des balises correspondantes ne laisse pas supposer :-) ).

Cordialement --nha de Lyon 15 septembre 2006 à 12:19 (CEST)[répondre]