Etendre l'interface
Comment étendre l'interface quand l'application réclame un comportement qui n'a pas été prévu. Si cela peut être accompli à l'aide d'éléments standard, définissez les contrôles correspondants en respectant les règles de l'interface graphique d'Apple. Ce qui suit permet de terminer s'il est opportun d'aller au delà, et comment utiliser les éléments de l'interface pour construire de nouveaux éléments, et ce qu'il faut éviter.
Les gens s'appuient sur l'interface utilisateur de Mac OS X pour une expérience utilisateur régulière et prévisible. Ne copiez pas des éléments ou des comportements d'autres plateformes, parce qu'ils peuvent introduire la confusion chez les utilisateurs qui n'en sont pas familiers.
Si vous avez besoin d'étendre l'interface de Mac OS X, la meilleure façon est de commencer à l'aide du langage visuel et comportemental déjà défini. Réfléchissez à ce que l'aspect signifie pour les gens, et comment ils s'attendent à ce que les éléments se comportent.
Des signaux visuels, comme la flèche d'un menu pop-up aident à reconnaître des éléments familiers. Les gens apprennent à associer les éléments spécifiques d'après leur aspect. Par exemple, on reconnait les boutons à pousser à forme ronde, et on utilise l'étiquette pour connaître l'action que le bouton exécute. Cet aspect particulier différencie un bouton poussoir de tous les autres éléments.Quand on clique sur un bouton, on s'attend à ce qu'il s'éclaire pour indiquer que l'action s'est accomplie et à ce que l'action soit immédiate. Les gens peuvent aussi s'attendre à ce qu'un bouton puisse avoir des comportements supplémentaires, comme quitter un dialogue, ou changer le contenu du document actif.
Utilisez les blocs de l'interface standard de façon standard. N'en changez pas le comportement. Si vous avez besoin d'un comportement nouveau, créez un nouvel élément. Si les éléments se comportent différemment dans des situations différentes, l'interface devient imprévisible, et difficile à maîtriser. Cela peut affecter la confiance que les utilisateurs ont de l'application.
Soyez très prudent en créant de nouveaux éléments, parce que vous pouvez introduire une complexité inutile. Il est très difficile de s'assurer que de nouveaux éléments s'adaptent bien à ceux fournis par Cocoa et Carbon. Et comme l'interface utilisateur de Cocoa continue à évoluer, vos nouveaux éléments devront être adaptés aux changements de Cocoa.
Assurez vous donc, avant de créer de nouveaux éléments d'interface, que les éléments existants, ou une combinaison de ceux-ci, ne suffisent pas à obtenir le résultat voulu. Le test d'usage est essentiel pour déterminer si ces nouveaux éléments fonctionnent.
La conclusion de ces recommandations, est qu'il vaut mieux éviter d'enrichir l'interface utilisateur, et compter sur ce qui existe. Pourtant, Apple ne s'est pas privé de le faire, en rajoutant dans ses applications des éléments nouveaux, au comportement parfois étonnant. Prenez le nouveau QuickTime Player, par exemple, avec sa barre d'outils, certes simple à comprendre, mais assez différente de ce à quoi les utilisateurs étaient habitués.
Une barre d'outils qui s'impose sur l'image, puis heureusement disparaît !
Le gros problème, c'est que cette barre d'outils, qui est censée contrôler le déroulement de la vidéo est éphémère, ou se superpose à l'image : deux situations tout à fait contradictoires avec l'objet de QuickTime. A quoi ont pensé les ingénieurs d'Apple en imaginant une situation aussi grotesque : ou vous contrôlez l'image mais vous la polluez, ou vous pouvez voir toute l'image, mais vous ne pouvez pas la contrôler... C'est proprement idiot !
Car mon modèle mental, pour utiliser Quick Time est de voir l'image sans aucune gène, et d'en contrôler le défilement de façon séparée. Mélanger les deux fonctions en les superposant, comme le fait Apple est proprement absurde, et complètement opposé au modèle mental d'un esprit normalement constitué.
La version de 2001 de AHIG (Aqua Human Interface Guidelines) n'évoque pas les extensions de l'interface, ni le sujet qui va suivre, et passe directement à la description de l'interface Aqua qui fait l'objet de la troisième partie de AHIG (Apple Human Interface Guidelines) que nous sommes en train de passer en revue. Une différence de titre qu'on peut considérer comme significative : Aqua serait-elle condamnée en tant qu'interface graphique ?