Applications mobiles portables et de haute qualité : du prototype à la ligne de produits par le raffinement de classes et la programmation polyglotte

Laferrière, Alexis (2018). « Applications mobiles portables et de haute qualité : du prototype à la ligne de produits par le raffinement de classes et la programmation polyglotte » Thèse. Montréal (Québec, Canada), Université du Québec à Montréal, Doctorat en informatique.

Fichier(s) associé(s) à ce document :
[img]
Prévisualisation
PDF
Télécharger (15MB)

Résumé

Les appareils mobiles sont une plateforme populaire pour le développement de nouvelles applications. Toutefois, le développement d'applications mobiles est entravé par la division du marché entre Android et iOS, ainsi que par la fragmentation à l'intérieur même des plateformes qui empêchent une même application de fonctionner sur tous les appareils mobiles. L'industrie et le milieu scientifique proposent quelques solutions pour réaliser des applications portables. Par contre, aucune ne donne un accès entier, simple et sûr aux fonctionnalités propres à chaque plateforme. Cette thèse introduit une nouvelle solution pour réaliser des applications portables et pour les adapter à Android et à iOS. Notre solution combine trois approches. (i) Des API portables servent à réaliser un prototype rapidement. (ii) Une organisation en ligne de produits, réalisée par le raffinement de classes, permet une évolution graduelle du prototype en deux applications adaptées à Android et à iOS. (iii) La programmation polyglotte, via l'interface de fonctions étrangères (FFI) de Nit, donne accès aux API natives dans leur entièreté et leur langage natif. Pour mettre sur pied notre solution, nous avons bonifié le langage Nit par l'ajout de fonctionnalités et de services. D'abord, nous avons conçu la FFI de Nit et implémenté le support des langages C, Objective-C et Java. Ensuite, nous avons étendu le compilateur Nit pour qu'il génère les applications Android et iOS. Puis, nous avons conçu et réalisé quatre API dédiées aux applications mobiles : interface utilisateur, cycle de vie, requêtes HTTP et persistance des données. Finalement, nous avons validé notre solution en réalisant trois projets d'applications mobiles. Deux petites applications, une calculatrice et un client de microblogue, nous ont permis d'évaluer les API portables, des variations simples dans de petites lignes de produits, et l'intégration de code étranger avec la FFI de Nit. Un projet d'application réelle, la ligne de produits Tenenit, a mis à l'épreuve tous les aspects de notre solution. De plus, au travers de ces travaux, nous avons identifié et défini trois patrons de conception polyglotte.

Type: Thèse ou essai doctoral accepté
Informations complémentaires: La thèse a été numérisée telle que transmise par l'auteur.
Directeur de thèse: Privat, Jean
Mots-clés ou Sujets: Applications mobiles / Android / iOS / Logiciels multiplateformes -- Développement / Langage Nit
Unité d'appartenance: Faculté des sciences > Département d'informatique
Déposé par: Service des bibliothèques
Date de dépôt: 13 août 2018 12:50
Dernière modification: 13 août 2018 12:50
Adresse URL : http://archipel.uqam.ca/id/eprint/11531

Statistiques

Voir les statistiques sur cinq ans...