Ouvrir le menu principal

MacGeneration

Recherche

UXKit, la surprise cachée de Photos

Nicolas Furno

vendredi 06 février 2015 à 19:00 • 16

macOS

La nouvelle bêta d’OS X Yosemite sortie hier soir est pleine de surprises. Cette nouvelle version ne contient pas beaucoup de nouveautés au niveau du système, mais elle embarque la toute première version de Photos, le nouveau gestionnaire d’images d’Apple. On a déjà eu l’occasion d’évoquer les nouveautés de ce logiciel pour l’utilisateur, mais ce n’est que la partie émergée de l’iceberg. Sous la surface, la nouveauté la plus importante est UXKit, un nouveau framework qui permet à Apple de réutiliser des éléments d’interface d’iOS dans ce logiciel OS X.

Pour le moment, UXKit n’est pas disponible pour les développeurs tiers et seul Apple l’utilise, uniquement dans Photos. Mais il semble évident que c’est une situation intermédiaire et que le constructeur ouvrira ce nouveau composant pour tout le monde. Il faudra probablement attendre OS X 10.11 qui sera a priori annoncé lors du WWDC de juin et qui devrait sortir à l’automne. En attendant d’en savoir plus, les développeurs qui ont installé la bêta peuvent jouer avec UXKit et créer des applications qui exploitent le nouveau framework, par exemple en utilisant ce projet Xcode prêt à l’emploi.

Une liste créée avec UXKit (image @Dmillian)

Avant de parler des nouveautés, il est important de rappeler que les développeurs conçoivent jusque-là leurs interfaces avec deux frameworks assez différents. Côté iOS, ils ont à leur disposition UIKit alors que sur le Mac, AppKit est à la manœuvre. Deux composants différents, avec des logiques différentes, ce qui complique la transition de l’un à l’autre : il faut le plus souvent repartir de zéro et on ne peut pas exploiter le code existant, du moins pas sans des modifications parfois importantes. Avec UXKit, Apple travaille sur un nouveau framework qui rapproche les deux plateformes.

Thomas Ricouard, principal développeur iOS de Glose, service de lecture avec une dimension sociale qui est présent sur l’App Store, a essayé UXKit et il ne cache pas son enthousiasme. Même si ce framework est encore loin d’être finalisé — il n’est même pas censé être utilisé par les développeurs, de toute manière — et même s’il manque encore plusieurs éléments pour qu’il puisse servir à des interfaces complètes, il est très prometteur selon lui.

L’ambition de UXKit est manifestement de simplifier au maximum la transition d’iOS à OS X. En théorie, explique Thomas, il suffit de remplacer tous les « UI » par des « UX » et on aura une application Mac fonctionnelle. C’est encore théorique, puisque le framework n’est pas finalisé et qu’il lui manque bon nombre d’éléments utilisés sur iOS, mais dans l’esprit, c’est aussi simple que cela. La raison est simple : les composants ont souvent les mêmes noms, excepté le préfixe qui change en fonction de la plateforme.

Si vous voulez créer une liste sur iOS, vous utilisez une classe nommée UITableView ; avec UXKit, vous pourrez utiliser la classe UXTableView. Le code est le même des deux côtés et le résultat est très similaire, comme le montre cet exemple que nous a envoyé Thomas Ricouard. On retrouve les mêmes animations et on retrouve les mêmes interactions au trackpad, par exemple ici pour passer d’un écran à l’autre.

À condition qu’Apple ait bien l’intention de proposer UXKit à tous les développeurs avec son prochain système d’exploitation (ou avant, mais cela semble moins probable), on devrait ainsi voir de plus en plus d’applications passer des appareils mobiles au Mac, ou réciproquement. L’investissement nécessaire étant moindre, les développeurs feront probablement plus facilement la transition. Pour prendre un exemple, un logiciel comme Reeder adopte déjà de nombreux éléments d’iOS, mais c’est parce que son développeur a tout refait lui-même. On peut penser qu’avec ce nouveau framework, il aurait pu faire la même chose avec beaucoup moins de travail.

Au-delà des applications multi-plateformes, passer d’AppKit à UXKit pourrait avoir des avantages pour les développeurs. Le framework actuellement utilisé est ancien (à l’échelle de l’informatique, naturellement) et il n’a pas bénéficié du travail de simplification mené pour iOS. En optant pour des composants proches de ceux du système mobile d’Apple, le développement de logiciels OS X pourrait ainsi être simplifié. Un exemple noté par plusieurs développeurs, on peut définir très simplement une couleur principale qui sera appliquée en divers points de l’interface, par exemple pour des titres. Avec AppKit, il y a beaucoup plus de travail pour obtenir le même résultat.

AppKit va-t-il pour autant disparaître ? Difficile de répondre à cette question, sachant que UXKit n’est à ce jour qu’un framework privé que seul Apple peut utiliser et que l’on ne sait même pas s’il sera un jour rendu public. Reste qu’il a nécessité beaucoup de travail et qu’on voit mal l’entreprise n’avoir entrepris tout ce travail que pour Photos. Peut-être qu’une partie des logiciels de base du successeur de Yosemite seront créés avec UXKit et peut-être que ce sera tout, mais on peut aussi se dire que ce travail d’adaptation a aussi été conçu en pensant aux développeurs tiers.

Du code exploitant UXKit

Tous les développeurs ne sont pas aussi enthousiastes sur UXKit toutefois. Brent Simmons, développeur qui travaille actuellement sur le gestionnaire de notes Vesper et sur OmniFocus, a ainsi publié un article sur son blog où il fait preuve de son scepticisme. Selon lui, AppKit est trop utilisé pour qu’Apple l’abandonne et surtout, il contient trop de fonctions spécifiques au Mac qui sont absentes du nouveau framework.

Il ajoute que si UXKit devait sortir de son cadre actuel — un framework privé réservé à Apple —, ce serait plutôt pour offrir un complément minimal aux développeurs iOS qui souhaiteraient porter leurs apps sur Mac. Il ne s’agirait pas de remplacer complètement AppKit, mais plutôt d’offrir les fonctions de base nécessaires pour faire une petite application. Mais dans ce cas, AppKit pourrait largement suffire, précise le développeur et dans ces conditions, à quoi bon compliquer l’offre en maintenant deux frameworks différents ?

On pourrait lui rétorquer que Photos n’est pas un petit logiciel alors qu’il exploite déjà UXKIt. Il paraît évident que, si Apple sortait ce nouveau framework, ce ne serait pas pour arrêter AppKit immédiatement. Mais il ne semble pas non plus impensable que les deux framework coexistent le temps que le nouveau venu s’enrichisse au fil du temps et qu’à terme, UXKit remplace AppKit.

De la même manière que, si tout va bien, Swift devrait remplacer un jour Objective-C, mais qu’en attendant les deux langages coexistent. D’ailleurs, Photos a été entièrement codé en Objective-C, la preuve que ce langage n’a pas dit son dernier mot, même si Swift est le futur.

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

Elon Musk annonce une démonstration d’ici la fin de l’année du Tesla Roadster... volant ?

11:00

• 19


Les promos Apple s’emballent : iPhone et iPad (Pro) et Apple Watch Ultra 2 à prix cassés

09:03

• 20


Fin de Windows 10 : notre nouvelle série sur le Club iGen pour surmonter cette épreuve

08:05

• 12


Fin de Windows 10 : une transition vers Windows 11 qui vire au fiasco

08:00

• 18


Tests, série, analyses… Les articles du Club iGen publiés en octobre

01/11/2025 à 15:00

• 3


Sortie de veille : comment Apple bat de nouveaux records financiers

01/11/2025 à 08:00

• 18


Sam Altman, frustré, annule sa commande de Tesla Roadster et se prend un mur

31/10/2025 à 21:00

• 133


Votre iPhone 18 Pro, vous le prendrez plutôt café, violet ou bordeaux ?

31/10/2025 à 17:13

• 57


Cette extension pour Chrome reprend une idée populaire d’Arc pour changer d’onglet

31/10/2025 à 15:20

• 7


Le gouvernement américain voudrait bannir TP-Link pour des raisons de sécurité nationale

31/10/2025 à 11:30

• 26


Le Black Friday a déjà commencé chez Boulanger, qui autorise les retours jusqu’au 31 janvier

31/10/2025 à 10:31

• 5


Attention aux tentatives d'arnaques en lien avec les données volées à Bouygues Telecom

31/10/2025 à 10:19

• 38


iOS 26.1, nouveau matériel : que nous réserve le mois de novembre d’Apple ?

31/10/2025 à 10:01

• 33


Bon plan : le MacBook Air M4 avec 24 Go de RAM et SSD 512 Go à 1 347 €

31/10/2025 à 08:44

• 12


iPhone 17 : un succès au-delà des attentes

31/10/2025 à 08:10

• 56


WhatsApp va bientôt débarquer sur l'Apple Watch

31/10/2025 à 07:35

• 45