Interface - Quels sont les mots aussi simples

Interface - Quel est ce dont il a besoin, les types d'interfaces

4 janvier 2021.

Bonjour, chers lecteurs de blogs ktonanovenkogo.ru. À l'ère de l'ordinateur de masse, il est important de suivre les dernières tendances et de reconstituer constamment l'écart de connaissances.

Il est important que l'interface correspond aux objectifs et au contexte. S'il s'agit de l'interaction d'un spécialiste avec un ordinateur, la principale chose est la possibilité de fournir des informations et de remplir les tâches. Pour un utilisateur ordinaire, il a non seulement une valeur technique, mais aussi une valeur esthétique: le travail avec elle doit être confortable et compréhensible.

Vous ne voulez pas rencontrer la nécessité de se bloquer? Aujourd'hui, nous considérons un autre terme associé au PC.

Je vais essayer d'expliquer une telle chose comme une interface: qu'est-ce qui est et pourquoi est nécessaire. Alors, commençons.

L'interface est ...

Comme toutes les phrases neufs, le mot "interface" est venu à nous de la langue anglaise. L'interface traduite indique " Lieu de contact "

L'interface est un ensemble d'outils permettant à l'utilisateur d'interagir avec le système d'exploitation de l'ordinateur, un appareil mobile ou d'autres types d'équipements.

L'interface est ...

En tant que tels outils Les interactions peuvent agir:

  1. champs de texte;
  2. boutons et ticks;
  3. Listes déroulantes;
  4. conseils pop-up;
  5. Commutateurs;
  6. Éléments du menu du programme ou du site;
  7. et beaucoup plus.

Pour être mieux clair, quel type de fruit est cette interface, considérez un exemple visuel. Supposons que vous décidiez de partir en vacances dans des bords lointains et réservez un hôtel à l'avance via Internet.

Venez sur le site et vous attendez-vous à plusieurs interfaces: recherche, résultats d'affichage, entrant des données personnelles, paiement. Au cours de chaque étape d'interaction avec le site de réservation de l'hôtel, l'utilisateur fonctionne avec des données et effectue certaines actions.

Pourquoi ai-je besoin d'une interface? Tout est simple, plus que jamais: plus il est possible d'utiliser le programme, le site et d'autres produits, les utilisateurs plus heureux.

L'interface amicale vous permet également de soulever des ventes sur des sites commerciaux, car les visiteurs ne ferment pas l'onglet pendant les premières secondes suivant l'utilisation du site.

Les sites avec un bon design sont plus populaires parmi les utilisateurs, plus visités et apportent donc le meilleur revenu à leurs propriétaires.

Types d'interfaces

L'interface est habituelle pour subdiviser sur les types suivants:

  1. Ligne de commande . C'est la manière la plus ancienne et la plus touchée d'interagir entre l'utilisateur et l'ordinateur personnel. Dans le même temps, la ligne de commande reste le type d'interface le plus fiable.
    Pour les utilisateurs, l'interface est la base de travailler avec un PC ou un téléphone. À quel point ce système est simple ou complexe, la commodité de contrôle de l'appareil dépendra. Les développeurs peuvent modifier des structures système pour des tâches complexes. Utilisateurs inexpérimentés, il est préférable d'acheter des périphériques avec une interface claire pour faciliter leur travail.

    La communication avec la machine se produit dans sa langue. La ligne de commande est utilisée dans les systèmes d'exploitation destinés aux utilisateurs professionnels: par exemple, dans le BIOS.

  2. Interface graphique . C'est exactement ce que l'on entend aujourd'hui sous le mot "interface". Il est appliqué dans tous les systèmes d'exploitation, programmes, pages Web.
    Téléphone intelligent

    Avec une interface graphique, tous les utilisateurs de PC sont confrontés. Pour une interaction plus pratique, il est recommandé d'utiliser une souris d'ordinateur.

  3. Interface de signalisation . Le développement rapide des technologies est devenu l'une des raisons de l'apparition d'une interface de geste. Cela inclut des écrans sensoriels, des joysticks, des styles et d'autres éléments.
  4. Interface vocale . Parler de la phrase "OK, Google" et prononcez ensuite la requête de recherche, vous interagissez avec l'interface vocale du système d'exploitation Smartphone ou Tablet.
    Interface de ligne de commande

    Ce type est également apparu récemment grâce au développement rapide des technologies.

    Mais aujourd'hui, il bénéficie d'une popularité considérable, car elle vous permet de résoudre un certain nombre de tâches importantes et de gérer des appareils (qu'est-ce que c'est?) - Appareils mobiles, voitures, appareils ménagers, ordinateurs - avec des commandes vocales.

Quelle devrait être l'interface

La tâche principale de toute interface - Utiliser facilement Programme spécifique, site ou produit similaire.

Par exemple, lorsque le développement d'un portail Web est recommandé de faire Concentrez-vous sur les éléments suivants :

  1. Le nombre optimal d'éléments affichés;
  2. adaptabilité au bureau et aux appareils mobiles;
  3. la présence de boutons de réseaux sociaux populaires;
  4. icônes de taille optimales et boutons;
  5. forme commode d'enregistrement;
  6. Emplacement intuitif des éléments de menu;
  7. la présence de couleurs ou d'accents d'informations;
  8. système de recherche sur le site;
  9. Si nécessaire, la disponibilité des données de contact.

Ktonanovenkogo.ru est un exemple lumineux d'une interface bien pensé. Sur le site, une bonne solution de couleur, un menu intuitif, la présence de la recherche interne, afficher des articles à la date de publication, ce qui permet d'utiliser la ressource rapide et agréable.

C'est tout, chers amis. Maintenant, vous savez que l'interface est, simplement parle, la coquille externe des programmes ou des sites, ce qui facilite l'utilisation.

J'espère qu'après avoir lu l'article, vous n'avez plus de questions. En tout état de cause, vous permettez de vous inviter à commenter ce sujet sur ce sujet avec d'autres lecteurs de blogs Ktonanovenkogo.ru.

Et pour consolider les connaissances, je suggère de regarder une vidéo sur la nouvelle interface pour Android de Samsung:

Bonne chance à toi! Voir des réunions rapides sur les pages de ktonanovenkogo.ru

La plupart des interfaces modernes sont conçues pour les utilisateurs expérimentés. Les grues ne sont également pas immédiatement devenues familières. Auparavant, les côtés du commutateur étaient certainement étiquetés rouges et bleus - pour être clairs où il fait froid et où l'eau chaude. Nous sommes maintenant habitués, et de plus en plus de grues sont libérées sans étiquetage. Probablement, ils se sont finalement souvenu de quel côté qui coule.

Avec des interfaces Web, il s'agissait de la même chose. Au début de zéro, il y avait un skiorphisme - les graphismes ont imité les objets du monde réel. Si le site était le bouton, il ressemblait à un vrai bouton volumétrique. Il était compréhensible de la plupart des gens qui ont acheté leurs premiers ordinateurs.

Mais le moment est venu lorsque de nouveaux utilisateurs sont devenus moins. Toute personne qui souhaitait commencer à utiliser un ordinateur et Internet a déjà été maîtrisée dans la technologie. Et le besoin d'interfaces réalistes a progressivement disparu.

Maintenant, au lieu de l'icône "Menu" détaillée, le soi-disant Burger est généralement utilisé avec la signature - trois bandes horizontales. Et nous savons parfaitement ce qu'ils veulent dire. Nous savons également que les sites lisent généralement de haut en bas. Et n'avez pas besoin de flèches à expliquer. Les interfaces modernes sont conçues pour les utilisateurs expérimentés et plus concis.

Programmes

L'interface peut être considérée comme une sorte de contrat entre le système et un environnement externe. Dans le cadre du programme informatique, le système est la fonction ou le module, et l'environnement est le reste du projet. L'interface décrit formellement quelles données peuvent être transmises entre le système et l'environnement. Et "la mise en œuvre" peut être décrite comme "système d'interface moins". Dans des langues telles que les interfaces Haskell peuvent être extrêmement spécifiques. Et dans des langues comme Python, ils sont au contraire sont très ordinaires. Le type d'interface sélectionné peut affecter la taille de la dette technique créée et la performance du programmeur. Comment calculer le calcul est écrit ci-dessous. Une méthode sera également proposée pour évaluer et comparer différentes interfaces. Sur la base de ces comparaisons, vous pouvez vous regarder pour utiliser la langue ou l'outil logiciel.

Le concept le plus important dans le développement de logiciels - concept

Interface

. Cet article ne concerne pas les interfaces Java, mais sur des interfaces dans la conception de logiciels. Et dans une moindre mesure - sur des interfaces dans le monde environnant. Bien sûr, beaucoup d'autres concepts importants sont utilisés dans le développement de logiciels, mais je pense que la plupart d'entre eux sont en quelque sorte en fonction de l'importance de l'interface.

Quelle est l'interface?

La plupart d'entre nous connaissent deux de brèves formulations:

L'interface est un contrat entre le système et un environnement externe. L'interface est un système de jumelage avec un environnement externe.

Interface = système ∩ Environs

La définition avec jumelage convient, si le système est un objet physique. Les deux définitions sont très abstraites, alors considérons-les sur l'exemple d'impression sur le clavier:

Ici, le système est un ordinateur portable, l'environnement - mains (ainsi que les pattes du chat, grimpant sur le clavier). Par conséquent, l'interface doit faire partie de l'interaction entre les mains et un ordinateur portable, qui ne peut être attribuée qu'à certaines des parties, mais uniquement aux deux. Habituellement, nous pensons que les mains et le clavier sont séparés, de sorte que les limites exactes de l'interface dans ce cas font l'objet du différend philosophique. Vous décidez: s'il s'agit du clavier dans son ensemble ou d'atomes individuels interagissant les uns avec les autres lorsque les doigts et les touches contactent.

Probablement, vous serez surpris de savoir comment cet exemple est corrélé avec la définition de l'interface en tant que contrat. Dans ce cas, l'accord est un accord sur lequel nous avons passé suffisamment d'efforts lorsque nous nous souvenions de l'emplacement des clés et de la mémoire musculaire. Un certain nombre de nuances sont associées au traité. Par exemple, appuyer sur et maintien de la clé a une valeur différente par rapport à une simple pression ponctuelle.

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

:

add_numbers. 

non signé Int, non signé INT); annuler autre_function (vide) {add_numbers (3.4);} non signé INT add_numbers (non signé int a, non signé int b) {retour A + b;} int Page principal (vide) {add_numbers (9.99); Retour 0;}

Appliquer la même technique de différenciation de couleur

Un pantalon

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Décrire l'environnement, les systèmes

et interface:

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Le système à l'étude ici consiste en une fonction

. Si vous dites que vous pouvez considérer comme une méthode principale du système séparé -

Autre_function.

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

- Ensuite, vous aurez raison. Mais pour la simplicité, nous considérons une fonction

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

.

Système isolé. Il est également conseillé de considérer une partie de l'interface de conversion vers

Comme vous pouvez le constater, le quatrième concept est ajouté ici: "Mise en œuvre". Il est assez difficile de discuter du sujet des interfaces sans prendre en compte des implémentations spécifiques. Définissons ce terme: La mise en œuvre est un système d'interface moins. Mise en œuvre = interface système ∖

Mise en œuvre = système ∖ (Système ∩ Environnement)

Je dois admettre que je n'ai jamais eu une telle définition de la mise en œuvre auparavant. Mais il s'agit d'une extension inévitable d'un ensemble de définitions d'interface qui présentent un certain nombre d'avantages. Si vous êtes un étudiant pauvre et que vous vous préparez à l'examen, votre professeur n'a probablement jamais entendu parler de cette définition. Je ne serai pas surpris si cela contredit toute taxonomie de la programmation orientée objet. Mais même dans ce cas, je ne vais pas le changer. Laissez les fans de l'OOP réécrire leurs résumés conformément à ma définition.

À son tour, cela nous conduit à la prochaine conclusion logique: lorsque nous parlons des interfaces du système physique, nous imaginons généralement la "mise en œuvre" de ce système sous la forme d'un seul objet physique. Après tout, il serait étrange de considérer la mise en œuvre «réelle» sans prendre en compte des boutons, des affichages ou d'autres composants. Et cela nous pousse à considérer l'interface davantage comme un "accord", et non une combinaison d'objets physiques. C'est-à-dire sous la forme d'un ensemble de promesses, de garanties ou de quelque chose comme ...

.

contrat entre le système et l'environnement

Interface comme contrat

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Si vous considérez l'interface de fonction

  • Sous la forme d'un contrat, les garanties seront telles: Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface Fonction
  • Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface existe. Il n'a que deux paramètres, chacun d'entre eux n'est pas signé .
  • Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface int. Il n'a que deux paramètres, chacun d'entre eux n'est pas signé .

Retourne un seul non signé

  • L'interface de cette fonction ne nous dit rien: Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface ;
  • Sur l'interruption de l'exécution Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface ;
  • à propos de la complexité asymptotique du classement Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface ;
  • Sur le nombre de mémoire libre requise pour commencer Il n'a que deux paramètres, chacun d'entre eux n'est pas signé ;
  • Sur la mise en œuvre spécifique de non signé

Sur les effets secondaires (répartition de la mémoire, modification de variables globales).

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

L'interface décrite ci-dessus

connu sous le type de fonction

Prototype.

. Dans les versions précédentes de K & R C, une forme de description plus faible des interfaces a été utilisée:

non signé INT add_numbers ();

Définition de l'interface en tant que contrat est très pratique pour la programmation. Après tout, la plupart des tâches de programmeur consistent à déterminer et à demander des ensembles d'axiomes. Les conditions primaires et finales fournissent des propriétés ou des comportements. Avant que deux parties lient une relation d'affaires entre elles, elles préparent le contrat. Il a formulé le résultat final, le montant et la timpe de paiement. Il stipule également les conditions de résiliation anticipée, de remboursement et de coûts. Si le contrat est violé, la situation convertit le tribunal ou l'arbitrage. Mais si vous avez oublié quelque chose à préciser dans le contrat, les surprises peuvent survenir.

Avec des programmes informatiques tout de même. Les modules et les fonctions disent qu'ils ont besoin et (parfois) ce qu'ils seront donnés en retour. La violation de ce contrat conduira à une erreur de compilation à une erreur d'exécution, à l'échec de l'application, du système, des outils de contrôle de la qualité et de la direction du manuel. Je dirais même que la définition de l'interface en tant que contrat n'est pas métaphorique. Voici les mêmes principes que dans le contrat commercial, bien que ce ne soit pas si détaillé.

Brevets, Copyright et Interfaces

Je ne vous donnerai pas de conseils dans le domaine de la loi. Peut-être que quelque chose de moi a dit même contredire les lois. Tout ce qui suit est l'opinion privée de l'auteur.

Donc, je suis enclin

au sens propre

Considérez l'interface comme un «contrat commercial» entre deux entités. Je souligne - je ne considère pas cela une métaphore. J'adresse surtout cette interprétation par des spécialistes de la théorie des machines informatiques et des manifestants du droit d'auteur.

Si le brevet d'interface? Compte tenu de sa définition de contrat entre le système et l'environnement, je pense que l'utilisation de brevets serait une erreur. Et, apparemment, la jurisprudence existante soutient ma position. Mais gardez à l'esprit que le mot "interface" est utilisé très largement, et souvent du tout dans le sens, comme je l'ai décrit ci-dessus.

Devrais-je protéger l'interface par le droit d'auteur? Encore une fois, compte tenu de la nature "contractuelle", je pense que le "code source" de l'interface doit faire l'objet de droits d'auteur. Dans le même temps, le droit d'auteur ne doit pas être appliqué aux aspects des interfaces qui les rendent spéciaux. Il suffit de protéger le code source ou une image manuscrite, mais pas la garantie ou les limitations. Si la garantie ou les restrictions d'interface deviennent inséparables à partir de l'une des parties de son code, ces pièces doivent être privées du droit de protection.

Je propose un test simple qui vous permet d'apprécier s'il est nécessaire de protéger avec le droit d'auteur.

Si vous souhaitez protéger une sorte d'ensemble d'attributs, y compris les composants d'une tierce partie, utilisé de quelque manière que ce soit par l'interface, vous pouvez toujours créer un remplacement approprié. Le remplacement implémente la même interface et utilisé avec succès dans des logiciels d'une tierce partie, sans aucune modification de ce logiciel lui-même, ainsi que sans violation de tout droit d'auteur. Si un remplacement conduira à une infraction au droit d'auteur ou implique de modifier les logiciels d'une tierce partie, ou d'aggraver la fonctionnalité, l'ensemble d'attributs est trop agressif et doit être réduit.

Je crois qu'avec l'aide de ce test, il est conseillé de vérifier même sur la brevetabilité. Remarque: le but du test est de déterminer extrêmement

Inapplolition

Protection Copyright ou brevet. Il ne vous aidera pas à remédier à ce que

suivre

Protection de virage. De plus, ce test n'est que mon avis et non un acte de réglementation ou une loi.

Je souhaite également noter que tout critère considéré comme faisant partie de l'interface dans la même langue peut ne pas être que dans une autre langue. Par exemple, en Java, la procédure de déclaration des fonctions n'affecte pas l'exécution du programme. Et si vous affirmez accidentellement que l'ordre des fonctions dans le fichier n'a pas d'importance, ce sera une erreur par rapport au programme de Python: 

DEF FOO (): Imprimer ("Asdf") def FOO (ABC): impression (abc) foo ("lol")

Toutes ces conversations sur les lois me rappellent

Oracle contre Google

. Selon le lien donné, vous pouvez trouver des détails intéressants pour les développeurs. Je vais donc compter sur eux dans mon analyse. Compte tenu de tous les aspects, je ne vois pas les raisons de désaccord avec la décision de l'affaire en faveur de Oracle. Je ne peux pas dire qu'ils les soutiennent inconditionnellement, car nous ne sommes pas disponibles pas tant de parties de la procédure.

Je pense que beaucoup craignaient qu'un précédent soit créé, permettant aux éléments de l'interface de protéger le brevet ou le droit d'auteur. Juste le cas dans lequel mon test ne serait pas passé. Le tribunal de district a pris une décision: "La structure, la séquence et l'architecture de l'API peuvent être protégées par le droit d'auteur". Je ne pense pas que ceci est un problème, car la "structure, séquence et architecture" dans sa définition passera pleinement à mon test. Je donnerai quelques extraits de l'article sur le lien ci-dessus:

"Le tribunal de district a conclu que" il n'y a qu'une seule façon d'écrire "des annonces pour interagir avec Java. Si tel est le cas, l'utilisation des mêmes annonces n'est pas soumise au droit d'auteur. Google ne conteste pas le fait qu'ils pouvaient écrire leurs propres API pour accéder à Java, à l'exception de trois. " Enfin, "dans Google reconnaissait qu'ils ont littéralement copié des annonces".

Je pense que la Cour a accepté la bonne décision, en concluant que les propriétés uniques de l'interface ne doivent pas être protégées. De plus, Google a reconnu une copie "littérale". Si cela signifie copype, y compris toutes les lacunes et les erreurs d'orthographe dans les commentaires, je considère que cela en considérait une violation des droits. Même si l'interface ne peut pas être protégée, elle ne doit pas interférer avec la protection de l'expression créative individuelle.

Je connais ce litige uniquement à partir de sources réseau ouvertes, mais apparemment, le code Java d'origine est complètement copié à Google, y compris des interfaces. Il semble qu'ils croyaient eux-mêmes qu'il était nécessaire de licencier leur utilisation de Java, car cela faisait l'objet de négociations sur les accords de licence avec Sun avant 2010. Mais ces accords ont échoué après que Sun a été acheté par Oracle. Néanmoins, Google a continué d'utiliser les copies «littérales» du code, qui ne se sont manifestées clairement pas à son avantage au procès. Je soupçonne que leurs avocats connaissaient la faiblesse de leur position. Ils ont donc choisi une stratégie de protection basée sur la demande légitime de non-prolifération du droit d'auteur aux interfaces. Ils espéraient gagner l'affaire au détriment de la représentation de l'interface sous la forme du code source et de son association avec un concept plus philosophique.

Quel est le "module" ou "abstraction"?

Avec le mot "module" dans ma tête, il y a une image capitale du post. Cette illustration démontre bien l'importance des limites du module et de son interaction avec l'environnement. L'interface CUBE limite durement l'interaction de l'environnement extérieur avec le contenu du cube. Vous ne pourrez pas contourner l'interface, vous devez donc garder les "règles du jeu" imposées dessus. Enfin, il n'y a rien à l'intérieur du cube, mais peu importe: il n'est pas important de ne pas être son contenu, mais une interface.

Un autre exemple: la structure de la membrane cellulaire. Divers composants ne fournissent que les substances nécessaires à travers la membrane et uniquement lorsque cela est nécessaire.

Dans le contexte de cet article, je vais utiliser les termes «modules» et «abstraction» comme synonymes. Bien sûr, le dictionnaire explicatif ne sera pas d'accord avec moi, et même dans différentes langages de programmation, ces termes ont une signification différente. Mais dans ce cas, je ne suis intéressé que par le fait que ces deux entités peuvent être considérées comme un système que dans cet article. C'est-à-dire que les abstractions et les modules peuvent être constitués d'une interface et d'une implémentation.

Vous pouvez lire une fonction distincte du module dans le "module" - en python, classe ou package - Java. Quelque chose, si seulement elle avait une interface externe et une mise en œuvre "cachée". De plus, il peut y avoir une conséquence des règles de la langue, voire la décision d'un programmeur.

Abstraction de séchage

Autant que je sache, l'idée

Abstractions DIGHY AVANT SUR JOEL SPOLSKI

. Dans son essai, il y a de bons exemples, mais j'aimerais apporter le mien. Dans la programmation, le concept de "cartes" est très souvent rencontré: représentant la structure de données composée de paires de clés et de valeurs. Limite importante: la carte garantit que toutes les clés doivent être uniques. Une tentative d'enregistrement d'une nouvelle valeur pour une clé existante entraînera une erreur ou écrasera la valeur précédente. L'essentiel est que les clés ne doivent pas être dupliquées. Le plus souvent, les programmeurs nécessitent un désir de trier toutes ces clés. Et puisque les cartes ne peuvent pas garantir un certain ordre de tri des clés de tri, il est parfois nécessaire de se demander dans quel ordre ils seront après la buse? C'est la conséquence du fait que l'interface de la carte n'autorise pas les garanties de tri. Et bien que cela croyait que cela n'a pas d'importance, mais dans la pratique, je veux toujours trier. Il est donc nécessaire qu'un organisme de données plus efficace, par exemple, de faciliter la vérification des clés existantes.

Les données triées La force brute peut donner un résultat complètement différent par rapport aux données aléatoires accablantes. Supposons que vous ayez besoin de trouver la valeur minimale dans la liste: 

min = null; list = map.getmapkeys (); pour (item in list) {si (min == null) {min = item} else si (élément <min) {min = min; / * Cette ligne a un bug * /}}

Branche

Sinon si.

Il ne sera jamais exécuté si les données sont triées ascendantes. Même si vous commencez à vérifier à partir d'un emplacement aléatoire de la liste, le programme ne collidera jamais avec cette chaîne. Et ceci est un problème énorme, car si vous modifiez la mise en œuvre de la carte et que vous ne renvoyez pas les touches triées, votre code sera soudainement effectué sur un bug bogue. Et au moment où vous oublierez complètement ce code et la bombe cachée à l'intérieur.

Je veux offrir ma propre définition des fuites d'abstraction.

La fuite d'abstraction (fuite abstraite) s'appelle la situation lorsque la mise en œuvre peut affecter l'environnement car elle n'a pas été prévue pour l'interface.

Selon cette définition,

Presque tous les

Abstraction - respiration. Après tout, la description de l'interface de tous types d'impact environnemental n'a de sens que dans les systèmes mathématiques les plus stricts. Et comme pour les systèmes physiques, alors vous êtes peut-être rappelé

.

Théorem Gödel sur l'incomplétude

L'idée des trous de la plupart des abstractions n'est pas déraisonnable. Cela signifiait Joel Spolski dans sa "loi des résumés qui fuies":

"Toutes les abstractions non triviales sont trouées dans une certaine mesure."

Une fois que toutes les abstractions se penchent, que parler? Les problèmes ne se posent que lorsqu'une partie de l'environnement commence à s'appuyer sur l'une des méthodes d'exposition imprévues au système. Il s'agit de telles fuites que tout le monde dit.

Cela conduit à des conséquences profondes, non seulement du point de vue des bugs ordinaires, mais également dans le domaine de la sécurité. Avec des systèmes physiques dans lesquels il y a des fuites dans l'environnement extérieur, compromette la sécurité, le terme "

Attaque de canal latéral

" En combinaison avec une déclaration selon laquelle toutes les abstractions des trous, cela nous conduit à la conclusion:

Chaque mise en œuvre physique du cryptosystème est vulnérable aux attaques tierces.

Compte tenu de tout ce qui précède, cette idée peut être étendue non seulement à des implémentations physiques, mais également sur des implémentations émulées.

Évaluation et comparaison des interfaces

Comme nous l'avons déjà vu ci-dessus, les interfaces sur C sont des ensembles tels que le type de valeur de retour et le nombre de paramètres pouvant être transmis. Qu'en est-il de Python? J'utilise le terme "interface" conformément au contexte de l'article, c'est-à-dire dans un sens plus large par rapport à ce qu'ils écrivent dans les livres sur "Interfaces" dans Python. 

DEF Add_numbers (A, B): retour A + BPRTT (add_numbers (3,1)) Imprimer (add_numbers ("ABC", "DEF"))

Dans cette langue, nous devons formaliser les types d'interface de fonction. Il simplifie la fonction de définition et d'appel, car il est nécessaire de traiter moins d'informations. D'autre part, des restrictions sur lesquelles vous pouvez effectuer le chèque de la recherche d'erreurs moins.

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Je pense que vous avez besoin de quelque chose à dire sur l'évaluation et la comparaison de différentes caractéristiques de l'interface du point de vue des méthodes de transmission d'informations. Vous pouvez évaluer à la fois une interface spécifique et un ensemble de toutes les interfaces pouvant être implémentées dans cette langue. Rappelons notre exemple avec

Et nous estimons la quantité d'informations que nous pouvons passer à travers l'interface et le contourner, avec l'aide des fuites d'abstraction. Via l'interface
En faisant autour de l'interface Description des caractéristiques En faisant autour de l'interface Description des caractéristiques
Nombre d'états possibles Type de paramètre 1. 1 (non signé INT) État de variable globale
(Nombre de variables globales) * (Nombre d'états de variables globales) Type de paramètre 1. Type de paramètre 2. Système de fichiers
Nombre de statut du système d'état Type de paramètre 1. Type de valeur retournée Temps d'utilisation du processeur
Non limité Valeur des paramètres 1. 2 ^ (compter dans non signé int) État de Kuchi.
Nombre d'états Valeur des paramètres 1. Valeur de paramètre 2. Beaucoup d'autres ...
... Valeur des paramètres 1.

Valeur de retour

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Et il y a un certain nombre de choses qui peuvent communiquer avec

Via l'interface Python. Transmission d'informations via une interface Python
En faisant autour de l'interface Description des caractéristiques En faisant autour de l'interface Description des caractéristiques
Nombre d'états possibles Transfert d'informations contourner l'interface Python 1 (non signé INT) Système de fichiers
(Nombre de variables globales) * (Nombre d'états de variables globales) Transfert d'informations contourner l'interface Python Type de paramètre 2. Temps d'utilisation du processeur
Nombre de statut du système d'état Transfert d'informations contourner l'interface Python Type de valeur retournée État de Kuchi.
Non limité Transfert d'informations contourner l'interface Python 2 ^ (compter dans non signé int) Beaucoup d'autres ...
Nombre d'états Transfert d'informations contourner l'interface Python Valeur de paramètre 2. État de variable globale
... Transfert d'informations contourner l'interface Python

Pratiquement infini

Et maintenant, jetez un coup d'œil au nombre de types d'interface que nous pouvons décrire à Haskell: 

Add_numbers :: int> int -> inadd_numbers 3 4 = 7main = impression (add_numbers 3 4)

Tous ceux-ci sont un raisonnement philosophique curieux, mais comment se rapportent-ils à la rédaction de logiciels? Eh bien, commençons par le fait que les interfaces dans la programmation vous entourent de tous les côtés, même si vous ne faites attention à cela. Par exemple, si vous programmez sur Java, nommez explicitement les interfaces en fonction de leur objectif. Et dans d'autres langues, ils sont également présents. Considérons un exemple de fonction d'interface

Compte tenu de ce code, l'interface

Peut obtenir les informations suivantes: Transférer des informations via l'interface Haskell
En faisant autour de l'interface Description des caractéristiques En faisant autour de l'interface Description des caractéristiques
Nombre d'états possibles Transmission d'informations à titre de l'interface Haskell Type de valeur retournée Temps d'utilisation du processeur
(Nombre de variables globales) * (Nombre d'états de variables globales) Transmission d'informations à titre de l'interface Haskell 1 (int) Temps d'utilisation du processeur
Nombre de statut du système d'état Transmission d'informations à titre de l'interface Haskell Effet sur le cache de processeur / mémoire Beaucoup d'autres ...
Non limité Autre ...
Nombre d'états 1 (valeur 3)
... 1 (valeur 4)

Au moins 2 ^ 30 [1]

  • Pour une interface spécifique dans votre langue choisie, vous pouvez également évaluer le nombre de moyens uniques pour transférer des informations:
  • à travers l'interface;

En parcourant l'interface à travers des fuites d'abstraction.

  • Vous pouvez également faire attention aux éléments suivants:
  • Le nombre de restrictions que vous pouvez utiliser dans cette langue du point de vue du nombre minimum et maximum d'informations transmises via l'interface;

Quels instruments fournissent cette langue pour empêcher l'interaction du contournement d'interface.

Programmes
Analysez-nous de cette manière l'interface utilisateur graphique dans laquelle il est possible de changer les dossiers: Transmission d'informations via GUI
En faisant autour de l'interface Description des caractéristiques En faisant autour de l'interface Description des caractéristiques
Transfert d'informations contourner l'interface graphique Cliquez sur le dossier 1 Nombre de pixels sur l'écran détenu par le dossier 1 * Nombre de clics Temps d'utilisation du processeur
Possibilités cachées UI Cliquez sur le dossier 2 Nombre de pixels sur l'écran détenu par le dossier 2 * Nombre de clics Combinaisons d'appel rapides non standard
Nombre de pixels sur l'écran occupé par le bouton 2 Curseur de guidage au dossier 1 Nombre de pixels sur l'écran détenu par le dossier 1 Beaucoup d'autres ...
Autres capacités d'interface utilisateur inattendue Curseur de guidage au dossier 2
Nombre de pixels sur l'écran détenu par le dossier 2 Temps entre guidage et clic
Infiniment Événements clavier standard
Nombre de combinaisons de clés standard Zone d'écran occupée par GUI

Nombre de pixels utilisés pour afficher une interface graphique

Et considérons maintenant la même tâche de changer le dossier à l'aide de la ligne de commande et de

:

Analysez-nous de cette manière l'interface utilisateur graphique dans laquelle il est possible de changer les dossiers: Transmission d'informations via GUI
En faisant autour de l'interface Description des caractéristiques En faisant autour de l'interface Description des caractéristiques
CD Temps d'utilisation du processeur Nombre de noms de dossiers que vous pouvez composer Temps d'utilisation du processeur

Environnement variable

Dans les deux tables précédentes, je n'ai pas inclus des données telles que le nombre de bruit dans le signal. Si vous comparez la complexité de la répétition de la même séquence lorsque vous appuyez sur les touches (l'une après l'autre) et le mouvement de la souris (pixel derrière le pixel), il est évident que dans le second cas, les erreurs sont beaucoup plus. Dans les interfaces graphiques, cela est compensé par une sémantique moins stricte. Imaginez si sur les boutons "OK" et "Annuler" disponibles sur les clics de zone ne concernaient qu'une largeur de 1 pixel.

Il est possible de compliquer davantage l'analyse si vous évaluez la modification de la part des erreurs des utilisateurs ayant des handicaps physiques.

  • Nous avons donc considéré l'un des moyens possibles d'évaluer et de comparer des interfaces. Sur la base des exemples ci-dessus et de leur propre expérience, laissez-moi faire plusieurs extrapolations:
  • Les gens préfèrent les interfaces qui ne sont pas trop strictes lors de la réception d'informations, surtout si l'interface est inconnue.
  • Les interfaces pas trop strictes sont plus souvent utilisées correctement.
  • Interfaces complets hébergeant de grandes quantités d'informations semblables puissantes, mais souvent utilisées correctement.
  • Si l'interaction devient fastidieuse, les gens essaient de transférer des informations au contournement d'interface.

Lors de l'interaction, contournant l'interface, à travers des fuites d'abstraction, l'émergence de surprises désagréables est extrêmement probable.

Séchage et interfaces limitées

Je vais décrire plusieurs observations basées sur l'analyse de la section précédente. Mais d'abord, je donnerai quelques définitions:

L'interface fuite (interface fuite) est une interface ignorée lors de toutes les interactions entre le système et l'environnement.

Une interface limitée (interface spécifique) est une interface avec un nombre relativement petit d'entrées et de sorties possibles.

Un bon exemple d'interface limitée -

Fonctions spécifiées par morceaux

défini uniquement pour un petit nombre de données d'entrée.

Si vous pouvez raisonnablement évaluer les interfaces "trous" ou "limitée", il est logique de décrire la plage, à une extrémité dont les interfaces très limitées et inactives seront des interfaces inactives et de l'autre - illimitée et illimitée.

Vous offrez probablement à quelqu'un de bouger à gauche ou à droite sur la balance, mais surtout, vous avez saisi l'idée. Vous pouvez même écraser deux échelles distinctes: selon le degré de trous et de rigueur. Bien que, en général, ces deux concepts soient bien corrélés.

La prochaine corrélation que je veux offrir est dérivée de mon expérience. Sur le bord gauche de l'échelle "Erreur" sont moins courants et qu'ils se présentent généralement en raison de défaillances

Validation

.

. Au bord droit de l'échelle d'erreur se produit plus souvent, et souvent leur raison réside dans les échecs lorsque

vérification

Complexité asymptotique de la dette technique

Je vais commencer par la déclaration:

La partie principale de la dette technique survient dans le projet ou en raison de l'assistance inacceptable sur les fuites d'abstractions, ou en raison des interfaces extrêmement incroyables, ce qui complique grandement la prévision des conséquences.

Au tout début, le projet contient un ou deux modules et étudier un bon accord d'interface, vous devrez effectuer la quantité de travail sur (1). Si votre interface est mauvaise, le volume de la dette technique sera également égal à (1), de sorte que vous n'aurez donc pas à dépenser trop de temps pour apporter le contrat d'interface. Mais avec une augmentation linéaire de la quantité de modules, le volume des liaisons intermoduliques peut atteindre O (n ^ 2). Par conséquent, avec une mauvaise interface, si chaque module interagit avec tous les autres modules, le nombre d'appels à l'interface dans le pire des cas sera proportionnel à N ^ 2.

Comme on peut le voir sur les graphiques, il est initialement enregistré sur la création d'une interface bien pensée. Mais cette victoire est rapidement perdue en raison des problèmes croissants liés à l'interaction inter-module. La quantité de travail due à cette augmentation du degré de quantité de modules, tandis qu'avec une bonne interface, elle augmente linéairement. Le pire scénario - lorsque chaque module communique avec chaque module, il existe plus de problèmes dans le processus de Hendeshka, d'ici et de tiges.

Typiquement, le niveau d'interaction intermodulique augmente plus lentement que O (n ^ 2), mais il est définitivement plus rapide que d'environ (n). Il existe également un facteur qui transforme le début de la croissance rapide à l'avenir: c'est la mémoire humaine. Même lorsqu'il y a 20 modules dans votre projet, vous vous rappelez probablement qu'il en fait chacun d'eux. Donc, de tous les contrats dont vous n'avez besoin que des noms de brumeux des fonctions et des accords ésotériques. Mais dès que le projet devient assez grand, de nombreux détails sont oubliés, ou lorsque de nouvelles personnes arrivent au projet - et la puissante croissance des coûts de main-d'œuvre commence.

  • Pourquoi toujours en utilisant la ligne de commande?
  • Vous recevrez des réponses différentes de personnes à cette question, dont aucune ne me semble la plus importante:
  • La ligne de commande est flexible et donne de nombreuses opportunités.

Il consomme moins de ressources.

Cela vous permet de mieux comprendre comment tout fonctionne.

La chose la plus importante est la raison pour laquelle nous utilisons toujours la ligne de commande, c'est

AUTOMATISATION!

Il est difficilement possible de surestimer les avantages de l'utilisation de processus automatisés. Si je dois exécuter un cluster sur 100 serveurs, je ne vais pas vous connecter à chacun d'eux individuellement et installer manuellement un logiciel, en cliquant sur une pile de boutons dans une inntie sans interface graphique. Même si vous devez automatiser le processus clichan dans l'interface graphique, vous aurez besoin d'un autre fichier dans lequel les informations seront enregistrées sur les endroits et comment cliquer sur. Quelque chose comme un fichier flexible ... des équipes.

Bien que nous puissions implémenter l'automatisation via des graisseurs clic et à l'écran, nous ne devons pas oublier que ce type d'interaction avec la machine est inventé pour les personnes. Cela implique l'utilisation d'une interface non stricte qui ne nécessite pas une grande précision. Par conséquent, votre clicker automatisé sera sûrement utilisé si la fenêtre passe soudainement de sa position ou la police système changera. Avec l'interface graphique, trop de variables sont connectées. Et la ligne de commande vous permet d'agir beaucoup plus précisément, vous interagissez à travers une interface très stricte. Par conséquent, beaucoup de gens ne l'aiment pas, contrairement aux programmes informatiques.

Bien sûr, il existe des situations où la faible précision de l'interaction de l'interaction est bonne. Par exemple, lors de la création de peintures numériques, vous n'avez pas besoin de vous soucier du placement et de la couleur de chaque pixel. La principale chose est d'être

quelque chose

Spécial pour chaque pixel. Par conséquent, le bruit transmis à la main en déplaçant le curseur devient des informations importantes dans le produit final.

Choisir la bonne langue

Après la section sur la complexité asymptotique de la dette technique, vous pourriez penser que tout projet doit être écrit dans une langue avec des conditions très strictes de contrats d'interface, comme Haskell ou Java. Mais ce n'est pas exactement ce que je voulais transmettre. La réponse à la question suivante peut vous aider à faire le bon choix.

Quelle est la probabilité de modifier les exigences de votre projet?

Au début du nouveau cas, la réponse sera certainement «très probable», surtout si un petit produit est créé et même avec l'ambiguïté de ses perspectives sur le marché. Si les exigences sont clairement formulées comme étant, par exemple, dans le cas de la création d'un compilateur ou d'un développement d'un projet sur la base des normes internationales, la réponse sera certainement "peu probable".

Si vous avez répondu «très probable», utilisez une langue qui vous permettra de perdre moins de temps lors de la spécification des contrats d'interface: ils travailleront certainement contre vous en cas de modification des exigences. Mais la tâche principale ici n'est pas d'obtenir la mise en œuvre idéale des exigences, mais les exigences idéales qui vous permettent

pour commencer

Créer une mise en œuvre finale. Une exception peut être une situation où votre MVP est un système énorme avec des centaines de modules. Si beaucoup de gens sont impliqués dans le projet, une bonne interface est simplement nécessaire pour qu'ils se soient entre eux.

Si vous avez répondu «pas trop probable», utilisez une langue avec des contrats d'interface très stricts. Tout d'abord, vous devrez travailler davantage, mais l'introduction de nouvelles opportunités nécessitera moins d'efforts. La seule exception peut être une situation si vous écrivez un petit produit (plusieurs centaines de cordes).

Parfois, il fut cassé plusieurs copies concernant ce que Twitter a commencé à créer sur Ruby sur rails, puis c'était la raison de la mise à l'échelle du projet. Plus tard, Twitter a été traduit en Scala. Quelqu'un peut supposer que les développeurs ont commis une erreur et ils devraient immédiatement choisir Scala. Je ne pense pas. Au cœur de Twitter se trouve une idée très simple et dans les conditions d'un grand nombre de concurrents, ils devaient gagner la position dominante sur le marché. Ils devaient grandir le plus rapidement possible, malgré les dépenses. Les cycles de développement de nouvelles fonctionnalités auraient dû passer le plus rapidement possible, car cela lui permet de comprendre ce qui nécessite exactement les utilisateurs, quel produit ils veulent. Les difficultés de mise à l'échelle sont un signe de non-défaillance, mais le succès. La vision de Twitter a été formulée en tant que produit fini et il ne restait que de le réaliser. Du point de vue des développeurs, c'est juste un Nirvana, tout le monde rêve d'une telle chose, mais peu de gens parviennent à travailler dans de telles conditions: "reléguer cette merde de zéro sur votre langue préférée, car il est pratique pour vous, si seulement à l'avenir, il était plus facile de travailler avec lui. " Il est beaucoup plus facile de réécrire quelque chose à partir de zéro, ayant une implémentation plus faible avant nos yeux que d'essayer d'ajouter un look de produit, ce qui permettra à l'entreprise de décoller. Malheureusement, la majorité des acteurs du marché ne vont que en évitant les coûts «inutiles» à créer à partir de zéro et à dépenser beaucoup de force et de temps à la mise à l'échelle de la mise à l'échelle.

Pourquoi est si populaire python?

Dans la section des trous et des interfaces strictes, j'ai parlé de la méthode d'interfaces classifiante, en fonction de leur tendance à des fuites d'abstractions, ainsi que de la manière dont les définitions d'interface sont strictes. Et j'ai souligné le fait que des interfaces plus "amicales" et "productives" sont beaucoup plus sujettes aux fuites que l'autre partie du spectre d'interface.

Je crois que la popularité de Python découle du fait que c'est une excellente langue d'introduction fournissant des contrats d'interface extrêmement simples. Pour la même raison, avec une augmentation du projet sur Python, il devient de plus en plus difficile.

Python est très populaire dans la communauté scientifique et parmi les amants expérimenter avec une analyse numérique. L'essence même de l'expérience nécessite une amélioration constante du produit créé et des interfaces strictes ralentissent.

Pourquoi les logiciels d'entreprise écrivent-ils habituellement sur Java / C ++?

Dans la section sur les trous et les interfaces strictes, j'ai parlé des compromis associés à différents types d'interfaces. Java et C ++ sont davantage à la partie stricte du spectre, contrairement à Python ou à Ruby. Oui, les fuites peuvent avoir des fuites, et il y a des langues plus strictes (les mêmes haskell), mais Java et C ++ sont plus équilibrées du point de vue de l'évolutivité, de la convivialité et des paroles. De plus, ces deux langues vous permettent d'être flexible pour contrôler les bandes d'interfaces en fonction des accords de projet. Par exemple, faire des variables ou des fonctions avec privé, public ou protégé.

Comment couper les coins

Si vous souhaitez apporter quelque chose à partir de cet article, veuillez: Lorsque vous devez couper des coins dans le projet, faites-le à l'intérieur

Ventes

et faire demi-tour B.

  • très bien
  • interface. Même si la mise en œuvre n'est pas trop bonne et que ses problèmes circulent dans d'autres parties du système, il s'agit d'un mauvais problème d'interface! Pour qu'il n'y ait pas de malentendu, laissez la liste de ce que je veux dire sous les interfaces:
  • Prototypes de fonctions.
  • "Interfaces" Java.
  • Méthodes de classes publiques.
  • Variables de composants publics.
  • Fichiers d'en-tête (.h) en C / C ++.
  • Points d'extrémité de l'API reposant.
  • Routage de l'URL.
  • Aspects publics des "modèles" ou des "packages".

Structure de la base de données logique (DDL).

Et beaucoup plus.

Conclusion

Comme vous pouvez le constater, le concept d'interface est extrêmement important et a un impact très important sur le développement du projet dans le domaine de la protection juridique, de la productivité et du nombre de relations philosophiques avec d'autres aspects de la structure du système. Demandez à d'autres programmeurs qu'ils pensent d'interfaces et d'écouter toutes sortes de choses.

L'interface utilisateur est le moyen d'interaction entre les humains et un ordinateur. Parlant avec des mots simples, l'interface est la partie externe du programme ou du périphérique avec lequel l'utilisateur fonctionne. L'interface de mots - Cartouche avec interface anglaise, c'est-à-dire le "lien frontalier".

Le plus souvent, sous l'interface de mots implique l'interface utilisateur. Par exemple, ils disent: "Cette boutique en ligne a une interface inconfortable et déroutante." Cela signifie que le magasin n'est pas pratique pour interagir. Par exemple, il est difficile de trouver les marchandises nécessaires, il n'est pas clair comment passer une commande, le site ne permet pas de sauvegarder les données entrées précédemment, etc.

Exemples d'utilisation:

De nombreux utilisateurs souhaitent retourner l'ancienne interface "vkontakte", ils n'aiment pas le nouveau.

Le programme a une interface intuitive - claire immédiatement où appuyer sur et ce qu'elle va conduire.

L'interface Windows est très compliquée: les utilisateurs inexpérimentés sont confondus dans une pile de paramètres.

Interface Web est une page sur Internet qui permet à l'utilisateur d'interagir avec un service ou un périphérique directement via le navigateur. Par exemple, à l'aide de l'interface Web, vous pouvez utiliser la banque en ligne: Accédez à la page Banque, entrez le login et le mot de passe, puis traduisez de l'argent entre les comptes, payer les services, etc.

Interface matérielle et logicielle. Quelle est l'interface USB et API En plus de l'interface utilisateur, il existe une interface logicielle (interaction des programmes les uns avec les autres) et une interface matérielle (méthodes d'interaction des périphériques physiques, "fer"). Lorsqu'ils disent sur l'interface matérielle, ils signifient généralement des connecteurs à travers lesquels les appareils peuvent être connectés les uns aux autres. Par exemple, "connexion via une interface USB" signifie connecter des périphériques via

Pneu séquentiel universel

destiné à connecter des équipements périphériques. Grâce à une USB, par exemple, vous pouvez connecter un clavier, une souris, une caméra ou un smartphone à un ordinateur.

Interface matérielle - Câble USB

L'interface du programme est un moyen d'interagir des programmes entre eux. Par exemple, API (interface de programmation d'application, interface de programmation d'application) est un ensemble de commandes permettant aux programmes d'échanger automatiquement des données sans la participation des personnes. Un programme API envoie une demande, une autre répond à elle.

Par exemple, sur le site de l'information montre des taux de change qui changent en temps réel. Cela ne signifie pas que l'éditeur de site chaque fois change manuellement les chiffres sur la page. Le site d'information lui-même envoie une demande d'API à un serveur avec un échange de devises et reçoit les numéros nécessaires à partir de là.

Types d'interfaces utilisateur. Graphique, texte et autres

L'interface de texte est un moyen de communiquer une personne avec un ordinateur à l'aide d'une impression de commande. Par exemple, dans le système d'exploitation MS-DOS, l'interface était textuelle - l'utilisateur composera les commandes nécessaires sur le clavier et la machine les a effectuées.

Interface de texte MS-DOS - ligne de commande

Le problème de l'interface de texte est que l'utilisateur doit connaître les commandes nécessaires et chaque fois les saisir manuellement sans erreurs. En partie de cette difficulté éliminé la coquille pour MS-DOS - par exemple, Norton Commander.

Norton Commander - Gestionnaire de fichiers pour MS-DOS. Vous pouvez non seulement taper des commandes sur le clavier, mais utiliser des fichiers à l'aide de raccourcis clavier.

Bientôt, il apparaît des interfaces graphiques où l'utilisateur interagit avec des objets visuels: boutons, icônes, images à l'écran. Le système d'exploitation Windows utilise une interface graphique: l'utilisateur clique sur les icônes des icônes - des pictogrammes représentant des fichiers et des programmes.

Interface graphique Windows 3.11

L'interface matérielle est un moyen d'interagir avec un ordinateur à l'aide de structures tangibles. Par exemple, une souris ou une joystick est une interface matérielle. Déplacement de la souris sur la table, nous déplacons simultanément la flèche du curseur à l'écran.

Interface matérielle - souris d'ordinateur. Photo: Depositphotos.

L'interface vocale est le contrôle à l'aide de commandes vocales. La voix humaine aujourd'hui connaît même des téléphones mobiles. Par exemple, Siri d'Apple, assistant vocal de Google, "Alice" de Yandex

Interface vocale - Apple Siri. Siri est une réduction de l'interface d'interprétation et de la reconnaissance de la parole (interface de reconnaissance vocale et d'interprétation). Photo: Depositphotos.

Une interface d'instrument vous permet de donner des commandes, de faire des gestes avec votre doigt, une main, une souris d'ordinateur, un contrôleur spécial, etc.

Interface d'installation - Console de jeu Nintendo Wii, dont les contrôleurs répondent au mouvement de l'utilisateur.

L'interface tactile permet à l'utilisateur de ressentir des sensations tactiles (poussoir, vibration, etc.) et interagir avec l'ordinateur avec leur aide.

Gants de réalité virtuelle - un exemple d'interface tactile. Photo: NASA.

L'interface neurale vous permet de transmettre des commandes avec les électrodes pelées dans le cerveau. Les interfaces neuronales bidirectionnelles peuvent non seulement prendre des informations du cerveau, mais aussi pour l'envoyer au cerveau - par exemple, à travers la rétine de l'œil.

Jens Naumann - Aveugle, capable de "voir" avec une prothèse visuelle neurale. La caméra capture l'image et envoie la version traitée dans l'écorce visuelle du cerveau à travers les électrodes.

Kian Rivz dans le film "Matrix" (1999). Les héros apprécient Neuroointerface pour entrer dans la réalité virtuelle - la matrice.

Cybebeis - Interface sous forme de réalité virtuelle. Cadre du film fantastique "Johnny Mnemonic" (1995)

Bienvenue chez vous, des amis! Le mot "interface" sur la rumeur des propriétaires de PC et de téléphones, mais tout le monde ne le comprend pas. Nous dirons pour les théières, quelle est l'interface dans l'ordinateur et le smartphone, pourquoi elle est nécessaire, que se passe comment l'utiliser correctement. En voyant ce mot sur le site, dans la description ou dans les instructions, le nouveau venu comprendra de quoi nous parlons et quoi faire ensuite.

Vague

Quelle est l'interface pour laquelle il a besoin

Traduit de l'interface anglaise - Interaction. Comment écrire en russe: interface (parfois les infabes sont écrites - il est incorrect). La définition normale est une limite commune entre deux objets fonctionnels. Par exemple, un homme se cache derrière le volant de sa voiture, passe le levier de la boîte de vitesses - il s'agit d'une interaction avec le système d'interface de la machine. Boîte de vitesses comme conducteur entre le conducteur et la voiture.

  • Dans l'informatique, la signification du mot plus profondeur est les outils d'interaction utilisateur avec le jeu, le programme ou le système d'exploitation, les méthodes de contrôle du fonctionnement de la machine informatique. Grâce à l'interface, une personne découvrira tout programme ou éditeur de texte. Si nous possédons des travaux avec l'éditeur de peinture graphique, il est facile de maîtriser d'autres programmes similaires, car ils ont une structure similaire.
  • Tâches d'interface de base:
  • informations d'entrée et de sortie;
  • logiciel de gestion;

échange de données via des transporteurs externes;

Commandes.

Le panneau arrière de l'unité système PC est également une interface qui vous permet de connecter d'autres périphériques.

L'utilisateur comprend un ordinateur et voit les icônes devant lui: "Mon ordinateur", "Labels", "Photo", etc. - Tous ces éléments d'interface.

Types d'interfaces

L'interface peut être décrite brièvement comme une clairance: ce qu'une personne voit devant lui, à l'aide d'un PC ou d'un téléphone. Bien que, en fait, il s'agit d'une structure système, car en appuyant sur les boutons en cliquant sur l'élément de menu, l'utilisateur va à l'endroit où elle a besoin: caméra, galerie, contacts, messages. Son but est une utilisation efficace et agréable d'un dispositif électronique ou d'un site.

Vidéo.

  • Il existe différents types d'interfaces, chacune desquelles nous allons dire plus loin.
  • Le plus commun:
  • ligne de commande;
  • Interface graphique et de texte;
  • par type de gestion (gesticulant, voix, tactile et neural);
  • programme;
  • Matériel;
  • logiciel matériel;
  • utilisateur;
  • La toile;
  • Jeu;

Matériel;

Ligne de commande

dans les téléphones.

Quelle est l'interface mots simples

Si vous devez nommer et répertorier les types d'interfaces modernes, ces informations vous aideront à définir tout correctement et à faire une bonne présentation.

Il s'agit d'un logiciel séparé qui fait partie de l'OurSer et assurant la relation entre l'utilisateur et le système d'exploitation. Grâce à l'invite de commande, vous pouvez effectuer des commandes informatiques. Ceci est une communication avec la machine dans sa langue.

Des lacunes - Vous devez connaître les commandes, chaque fois que vous les composez sans erreur. L'avantage est la possibilité d'entrer des commandes sans la participation de la structure graphique, qui donne des opportunités supplémentaires.

La ligne de commande (interface console) commence dans sa coquille, par exemple dans le BIOS. L'itinéraire principal de son emplacement: C: \ Windows \ System32 \ cmd.exe. Le YOWSER habituel n'a pas besoin d'être délibéré lorsque la ligne de commande est située et son fonctionnement, et pour les professionnels, il s'agit de l'outil principal, car il aide à l'ordinateur avec des virus, de la restauration de Windows et dans d'autres cas.

Une méthode simple pour trouver la ligne de commande: en même temps, appuyez sur les touches WIN + R, dans la fenêtre CMD qui apparaît.

Interface de commande

Graphique et texte

  • Graphique (eng. L'interface utilisateur graphique, l'interface graphique) est utilisée dans toutes les opérations, dans la plupart des applications. Souvent, il s'appelle WIMP - il s'agit d'une abréviation des premières lettres du WordWOW, de l'icône, du menu, du dispositif de pointage (appareil de manipulation).
  • Éléments principaux:
  • menu;

listes;

Pictogrammes (dessins, schémas).

Sous Windows Windows, l'utilisateur clique sur des icônes, des pictogrammes qui décrivent les programmes et les fichiers sont une interface graphique, qui fournit de nombreuses opportunités à chaque utilisateur. Pas besoin d'entrer des commandes. Pour une interaction pratique, une souris d'ordinateur est utilisée.

Vous devez distinguer le graphique de l'interface visuelle, qui représente le système en tant qu'ensemble d'images visuelles - il peut s'agir d'une icône ou d'une inscription située dans un emplacement d'écran spécifique. La structure visuelle n'utilise pas nécessairement des mappages graphiques. La structure visuelle peut être graphique et texte.

Utilisation de texte lors de la saisie et de la fourniture d'informations, d'un ensemble de lettres / chiffres, de caractères pseudographiques. Il utilise tous les éléments de conception graphique de base: les cases à cocher, les boutons déposant des listes, etc. Différent avec des ressources techniques à petite exigence, des données à grande vitesse. L'interface de texte est un type d'utilisateur, tandis que la ligne de commande fait partie du texte.

Dans le cas le plus simple, l'interface de texte utilise une ligne de commande, mais de nombreux programmes avec des éléments interactifs constituent un design plus sympathique et compréhensible, qui approche la commodité au graphique.

Certains programmes prennent en charge le système de fenêtres développé, tels que Turbo Vision, D-Flat, Cscape, Beaucoup ont des sujets de conception variable (DOS Navigator), ainsi que la possibilité d'utiliser différents éléments d'interaction interactifs (joystick, souris).

Gesticulant, voix, tactile et neural

  • L'utilisateur gère l'ordinateur et donne des commandes avec différentes méthodes: gestes, voix, etc.
  • Par conséquent, le type de contrôle est distingué:
  • Interface annuelle. Les éléments de contact sont des comprimés graphiques, des écrans tactiles et d'autres technologies qui réagissent aux mouvements des doigts;
  • L'interface vocale indique la gestion de la parole. Les exemples sont: Siri d'Apple, Alice de Yandex;

tactile lorsque l'interaction est basée sur des sensations tactiles, obtenant un retour sensible (vibration, poussée);

Neuronal - Transmission de commandes à travers des électrodes pelées dans le cerveau. Les informations peuvent être prises du cerveau et transmises, par exemple, à travers la rétine des yeux. En pratique, Neuroointerface est capable d'atténuer la vie des patients paralysés dont le cerveau fonctionne bien. Neuroointerface leur permet d'effectuer des actions concrètes, de lire leurs intentions à l'aide d'électrodes connectées au cerveau.

Interface système graphique

Logiciel, matériel, matériel et logiciel

  • Le système d'interface fournit un contact même entre les progs et les périphériques.
  • Il y a 3 groupes:
  • Interface de programmation (anglais. L'interface de programmation) est l'interaction des programmes entre eux. En particulier, l'interface de programmation d'API ou d'application - Les méthodes d'échange de données entre les programmes informatiques (on envoie une demande à l'API, une autre réponse). Le portail de nouvelles montre des devises. L'éditeur n'est pas responsable de cela (il devrait modifier manuellement les chiffres) et l'API sur lequel le site envoie une demande au change de devises, reçoit une réponse;

Le matériel est conçu pour interagir des périphériques physiques les uns avec les autres par des emplacements, des connecteurs, des passerelles. USB (pneu séquentiel universel) est l'exemple le plus familier. À travers elle connecter au téléphone PC, appareil photo, souris;

Le logiciel matériel est l'interaction des nœuds, des éléments sous contrôle du programme.

Interface utilisateur

Ce que l'utilisateur contacte ce qu'il voit devant lui-même, où il clique - ceci est l'interface utilisateur. Ceci est la partie externe de l'appareil ou du programme avec lequel l'utilisateur fonctionne.

Souvent, sous l'interface de mot implique l'utilisateur (interface utilisateur). Il arrive que le visiteur du site indique: "Il y a une inscription ou un menu déroutant et désagréable." Donc, le site est inconfortable de contacter: il est difficile de trouver le bon article, de la commande de la commande, de télécharger le document. La structure compréhensible est quand une personne voit immédiatement où cliquer, sait ce qu'elle le causera. Mais avec Windows, de nombreux débutants ont des problèmes, car la conception de cette enquête sur le système d'exploitation, les utilisateurs inexpérimentés sont confondus dans les paramètres. Dans la plate-forme 1C, deux mécanismes d'interface utilisateur différents utilisés dans différents clients 1C.

Ligne de commande, graphique, texte, voix, gesticulant, tactile, neural, procédural - tout cela est inclus dans l'interface utilisateur. Sous son contrôle, l'utilisateur entre dans les données du PC, les informations figurant sur le moniteur sont affichées, l'imprimante. Il y a même une interface de la feuille de calcul - il s'agit d'un élément qu'une personne voit, exécutant, par exemple, l'application OpenOffice.org Calc.

Mais il y a d'autres types d'interface utilisateur.

Interface matérielle

Web, jeu

L'interface Web est une page Web (un ou un ensemble) représentant une structure pour contacter avec un serveur ou un périphérique via un protocole HTTP et un navigateur Web. Par exemple, le client peut aller à la page de banque, payer les services de services publics. L'avantage principal - pas besoin d'installer des logiciels supplémentaires, car le système d'exploitation va avec le navigateur. Pas besoin d'être confondu avec l'interface réseau. Selon ce terme, il est compris comme un dispositif virtuel ou physique, qui est destiné à transmettre des données entre les programmes via un réseau informatique (par exemple, VLAN).

Le moyen populaire de créer une interface Web est l'utilisation de HTML avec CSS et JavaScript'A. Aussi utilisé Adobe Flash, applets Java ou Silverlight.

Un autre type est l'interface de jeu - est associé directement à la Gamedizayn, bien qu'elle dépasse sa compétence. Le joueur et le jeu sont habités dans différents univers et la structure de jeu est le point de leur contact mutuel. Avec cela, le joueur reçoit les informations nécessaires du jeu et prend les actions du joueur.

Matériel

L'interface matérielle ou tactile est un autre type d'utilisateur. Ceci est un contact d'une personne avec des appareils électroniques avec des structures tangibles. Par exemple, une souris mobile qui, une personne déplace simultanément la flèche du curseur à l'écran.

Variétés d'interfaces

Interface dans les téléphones

Le style général de l'interface de périphérique mobile est caractérisé en tant que SIMP (écran-icon-icon-menu). Sur les plates-formes Windows mobiles sont les éléments de la structure qui occupent l'écran entier. La transition entre les fenêtres est effectuée par des éléments graphiques ou en tirant avec un doigt.

  • Les caractéristiques de la conception de SIMP sont expliquées par les spécificités du système d'exploitation.
  • Le système d'exploitation le plus commun pour les gadgets:
  • Android;
  • Apple iOS;
  • Windows Mobile;
  • Palm OS;

Symbian OS;

BlackBerry OS.

La Russie est populaire - Android, Apple iOS, WindowsMobile. Mais les fabricants utilisent leurs types de systèmes d'interface et de blocs, la principale raison est la marque. La capacité d'Android à la personnalisation signifie que les fabricants d'équipements d'entreprise peuvent modifier les logiciels, par exemple dans le domaine de la fonctionnalité et de la conception.

Différentes structures systémiques des appareils mobiles n'affectent pas considérablement l'expérience des propriétaires, car elles sont créées pour résoudre des tâches universelles. Différence dans l'ensemble des applications.

L'interface du périphérique mobile comprend également des prises casques, de chargement, des aides vocales - une grande partie de ce qui est basé sur le travail du PC, uniquement ceci est ajusté pour les gadgets. Mais dans les smartphones, de nombreuses nouvelles structures, par exemple, NFC (NFS) - la structure de la communication sans fil.

Que signifie la langue d'interface

Il ne vaut pas la peine de le confondre avec les langues installées lors de la frappe du matériel de texte.

  • La langue d'interface est celle utilisée lors du chargement des opérations, dans le menu, dans la boîte de dialogue, les fenêtres d'erreur et les références. Il peut être modifié si au moins 1 supplémentaire est installé dans la langue principale.
  • Un moyen simple de découvrir quelles fenêtres de langue sont debout sur un PC:
  • Ouvrez le "Panneau de configuration";

Onglet "langue";

Attribué la langue principale utilisée maintenant. Il peut être changé ou ajouter un nouveau.

résultats

Pour une personne, l'interface est une base pour travailler avec un PC ou un téléphone. Et c'est un moyen d'interagir entre les programmes et l'équipement. La simplicité de la structure du système dépend, qu'il soit facile de gérer l'appareil. Les développeurs proposent des concepteurs et des structures différentes, les rendent plus ou moins agréables, intuitives pour les personnes. Les experts informatiques peuvent apporter des modifications à certaines structures ou les utiliser pour résoudre des tâches sérieuses et les utilisateurs inexpérimentés peuvent acheter pour eux-mêmes l'appareil avec un système d'interface intuitif pour faciliter le travail et gagner du temps.

On dit souvent que l'interface quand ils signifient l'interaction d'une personne et d'un ordinateur ou d'une application. Dans l'article, nous analyserons la définition de l'interface, qui est destinée aux interactions, à leurs types et fonctionnalités.

  • Quelle est l'interface

  • L'interface est un "conducteur" entre l'homme et un programme, un système d'exploitation, un dispositif technique ou une méthode d'interaction entre eux entre eux. Une personne donne des commandes à l'aide de l'interface, le périphérique les analyse et répond. Les tâches principales pour lesquelles il est destiné à:

  • Entrez et affichant des informations (son, image);

  • Gestion des applications individuelles;

Exchange de données avec d'autres appareils;

Types d'interfaces

Interaction avec le système d'exploitation.

Ligne de commande

L'interface implique l'interaction des humains et de la technologie non seulement, mais également un programme informatique, programme de programme, périphérique informatique. Par exemple, lorsque les périphériques sont connectés à l'unité de système informatique, la méthode d'interaction utilise le connecteur.

Certains types d'interaction vous permettent d'obtenir plus de contrôle sur un ordinateur ou un smartphone, mais nécessitez des compétences supplémentaires. D'autres sont plus à l'aise, mais fournissent moins de possibilités. Chaque type a ses propres caractéristiques.

La ligne de commande (interface console) commence dans sa coquille, par exemple dans le BIOS. L'itinéraire principal de son emplacement: C: \ Windows \ System32 \ cmd.exe. Le YOWSER habituel n'a pas besoin d'être délibéré lorsque la ligne de commande est située et son fonctionnement, et pour les professionnels, il s'agit de l'outil principal, car il aide à l'ordinateur avec des virus, de la restauration de Windows et dans d'autres cas.

Grâce à la ligne de commande, vous pouvez effectuer le nombre maximal d'opérations est un moyen direct de communiquer avec le système d'exploitation. Pour taper la commande, vous devez entrer le texte de l'ordinateur et appuyer sur ENTER, l'ordinateur commencera à effectuer.

La méthode moins est qu'il convient uniquement aux utilisateurs formés. Dans la ligne de commande, il n'y a pas d'éléments graphiques auxiliaires, il devra maîtriser la langue de l'interaction et les commandes ne peuvent pas être erronées.

Les graphiques simplifient l'interaction avec l'ordinateur, il est beaucoup plus facile de travailler avec elle et plus confortable qu'avec le texte. Dans le rôle de l'interface graphique, ces éléments sont:

Dans le cas le plus simple, l'interface de texte utilise une ligne de commande, mais de nombreux programmes avec des éléments interactifs constituent un design plus sympathique et compréhensible, qui approche la commodité au graphique.

Par exemple, lors de l'interaction avec Windows utilise des icônes et des fenêtres, la souris est connectée à entrer. Sur le smartphone, le périphérique d'entrée est un écran tactile.

L'interface de texte n'utilise pas les images: les commandes sont données à l'aide du texte et des informations sont fournies sous forme de texte.

L'interaction GESTURE vous permet de donner des commandes aux mouvements des doigts. Il est appliqué lorsque vous travaillez avec un écran tactile d'un smartphone. Par exemple, le geste "UP" fait apparaître la fenêtre contextuelle.

L'interface vocale est une gestion vocale. Le gadget reconnaît et effectue des commandes sonores.

tactile lorsque l'interaction est basée sur des sensations tactiles, obtenant un retour sensible (vibration, poussée);

Le tactile implique une interaction avec l'aide de toucher: vibration ou sensibilité à la pression.

L'interface neurale transmet la commande directement du cerveau à l'ordinateur, car elle est implantée dans le cerveau. Il est utilisé en médecine: une personne paralysée peut donc communiquer avec le monde extérieur.

Le matériel est conçu pour interagir des périphériques physiques les uns avec les autres par des emplacements, des connecteurs, des passerelles. USB (pneu séquentiel universel) est l'exemple le plus familier. À travers elle connecter au téléphone PC, appareil photo, souris;

L'interaction du programme avec l'autre fournit une interface logicielle. Les programmes envoient des demandes les unes à l'autre et recevoir des réponses. Par exemple, pour montrer constamment la météo pertinente dans un widget ou sur un ordinateur, un programme envoie constamment une demande à une autre et fournit de nouvelles données.

Le matériel est destiné à l'organisation de la communication entre les périphériques physiques via des connecteurs et des machines à sous. Et lorsque l'ordinateur lit les informations à partir d'un disque dur - il s'agit d'un travail conjoint du programme et du périphérique physique, c'est-à-dire l'interface matérielle et logicielle.

Tous, avec lesquels l'utilisateur habituel interagit lorsqu'il comprend un ordinateur, entre dans le site Web ou dans l'application, tout ce qu'une personne voit à l'écran est une interface utilisateur.

Web, site de jeu

Le moyen populaire de créer une interface Web est l'utilisation de HTML avec CSS et JavaScript'A. Aussi utilisé Adobe Flash, applets Java ou Silverlight.

L'interface Web vous permet de travailler via le navigateur. C'est l'interaction des programmes sur Internet. Par exemple, vous pouvez aller au site Web du magasin et payer les achats. Le navigateur dans ce cas sera une interface Web, grâce aux pages interagissant.

Matériel

Le jeu est de savoir comment l'utilisateur peut interagir avec le jeu que les commandes peuvent donner, dans quelle forme les informations de jeu sont présentées et comment le jeu répondra aux actions.

Quelle devrait être l'interface

Ceci est un contact tactile avec des gadgets. Il comprend la touche écran tactile touchante, les actions avec une souris ou un joystick.

Structure de la base de données logique (DDL).

Les smartphones utilisent un écran tactile qui implique des interfaces gestes et tactiles. L'utilisateur touche les éléments, le système d'exploitation ou l'application reçoivent des commandes de celui-ci et les exécuter.

Добавить комментарий