1. Mode Graphique
    1. 1- Principes fondamentaux
      1. Processus de conception
      2. Caractéristiques d'un grand logiciel
        1. Haute performance
        2. Facilité d'utilisation
        3. Aspect attractif
        4. Fiabilité
        5. Adaptabilité
        6. Interoperabilité
        7. Mobilité
      3. Principes de conception
        1. Principes (1)
        2. Principes (2)
        3. Principes (3)
      4. Pensez aux utilisateurs
        1. Compatibilité internationale
        2. Accessibilité aux handicapés
        3. Etendre l'interface
      5. Priorités
    2. 2- L'expérience du Mac
      1. L'environnement
        1. L'environnement (1)
        2. L'environnement (2)
      2. Les technologies
        1. Les technologies (1)
        2. Les technologies (2)
        3. Les technologies (3)
        4. Les technologies (4)
      3. Installation et mises à jour
        1. Packaging, installation
        2. Les assistants
    3. 3- L'interface Aqua
      1. Entrées utilisateur
        1. La souris
        2. le clavier
          1. Fonction des touches
          2. Raccourcis-clavier
          3. Navigation au clavier
        3. Sélection
        4. Edition de texte
      2. Glisser-déposer
        1. Glisser-Déposer (1)
        2. Glisser-Déposer (2)
      3. Le texte
        1. Les fontes
        2. Le style
      4. Les icônes
        1. Genres et familles d'icônes
        2. Création des icônes
        3. Icônes des barres d'outils
        4. Images propres au système
      5. Les pointeurs
      6. Les menus
        1. Comportement des menus
        2. Conception des menus
        3. La barre de menus
          1. Les menus (1)
          2. Les menus (2)
          3. Les menus (3)
        4. Menus contextuels et du Dock
      7. Les fenêtres
        1. Type et apparence
        2. Eléments
          1. Barre de titre
          2. Barre d'outils
          3. Barre de recherche
          4. Barre latérale
          5. Barre inférieure
          6. Les Tiroirs
        3. Comportement des fenêtres
          1. Comportement (1)
          2. Comportement (2)
          3. Superposition
          4. Défilement
        4. Les panneaux
          1. Les panneaux
          2. Panneaux transparents
          3. Autres panneaux
      8. Les dialogues
        1. Types de dialogues
        2. Aspect et comportement
      9. Fenêtres de dialogues
        1. Recherche, Préférences, Ouverture
        2. Enregistrement
        3. Choix, Impression
      10. Les contrôles
        1. Contrôles du cadre
          1. Contrôles en capsule
          2. Contrôles hérités
        2. Les boutons
          1. Boutons poussoirs
          2. Boutons en icônes
          3. Boutons de recherche
          4. Boutons de gradient, et d'aide
          5. Boutons à champfrein
          6. Boutons ronds
        3. Contrôles de sélection
          1. Boutons radio
          2. Cases à cocher
          3. Contrôles segmentés
          4. Boutons et menus pop-Up
          5. Menus Action
          6. Boîtes de combinaison
          7. Contrôles de chemin
          8. Puits, sélection de date
          9. Menus pop-down
          10. Glissières
          11. Contrôles pas-à-pas et placards
        4. Indicateurs
          1. Indicateurs de progression
          2. De niveau, de capacité
          3. D'estimation, de pertinence
        5. Contrôles de texte
          1. Champs d'entrée
          2. Champs à jeton
          3. Champs de recherche
          4. Listes de défilement
        6. Contrôles de visualisation
          1. Triangles d'affichage
          2. Boutons d'affichage
          3. Vues en liste
          4. Vues en colonnes
          5. Vues éclatées
          6. Vues à onglets
        7. Contrôles de groupage
          1. Séparateurs
          2. Boîtes de groupage
        8. Règles de disposition
          1. Dans le corps de la fenêtre
            1. Fenêtre de préférences
            2. Fenêtre à onglets
            3. Alerte, Dialogue
          2. Contrôles réduits et mini
            1. Contrôles réduits
            2. Mini contrôles
          3. Groupement des contrôles
          4. Positionnement dans la barre inférieure
      11. Glossaire
        1. Entrées en anglais
          1. 1- A à C
          2. 2- D à H
          3. 3- I à R
          4. 4- S à Z
        2. Entrées en français
          1. 1- A à C
          2. 2- C à G
          3. 3- I à P
          4. 4- P à Z
        3. `
    4. 4- Les leçons de Lion
      1. L'environnement de Mac OS X
      2. Principes fondamentaux
      3. L'expérience utilisateur
        1. Règles de conduite (1)
        2. Règles de conduite (2)
        3. Règles de conduite (3)
        4. Règles de conduite (4)
        5. Règles de conduite (5)
        6. Règles de conduite (6)
      4. Les technologies d'Apple
        1. Les technologies (1)
      5. -->
  2. Mode Commande

Règles de conduite pour l'expérience utilisateur (2)




5- Permettez à l'utilisateur de passer en plein écran (si c'est justifié).

Le support pour des fenêtre plein écran introduit dans Mac OS X 10.7 emmène les utilisateurs plus loin dans un environnement sans distraction, qui leur permet de se concentrer sur une tâche. Suivez les recommandations de cette section pour être sûr que votre application permet un affichage plein écran.

Décider si une fenêtre plein écran est adaptée. Les fenêtres plein écran aident les utilisateurs à se concentrer sur une tâche ; elles ne sont donc pas très utiles quand les utilisateurs ne passent pas beaucoup de temps dans une application, comme avec le Carnet d'adresses ou la Calculette. Commencez par déterminer pourquoi un utilisateur peut apprécier une application plein-écran : par exemple, pour un environnement privé de distraction pour des média ou pour se concentrer sur une tâche créative. Puis, identifiez les outils que la tâche réclame, et rendez-les disponibles sur la fenêtre plein écran. Si certains de ces outils sont dans une fenêtre auxiliaire, définissez cette fenêtre comme auxiliaire (avec la constante NSWindowCollectionBehaviorFullScreenAuxiliary), pour qu'elle puisse être ouverte dans le même espace que la fenêtre plein écran. Ou bien, rendez ces outils disponibles dans l'IU de la fenêtre plein écran au lieu d'utiliser une fenêtre auxiliaire.

Afficher la barre d'outils si la tâche plein écran l'exige. Quand une fenêtre passe en plein écran, elle peut afficher la barre d'outils, ou la barre de menu quand le curseur atteint le haut de l'écran, mais une fenêtre plein écran n'affiche jamais sa barre de titre. Si la tâche dont ont besoin les utilisateurs relève d'une fonctionnalité affichée dans la barre d'outils, il est logique d'afficher celle-ci. Par exemple, la fenêtre plein écran de iCal affiche la barre d'outils. Mais une fenêtre plein écran d'Aperçu n'a pas à afficher la barre d'outils, parce que l'utilisateur est susceptible de se concentrer plus sur la lecture du contenu que sur son annotation ou sa sélection. L'accès au menu permet cependant d'afficher la barre d'outils (<Aperçu<Présentation<Afficher la barre d'outils).

Evitez d'obliger les utilisateurs à utiliser le Finder quand ils sont en mode plein écran. L'ouverture d'une fenêtre du Finder entraîne la sortie du mode plein écran. Fournissez un autre moyen comme une liste de source ou un dialogue d'ouverture personnalisé.

Tirez parti de l'espace plus grand, mais gardez la tâche principale comme centre d'intérêt. Quand elle passe en plein écran, une fenêtre s'agrandit généralement plus en largeur qu'en hauteur. On peut ajuster les proportions de l'interface utilisateur pour que la fenêtre s'adapte mieux à l'espace disponible, et privilégie les zones de l'interface utilisateur qui sont essentielles pour la tâches principale.

En même temps, il ne faut pas déformer la vision de la fenêtre au point où les utilisateurs sont incapables de la reconnaître. Les utilisateurs doivent rester focalisés sur leur tâche, même si la fenêtre est plus grande, et avec un aspect un peu altéré. Par exemple, la fenêtre de Photo Booth acquiert en plein écran des éléments décoratifs, mais les utilisateurs ne perdent jamais la vue qu'ils ont d'eux-mêmes. Les draperies rouges qui accompagnent Photo Booth en plein écran figurent aussi sur l'icône de l'application pour que les utilisateurs les associe plus facilement avec l'application.

Ne modifiez pas la gestuelle propre au système quand une fenêtre est en plein écran. Même si l'application occupe toute l'attention, les utilisateurs doivent pouvoir afficher Mission Control et passer d'un bureau à l'autre ou à des fenêtres plein écran. Cela s'applique aux jeux autant qu'aux autres types d'applications : dans un jeu, les gestes réservés au système sont un moyen (le bouton du patron) pour cacher rapidement le jeu.

Répondre de façon appropriée quand les utilisateurs quittent le mode plein écran. Par exemple, un jeu peut s'arrêter pour que l'utilisateur ne manque pas des évènements importants du jeu ; ou bien, un diaporama peut faire une pause quand les utilisateurs quittent le mode plein écran. Il faut aussi laisser à l'utilisateur la décision de quitter le mode plein écran ; dans ce cas, les fenêtres plein écran ne doivent pas être interrompues.

D'une façon générale, n'empêchez pas les utilisateurs d'afficher le Dock. Le plein accès au Dock doit être possible même en mode plein écran pour permettre d'ouvrir d'autres applications ou de nouvelles piles de vues. Il y a une exception pour les jeux où un utilisateur doit être capable de placer le curseur tout en bas de l'écran sans afficher le Dock.


6- Gérez la gestuelle de façon appropriée.

Le trackpad est un autre moyen que la souris pour déplacer le pointeur et activer des éléments de l'interface utilisateur. Mac OS X 10.7 prend en compte de nouveaux gestes muti-touch qui permettent d'afficher Mission Control, ou de changer de fenêtre plein écran ou de bureau, et de revenir à la page précédente d'une application. Les utilisateurs doivent pouvoir utiliser ces gestes familiers partout dans le système et les applications qu'ils ont téléchargées. Voici les recommandations à suivre :

Faites attention à la signification du geste, pas aux mouvements faits par l'utilisateur. Autrement dit, au lieu de répondre à un glissement à trois doigts, préparez-vous à répondre au geste "aller à la page précédente". Les utilisateurs peuvent aussi changer les mouvements correspondants aux actions du système, si bien que l'application doit pouvoir lister les gestes acceptés par le système.

Autant que possible, répondez au gestes de façon cohérente avec les autres applications de la plateforme. Pour l'essentiel, les utilisateurs s'attendent à ce que les mêmes gestes fonctionnent avec toutes les applications qu'ils utilisent. Par exemple, le geste "revenir en arrière" doit s'appliquer que l'application affiche le contenu de pages de documents, celui de pages web, ou des images.

Il faut éviter de redéfinir des gestes applicables au système et des gestes inter-applications, comme l'affichage de Mission Control, ou les passage à des Espaces (Spaces) ou à des bureaux ; les utilisateurs peuvent cependant modifier les gestes à faire pour cela dans les préférences du Trackpad. Même dans les jeux, avec des gestes personnalisé spécifiques à l'application, les utilisateurs s'attendent à pouvoir afficher Mission Control, ou à passer à un autre bureau ou à une autre fenêtre plein écran.

Gérez les gestes de façon aussi réactive que possible. Les gestes doivent fournir une sensation de manipulation directe et fournir une réponse immédiate. Pour cela, veillez à faire des opérations élémentaires et non coûteuses pendant le temps que dure le geste.

Les gestes doivent s'appliquer aux éléments de l'IU de niveau approprié. En général, les gestes sont plus efficaces quand ils visent un objet spécifique ou une vue dans une fenêtre, qui est le centre d'attention de l'utilisateur. Commencez par identifier les objets ou les vues les plus spécifiques que l'utilisateur est susceptible de manipuler. Ne rendez un objet de haut niveau la cible d'un geste que quand cela a un sens pour l'application.

Ne créez des gestes personnalisés qu'avec précaution. Un geste personnalisé peut être difficile pour l'utilisateur à découvrir ou à mémoriser. Si un geste personnalisé semble gratuit ou difficile à faire, les utilisateurs vont l'éviter. Si vous croyez devoir créer un geste personnalisé, assurez-vous qu'il est facile à accomplir, et pas trop proche des gestes que les utilisateurs connaissent déjà.

Evitez de compter sur un geste particulier comme seule façon de lancer une action. Vous ne pouvez pas assumer que tous les utilisateurs disposent d'un trackpad ou veulent l'utiliser. De plus, les utilisateurs de trackpad peuvent supprimer certains gestes ou modifier leur signification dans les <Préférences système<Trackpad.


7- Captivez avec des graphiques attirants.

Des graphiques de haute qualité améliorent l'aspect de l'application, et fournissent aussi une information aux utilisateurs en enrichissant l'expérience d'ensemble. Les utilisateurs de Macs s'attendent à des graphiques beausx et significatifs et attendent de l'application le même niveau de qualité.

Assurez-vous que vos graphiques ont une qualité professionnelle. L'impact de graphiques de haute qualité ne doit pas être sous-estimé. Les gens en voient autour d'eux plus que jamais, et peuvent discerner les différences. Des graphiques pauvres donnent une mauvaise impression et affectent l'appréciation générale de qualité de l'application. Rendez prioritaire la qualité de vos graphiques au stade de la conception et du développement.

Veillez à ce qu'ils se présentent bien en plein écran. Si vous permettes à votre application de passer en plein écran, ne vous contentez pas de mettre vos graphiques à l'échelle. D'une façon générale, commencez par le graphique le plus grand dont vous aurez besoin, et réduisez-en l'échelle.

Si cela se justifie, songez à mimer le monde réel. Dans certains cas, des structures du monde réel comme le bois, le cuir, le métal ou le papier peuvent améliorer le ressenti d'une application et lui donner plus de signification. Assurez-vous que la structure proposée :
• est authentique et expressive et se présente bien quelle que soit la résolution.
• s'harmonise avec l'aspect général de l'application, et ne semble pas rapportée après-coup.
• améliore la compréhension et le ressenti de l'utilisateur.

Soignez la première impression avec une belle icône. L'icône de l'application est la première chose que voit l'utilisateur, et il peut influer sur ses attentes. Considérez cette icône comme votre carte de visite, et passez le temps nécessaire pour vous assurer qu'elle fait bonne impression. Par exemple, c'est une belle guitare que représente Garage Band.

Si nécessaire, créez des icônes de contrôles expressifs et non ambigus. Mac OS X fournit de nombreuses icônes qui peuvent être utilisées comme contrôles pour des actions standard comme le déverrouillage d'un objet, ou l'arrêt d'un processus en cours.Utilisez autant que possible ces icônes standards, parce que les utilisateurs savent déjà ce qu'ils signifient. Si vous avez besoin d'icônes pour une action qui n'a pas d'icône standard, il faut créer une icône personnalisée qui parle aux utilisateurs.

Soyez prêts pour la haute résolution. Mac OS X 10.7 permet la haute résolution. Pour en profiter, il faut utiliser les APIs correspondantes , et au besoin, fournir des versions haute résolution des graphiques. Voir les consignes sur l'indépendance à la résolution.


8- Soyez réactifs.

La réactivité permet à l'utilisateur de mesurer la performance de votre logiciel. Votre application doit utiliser les meilleurs algorithmes de gestion de données et les techniques d'amélioration de performance, mais si elle ne répond pas instantanément à l'utilisateur, elle paraîtra lente. Au cours du développement, portez l'attention sur les facteurs qui influencent à la fois les perceptions de l'utilisateur, et la réponse réelle, mesurable que fournit l'application.

Répondez immédiatement aux commandes et aux entrées de l'utilisateur. A chaque fois qu'ils interagissent avec votre application, les utilisateurs s'attendent à recevoir une réponse appropriée. Par exemple, les boutons s'éclairent quand on clique dessus, et le pointeur change d'aspect quand l'utilisateur passe sur des contrôles ou des zones de l'application. Si une commande ne peut pas être accomplie, les utilisateurs veulent savoir pourquoi, et que faire. Plus vous répondez rapidement aux actions de l'utilisateur, et plus votre application semblera réactive.

N'attendez pas qu'une tâche longue se termine pour afficher une réponse à l'utilisateur. Si vous n'affichez rien avant la terminaison de la tâche, les utilisateurs vont interpréter cela comme de la lenteur. Affichez des résultats partiaux dès que possible après le lancement de la tâche, pour fournir quelque chose à voir en attendant que la tâche se termine.

Utilisez un indicateur de progression, pour aider les utilisateurs à évaluer combien de temps prendra le processus. Ils n'ont pas toujours besoin de connaître la longueur précise de la tâche, mais il est important de leur fournir une estimation. Par exemple, vous pouvez utiliser un indicateur de progression au besoin combiné avec une information comme "il reste environ une minute", ou "copie de 30 parmi 850 fichiers", comme l'indication que fournit le Finder lors d'une copie

figure

Respectez les meilleures pratiques de performance. Par exemple, évitez de demander des informations ou d'interroger des événements, de chargez des ressources inutilement, limitez les accès disque, et éliminez les opérations d'entrées-sorties inutiles

Utilisez des mesures et des outils pour améliorer la réponse de l'application au cours du développement. Faites des mesures, pas des suppositions, pour quantifier les performances de l'application que vous cherchez à améliorer. Utilisez par exemple Instruments (qui fait partie de XCode) pour vous aider à identifier et à corriger les problèmes de performance de votre code.