4 votes

Nouveau en Objective-C : Est-ce que quelqu'un connait des diagrammes qui expliquent les classes, les objets et les méthodes?

Comme vous l'aurez deviné de la question - je suis au tout début du parcours Obj-C.

J'espère que quelqu'un là-bas connaît des diagrammes qui représentent la relation entre les classes, les objets et les méthodes - et qu'ils sont prêts à les partager.

Le problème que j'ai est que regarder simplement du code dans un manuel ne l'explique pas complètement - du moins pour moi.

Merci de lire!

Cordialement, Spencer.

7voto

Justicle Points 6439

Pas de diagrammes, mais c'est le tutoriel que j'aurais aimé lire avant de commencer : http://www.cocoadevcentral.com/d/learn_objectivec/

Anglais simple, tous les concepts de base.

2voto

amattn Points 7908

Les classes sont comme des classes dans n'importe quel langage. Elles sont des descriptions.

Les objets sont comme des noms. Ce sont une instance d'une classe. C'est-à-dire que si vous aviez une description d'un livre générique (la classe) et que vous faisiez un thésaurus basé sur cette description, le thésaurus serait l'objet.

Les méthodes sont plus ou moins des fonctions. Si les objets sont des noms, alors les messages sont des verbes.

[ScienceBook getTableOfContents]; // cela renverrait probablement une table des matières.

Ici, l'objet ScienceBook reçoit un message getTableOfContents (méthode). Ainsi, le livre de science trouverait, formaterait et renverrait théoriquement la table des matières à celui qui a envoyé le message.

2voto

GalacticCowboy Points 8185

Dans une certaine mesure, les diagrammes peuvent ne pas être très utiles pour répondre aux questions que vous posez.

Cela peut aider à penser à des choses comme ceci :

Une "classe" fournit le prototype ou la définition d'une chose. Par exemple, une "Personne" ou une "Voiture". Un synonyme courant de "classe" est "type".

Un "objet" est un exemple concret ou une instance d'une classe. Par exemple, vous êtes une instance de "Personne", et votre voiture est une instance de "Voiture".

Une "méthode" est un comportement, une action ou une propriété d'une classe. Cependant, une méthode n'a généralement de sens que dans le contexte d'un objet. "Personne" -> "Manger" n'a pas de sens, mais "vous" -> "Manger" en a.

Il s'agit de concepts fondamentaux de la programmation orientée objet qui ne sont pas spécifiques à Objective-C. Si vous êtes intéressé par une vue d'ensemble générale qui est indépendante du langage, je recommande "Object Thinking" de David West. Même s'il provient de Microsoft Press, il couvre les concepts plutôt que tout langage spécifique.

2voto

Je viens d'un arrière-plan assez solide en C++, mais je me souviens très bien que lorsque j'ai commencé, j'ai eu du mal à saisir le concept jusqu'à ce que je trouve un moyen de l'associer à des objets physiques.

Le mot classe et objet peuvent être presque interchangeables. Pensez à un objet comme à un conteneur, comme un seau. Le mot seau serait votre "classe". C'est le nom que vous donnez au type d'objet que vous avez.

Un seau a un certain objectif...transporter quelque chose. Il pourrait s'agir d'eau...ou peut-être de sable. Alors peut-être que vous voulez remplir le seau. Cela serait quelque chose que vous faites au seau, donc en Objective-C, ce serait votre méthode. Vous pourriez écrire quelque chose comme :

- (void) fillWith:(elementType)something;

Alors dans ce cas, "something" pourrait être quelque chose qui représente un objet que vous souhaitez remplir votre seau.

Votre classe pourrait ressembler à ce qui suit:

typedef enum items {
   CRAYONS,
   MARKERS,
   SAND,
   WATER } elementType;

@class Bucket {
   elementType item;
}
- (void) fillWith:(elementType)something;

@end

Voici un lien vers quelques exemples en Objective-C. Essayez également le centre de développement d'Apple.

0voto

Benedict Cohen Points 6997

Si vous cherchez des informations sur la Programmation Orientée Objet (c'est-à-dire la signification de classes, objets, méthodes, etc.), alors je vous déconseillerais Objective-C. Objective-C sur Mac repose fortement sur le framework Cocoa. Le framework Cocoa est vaste et effectue beaucoup de "magie" ce qui rendra plus difficile la compréhension des fondamentaux de la POO.

Un endroit plus facile pour commencer serait un langage utilisé pour le développement web. Il est plus facile de comprendre les rouages de la POO avec ces langages.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X