Développement d’une application mobile native (1/3)

Application - Lettre Scrabble

Pour développer une application mobile, il y a plusieurs solutions techniques. Le développement natif, reconnu et conseillé par les stores, garantit la meilleure expérience utilisateur possible. On vous explique comment ce développement fonctionne par rapport à un développement en natif généré ou un développement hybride.

A/ Développement d’une application mobile native

Commençons par la conception d’une application mobile native. C’est-à-dire une application qui a été conçue spécifiquement pour un système d’exploitation (OS) avec un langage et une/des technologie(s) appropriés.

Tableau des langages et IDE* les plus courants pour chaque système d’exploitation :

Système d’exploitation
Langage(s)
IDE*
iOS (Apple)Swift et Objective CXcode
AndroidJava et KotlinAndroid Studio ou Eclipse

*Définition IDE : Integrated Development Environment (en français « environnement de développement »), est un logiciel qui rassemble un certain nombre d’outils permettant de développer d’autres logiciels.

application mobile native générée mobizel

B/ Trois étapes de conception

1 – Rédaction du code source

Dans un premier temps, un développeur rédige le code source de la future application dans un langage approprié.

a. Développement mobile, une compétence particulière

Attention, maîtriser un langage de programmation tel que Objective C, Java ou C# est une véritable compétence qui nécessite une longue formation ; certains développeurs sont d’ailleurs spécialisés dans un seul langage et il faut souvent faire appel à plusieurs professionnels ayant des spécialisations différentes pour développer une app mobile native pour plusieurs systèmes d’exploitation.

b. « Communiquer avec le SDK natif »

Dans un deuxième temps, pour développer une application mobile qui exploite les fonctionnalités natives du terminal (géolocalisation, contact, médias, appareil photo…) il faut “communiquer avec le SDK natif” via le code source. C’est-à-dire programmer des « ponts » qui vont aller chercher des morceaux de codes du SDK du système d’exploitation visé. Ces derniers vont permettre d’“appeler” des fonctionnalités natives pour les intégrer dans l’application mobile.

2 – Compilation du code source

La compilation a un rôle primordial car les logiciels fonctionnent avec du code binaire qui est trop complexe pour être conçu tel quel. Il faut donc rédiger un code plus simple “human readable” (le code source) qui va passer dans un compilateur et être transformé en code binaire “machine readable”. Les IDE contiennent un compilateur.

3 – Génération d’un code binaire natif

Le compilateur transforme le code source en code binaire et génère un fichier :

Système d’exploitation
Nom d’extension de fichier
iOS (Apple).ipa
Android.apk

Ce fichier doit être téléchargé (via les magasins d’applications mobiles ou stores), installé puis exécuté sur le terminal pour fonctionner.

En compilant les librairies appelées du SDK natif en même temps que le code source, le code binaire obtenu peut ainsi communiquer avec le système d’exploitation du terminal et exploiter ses fonctionnalités natives.

D/ Pour tout comprendre

Cet article est le premier volet d’une série de trois articles d’explication de la conception technique d’une application mobile :