1. Particularités
    1. Un système Unix BSD
    2. Un noyau Mach
    3. Interface graphique
      1. Le moteur graphique
      2. Aqua
    4. Apple, mode d'emploi
  2. Installation
    1. Les mauvais choix d'Apple
    2. Mes vœux pour 2011...
    3. Préliminaires
      1. Stratégies de mots de passe
      2. Stratégies de disques
      3. Partitionner un disque externe
      4. Cloner Macintosh HD
      5. Partitionner le disque interne
    4. Versions du système
      1. 10.0 : Cheeta
      2. 10.1 : Puma
      3. 10.2 : Jaguar
      4. 10.3 : Panther
      5. 10.4 : Tiger
      6. 10.5 : Léopard
      7. 10.6 : Snow Léopard
        1. Mon installation
        2. Premières impressions
        3. Un Dock sinistre
        4. Cafouillages
      8. 10.7 : Lion
        1. Premières réactions (1)
        2. Premières réactions (2)
        3. Réinstallation de Lion
        4. Nouvelles réactions sur Lion (3)
        5. XCode 4
        6. Les mensonges de Lion
        7. Les pièges de Lion
        8. Débuter avec Lion
        9. Conserver Lion
        10. Installer Lion
        11. Les mystères de la restauration
    5. Installer le système
      1. Faire une nouvelle installation
        1. Réinstaller SnowLéopard
        2. Réinstaller Leopard
        3. Réinstaller Tiger
        4. Cloner le système
        5. L'assistant migration
      2. Personnaliser
        1. Compléments d'Apple
        2. Les must d'Internet
        3. Configurer Media
        4. Créez les comptes utilisateurs
        5. Ré-installez vos données
  3. Eléments de Mac OS X
    1. Le bureau
      1. Ouverture d'une session
      2. Pas de fond d'écran
      3. Rien sur le bureau
      4. Bien disposer le Dock
      5. La fenêtre du Mac
      6. Le menu du Mac
      7. Le clavier du Mac
      8. Les raccourcis clavier
      9. Les services
      10. Capture d'écran
      11. Spaces
    2. Le Finder
      1. Système de fichiers
      2. Les permissions
      3. ZFS c'est fini...
      4. ZFS sans Apple
        1. Retour sur les systèmes de fichiers
        2. Les insuffisances de HFS+
        3. Les atouts de ZFS
        4. macZFS
          1. Devenez root
          2. Préparez le travail
          3. Installez maczfs
      5. Les présentations
      6. Réglages du Finder
      7. Les problèmes du Finder
      8. Le Finder Spatial
      9. Un autre Finder ?
      10. Spotlight
      11. URLs de fichiers
    3. Les outils
      1. Gestion des couleurs
      2. Gestion du texte
      3. Les dictionnaires
      4. Exposé
      5. Dashboard
      6. Configuration audio
      7. La console
      8. Le terminal
      9. Trousseau d'accès
      10. Utilitaire de disques
  4. Les applications
    1. Aperçu
      1. Mode graphique
        1. La barre d'outils
        2. Les sélections
        3. Réglages de couleurs
        4. Pot pourri graphique
      2. Mode PDF
        1. Copier/coller
        2. Les annotations
        3. Pot pourri PDF
    2. Mail
  5. Sauvegardez...
    1. Formes de sauvegarde
    2. Que sauvegarder ?
    3. Outils de sauvegarde
      1. Time Machine
      2. CCC
      3. SuperDuper
    4. Le système
    5. Les données utilisateurs
    6. La médiathèque

L'interface graphique d'Apple



Résumé : L'interface graphique du Mac utilise utilise une collection d'objets graphiques organisée en couches successives de frameworks.

Depuis la sortie du Lisa (1983) une interface graphique est indispensable à un système informatique ; l'interface graphique ne se contente pas d'afficher des choses sur un écran graphique ; elle doit aussi gérer toutes les réactions de l'utilisateur : frappes au clavier, déplacements et clics de souris, choix d'options et clic de boutons sur l'écran. Ces contraintes ont entraîné une profonde modification des techniques de développement, la programmation par événements. L'ordinateur passe son temps à surveiller les périphériques (écran, souris, clavier), et stocke en temps réel les interventions de l'utilisateur dans une queue d'événements. Il utilise ensuite cette queue d'événements pour exécuter les opérations qui ont été demandées. L'utilisateur doit avoir l'impression que ces choses là sont simultanées.

La complexité entraînée par l'interface utilisateur graphique a absorbé depuis 25 ans la majeure partie des progrès en puissance des micro-processeurs. Grâce à ces progrès, les choses sont devenues plus fluides, les images plus belles, mais fondamentalement, cela n'a pas beaucoup changé : le travail repose sur un ensemble de couches logicielles superposées, qui communiquent entre elles : à la base, les couches qui gèrent le matériel, et au sommet, les couches qui intéressent les applications, et l'utilisateur.
Couches logiciellesgraphiques 

Apple a cependant progressivement raffiné les choses :

A la base, deux technologies du domaine public :
OpenGL (Graphics Library) est une bibliothèque de fonctions graphiques 3D, développée par Silicon Graphics.
OpenCL (Computing Language) a été proposé par Apple pour mieux utiliser les CPU multicœurs et les GPUs. C'est un ensemble d'APIs utilisant le langage C.

Au niveau intermédiaire se trouve une collection de frameworks pour le dessin (Core Graphics), le traitement des images (Core Image), l'animation de celles-ci (Core Animation) et la Vidéo (Core Video) ; Quartz Composer y ajoute la composition des couleurs.

Fonctions graphiques 

Au niveau supérieur, tout repose sur l'AppKit : un ensemble de frameworks qui définissent l'interface utilisateur, la gestion des fontes et des couleurs, certains services du système (impression, parole, aide, presse-papier), et finalement les graphiques (voir à gauche) ; des frameworks spécialisés (imageKit, PDFKit, WebKit) s'y ajoutent. L'essentiel est constitué par les APIs de l'interface utilisateur, qui sont représentées ci-dessous.

Interface utilisateur 


Si vous y regardez bien, vous pourrez découvrir dans ce tableau tout ce qui fait votre quotidien sur le Mac : les fenêtres (NS Window), les menus (NSMenu), les boutons à cliquer (NSButton), des morceaux de texte (NSTextView), mais aussi plein d'autres choses plus complexes. Tous ces éléments représentent des objets, le plus souvent graphiques, dans un environnement de Programmation Orientée Objet ; chaque objet se caractérise par son état (un ensemble d'attributs), et son comportement (ce qu'il peut comprendre et ce qu'il sait faire) ; c'est au programmeur de les connaître et de les utiliser à bon escient. Le préfixe NS de tous ces objets est un héritage de NeXTSTEP.

Source des images de cette page : documentation Apple.