Apple double chaque année son utilisation de Swift dans iOS

Author:

Comme il le fait chaque année depuis iOS 10, le développeur Timac a publié son analyse de l’utilisation de Swift par Apple dans iOS 14. Et comme en 2017, en 2018 et encore en 2019, la tendance reste la même : Apple utilise de plus en plus Swift pour ses propres besoins et le nombre de frameworks qui exploitent le langage de développement a encore doublé dans iOS 14.

Graphique conçu par Timac.

Ce développeur a compté 351 binaires et frameworks qui utilisent du Swift. Comme il l’indique lui-même, cela ne veut pas dire qu’ils sont entièrement codés en Swift, les sources d’iOS n’étant pas publiques, on ne peut pas le savoir. Ce qu’il peut mesurer, c’est que toutes ces apps ou briques utilisées par le système reposent sur au moins une ligne de Swift, avec un complément éventuel d’Objective-C.

Malgré tout, c’est plus de deux fois plus que l’an dernier, avec 146 binaires et frameworks basés sur Swift dans iOS 13.1. C’est une progression constante depuis iOS 11 et qui montre qu’Apple s’investit toujours davantage dans le successeur d’Objective-C. Maintenant que le langage a été stabilisé au niveau du code source, des ABI et des modules, les développeurs peuvent l’exploiter dans davantage de projets, notamment bas niveau. L’entreprise utilise en général exclusivement Swift pour toutes les nouveautés, ce qui participe inévitablement à son expansion.

Timac a aussi observé les progrès de SwiftUI, la nouvelle méthode d’Apple pour créer des interfaces. Présentée l’an dernier, elle n’était utilisée que dans cinq binaires et frameworks sous iOS 13. Cette année, on sent que la solution a gagné en maturité puisqu’elle sert dans 43 éléments. Une partie est liée aux nouveaux widgets qui doivent être codés en SwiftUI, y compris pour ceux d’Apple. Mais on en retrouve aussi des traces dans l’app Téléphone, dans l’écran verrouillé d’iOS 14, dans l’app Raccourcis ou encore dans le nouveau Game Center.

Leave a Reply

Your email address will not be published. Required fields are marked *