Accueil Médias sociaux Concepts structurels et comportementaux de base dans OO Design pour iOS Apps - nuls

Concepts structurels et comportementaux de base dans OO Design pour iOS Apps - nuls

Table des matières:

Vidéo: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2025

Vidéo: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2025
Anonim

La conception orientée objet a des concepts structurels et comportementaux très utiles dans les applications iOS. La conception orientée objet est une manière différente de concevoir des programmes, où le comportement est associé à des objets. Ce qui suit définit et explique la terminologie OO de base tout en apportant des concepts supplémentaires qui complètent les blocs de construction de OO.

Objet

Un objet est un objet individuel, identifiable, réel ou abstrait, qui contient des données sur lui-même et des descriptions de ses manipulations des données. En d'autres termes, un objet peut être

  • Quelque chose de réel et tangible, comme les éléments d'une cuisine

  • Un concept pur, tel qu'un concept mathématique, comme un objet

d'identification est la première étape de l'analyse d'un domaine.

Chaque objet est considéré comme une instance d'une classe.

La classe

Une classe est une description de l'organisation et des actions partagées par un ou plusieurs objets similaires.

Un type est un concept similaire à celui de la classe, et ils sont souvent utilisés de façon interchangeable. Dans les langages de programmation, une classe a aussi une signification technique. C'est un modèle d'un objet, à travers lequel de nouveaux objets peuvent être créés. Cependant, le concept d'un type distinct de celui d'une classe est capturé dans de nombreux langages de programmation (mais pas Objective-C) par une construction de programmation appelée interface .

L'orientation objet a aussi le concept d'une métaclasse , dont les instances sont classes . Il y a une métaclasse en Objective-C appelée Class.

Abstraction

Lorsque vous identifiez les classes d'objets et leurs capacités, ne tenez pas compte des classes ou des capacités qui n'étaient pas pertinentes pour le domaine de l'activité. Par exemple, il est peu probable que vous ayez introduit une classe pour représenter la capacité d'une tasse de thé à être jetée si vous étiez en train de concevoir un programme de fabrication de thé.

Ce type de modélisation dans lequel vous ignorez ce qui n'est pas pertinent pour se concentrer sur ce qui est pertinent pour un domaine particulier est connu sous le nom d'abstraction . L'abstraction consiste à identifier les classes (et les types) nécessaires pour se limiter aux aspects pertinents du problème.

Généralisation

Le concept de généralisation est illustré dans la relation entre les classes Vessel et Teacup. La généralisation dans un langage de programmation est démontrée par un mécanisme appelé héritage, qui permet d'inclure ou d'utiliser les données et le comportement d'une classe comme base d'une autre classe.

Plusieurs langages de programmation ont une classe racine dont toutes les classes sont héritées. Dans le cadre Objective-C, la classe s'appelle NSObject. NSObject est équivalent à la classe Object en Java.

Une sous-classe est une classe qui hérite de toutes les fonctionnalités d'une autre classe (connue sous le nom de superclasse ). En outre, la sous-classe peut remplacer des fonctionnalités spécifiques en fournissant sa propre implémentation de certaines méthodes. La méthode de la superclasse peut toujours être appelée à partir de la méthode prioritaire, si cela est logique. Vous pouvez également étendre les fonctionnalités de la superclasse en fournissant des méthodes supplémentaires, en utilisant des variables de membre supplémentaires, etc. De même, un type (une

interface ) peut également être étendu en utilisant un sous-type. Ici, aucune fonctionnalité n'est surchargée; c'est juste que le sous-type a plus de méthodes qu'un objet doit implémenter. Un objet stocke généralement des données, également connues sous le nom d'état

. Cet état est stocké dans des supports de données appelés attributs. Les objets (tels que définis par les classes) ont également des capacités. Une méthode

est un moyen d'accéder à cette capacité - en d'autres termes, d'exécuter un ensemble d'instructions qui définissent ou manipulent les attributs d'un objet. D'autres objets provoquent l'exécution de ces méthodes. Ils le font via

le passage de message, qui est le processus par lequel un objet envoie des données à un autre objet ou demande à l'autre objet d'invoquer une méthode. Le passage de message se produit lorsqu'un autre objet appelle la méthode d'un objet. L'exécution d'un programme commence généralement par l'appel d'une fonction ou d'une méthode nommée main dans une classe spécifique. Le processus d'abstraction entraîne la création de classes et de types. Les classes et les types ont une caractéristique de plus: Ils ne contraignent leur utilisation que par leurs méthodes et attributs accessibles au public. Ceci est connu comme

encapsulation , une technique de conception de classes et d'objets qui restreint l'accès aux données et au comportement en définissant un ensemble limité de messages qu'un objet de cette classe peut recevoir. L'encapsulation empêche l'accès aux composants internes d'une classe et empêche les détails sur la façon dont la classe est implémentée d'être connus. L'encapsulation impose le masquage des informations, un autre concept clé dans l'orientation des objets. Les classes abstraites

servent uniquement de spécifications à réutiliser par d'autres classes. Vous ne pouvez pas créer d'objets à partir de classes abstraites. Les classes à partir desquelles vous pouvez créer des objets sont appelées classes concrètes . Bien sûr, les interfaces sont toujours abstraites. Une application consiste en une collection de classes de différents types. Les objets de ces classes interagissent entre eux pour implémenter les fonctionnalités de l'application. Les classes avec lesquelles une classe interagit s'appellent ses

collaborateurs . Polymorphisme

est la capacité de différentes classes à répondre au même message, chaque classe implémentant la méthode de manière appropriée. La ligne suivante tirée de MakeDrinkableFood illustre ce concept: Pour (i = 1; i <= numberOfEatingVessels; i ++) HeatingVessel.Pour (([EatingVessel objectAtIndex: i);

Quand le thé est fait, EatingVessel est lié à un objet Kettle Quand la soupe est faite, EatingVessel est lié à un objet Tureen.

Il est utile de séparer ces concepts Les concepts d'abstraction, encapsulation, métaclasse, classe, type, objet, héritage et interface sont tous des concepts structurels. Les concepts de méthode, de transmission de message et de polymorphisme sont des concepts comportementaux.

Concepts structurels et comportementaux de base dans OO Design pour iOS Apps - nuls

Le choix des éditeurs

Comment détecter les atteintes à la sécurité sur vos fichiers journaux Web hébergés - dummies

Comment détecter les atteintes à la sécurité sur vos fichiers journaux Web hébergés - dummies

Grande question est toujours sur la sécurité. Comment pouvez-vous repérer les failles de sécurité hébergées sur le Web pour protéger votre site et garantir qu'il ne sera pas piraté? La réponse courte est la suivante: Vous ne pouvez pas. Tout est piratable avec suffisamment de temps, des cerveaux sournois et des ressources. Cependant, il y a des choses que vous pouvez faire pour vous protéger un peu. ...

Comment utiliser MySQL Workbench pour votre site Web - dummies

Comment utiliser MySQL Workbench pour votre site Web - dummies

Bien que phpMyAdmin et d'autres outils d'hébergement Web Pour gérer les bases de données, il est possible que vous ayez besoin de quelque chose de plus puissant. MySQL Workbench est une bonne source dans cette instance. MySQL Workbench est un outil de conception et d'administration de base de données gratuit créé par Oracle qui réunit deux produits: MySQL Query Browser et MySQL ...

Le choix des éditeurs

Comment mettre du texte sur un cercle dans QuarkXPress - texte fictif

Comment mettre du texte sur un cercle dans QuarkXPress - texte fictif

Sur un cercle - c'est-à-dire texte suivant l'extérieur d'un cercle ou ovale - est un élément de conception commun dans les mises en page. C'est vraiment facile à faire dans QuarkXPress, mais ce n'est pas du tout évident comment. Procédez comme suit: Obtenez l'outil Ovale de la palette Outils et dessinez ...

ÉChanges peer-to-peer par rapport aux échanges Bitcoin réguliers - mannequins

ÉChanges peer-to-peer par rapport aux échanges Bitcoin réguliers - mannequins

Deux types d'échanges de bitcoins sont utilisés : peer-to-peer et régulier. D'une part, il y a les échanges de bitcoins réguliers, qui utilisent un carnet de commandes pour faire correspondre les ordres d'achat et de vente entre les personnes. Cependant, ni l'acheteur ni le vendeur n'ont la moindre idée de l'identité de l'autre partie, ce qui permet à tous les utilisateurs ...

L'interface d'application QuarkXPress - les nuls

L'interface d'application QuarkXPress - les nuls

Les palettes visibles à gauche, à droite et en bas de QuarkXPress sont flottantes - vous pouvez les faire glisser n'importe où qui vous convient. Contrairement aux palettes, les menus de la barre de menu sont collés: vous devez toujours passer la souris à la barre de menu pour y accéder. Cependant, ...

Le choix des éditeurs

Sept erreurs d'optimisation de moteur de recherche - nuls

Sept erreurs d'optimisation de moteur de recherche - nuls

Lorsque vous essayez d'obtenir votre site Web, c'est facile de faire des erreurs d'optimisation de moteur de recherche. Voici quelques-unes des erreurs de référencement les plus courantes. Vous ne connaissez pas vos mots-clés C'est également un problème majeur: la grande majorité des sites sont créés sans que les propriétaires ou les développeurs du site ne sachent vraiment ce que sont les mots-clés ...

Soumission de pages aux moteurs de recherche pour l'optimisation - dummies

Soumission de pages aux moteurs de recherche pour l'optimisation - dummies

Vous avez probablement vu "soumission "Services annoncés pour le référencement, peut-être sous la forme de spam dans votre boîte de réception, offrant de soumettre votre site Web à des centaines de moteurs de recherche, encore et encore. Dans la plupart des cas, ces services de soumission sont une perte totale de temps et d'argent. Voici comment obtenir votre site Web dans les moteurs de recherche. You ...

Six mythes À propos de Search Engine Optimization - mannequins

Six mythes À propos de Search Engine Optimization - mannequins

Il existe une grande confusion dans le monde des moteurs de recherche. beaucoup de mythes. Voici quelques-uns des mythes communément crus qui peuvent nuire à vos positions de moteur de recherche. Tout est une question de métabalises et de soumissions. C'est le mythe le plus répandu et le plus préjudiciable de tous, tenu par de nombreux concepteurs et développeurs Web. ...