Meta publie un long article qui revient sur dix ans d’évolution de l’application Facebook destinée aux iPhone et iPad. C’est la plus ancienne application mobile au sein de l’entreprise et l’un des plus gros projets, puisque des milliers de développeurs ont travaillé dessus et des centaines continuent à la faire évoluer en permanence. Un projet hors norme qui a nécessité un gros travail sur son architecture, avec plusieurs changements majeurs ces dix dernières années.
L’application Facebook est plus ancienne, elle date en réalité des débuts de l’App Store avec une première version publiée dès 2008. Néanmoins, elle n’était au départ qu’une version mobile du site web, « encapsulée » dans une fine couche d’interface native. En 2012, le réseau social avait décidé de la réécrire de zéro pour en faire une application native, un changement majeur qui a apporté un confort d’utilisation pour les utilisateurs et permis aux développeurs d’ajouter de nombreuses fonctions. C’est d’ailleurs ce dernier argument qui a provoqué les différentes itérations d’architecture qui nous intéressent aujourd’hui.
En dix ans, l’application a en effet gagné de multiples fonctionnalités, ce qui se voit à son poids : alors qu’elle ne pesait qu’une dizaine de mégaoctets en 2012, il faut désormais autour de 310 Mo pour installer Facebook sur un appareil iOS. Trente fois plus en dix ans, ce n’est pas rien et c’est un phénomène bien connu qui ne date pas d’hier. Cet article de 2017, par exemple, se plaignait déjà de l’augmentation qui semblait alors exponentielle et sans fin du poids des plus grosses applications pour iOS, dont celle de Meta.
Les apps les plus populaires ont un problème d'obésité
À l’époque, Facebook était la plus lourde du lot, avec 338 Mo sur la balance. Côté pile, on peut noter que l’augmentation n’a pas continué sans arrêt au fil des années, puisque l’application s’est stabilisée légèrement au-dessus des 300 Mo. Côté face, l’application du plus grand réseau social au monde n’a jamais fait de diète, ni sur les fonctionnalités proposées ni sur le poids total, les deux étant liés comme le reconnait Dustin Shahidehpour, ingénieur de l’équipe dédiée à l’architecture mobile chez Meta. Il travaille au sein de l’entreprise depuis 2014 et c’est lui qui a signé l’article du jour, où il admet sans détour que l’ajout constant de fonctions est directement responsable de la prise de poids de l’app.