Retour

Quelques conseils aux développeurs qui débutent sur iOS

le 

De plus en plus de smartphones, de plus en plus d'applications, à un rythme effréné, et, dans le même temps et sur le même rythme, de plus en plus de développeurs en herbes qui veulent développer leurs propres applications mobiles.

Mais, par quel bout commencer ? C'est la question que se posent beaucoup de développeurs débutants. Pour leur répondre, j'ai interviewé 2 développeurs de notre équipe iOS: Mathieu Fancello et Alex Manzella . Je leur ai demandé de m'indiquer quelles sont les connaissances élémentaires à posséder et leur méthode pour entrer du bon pied dans le monde du développement iOS.

De quoi a-t-on besoin pour devenir un développeur iOS ?

Pour démarrer sur iOS, il faut avoir un minimum de connaissances en algorithmique et en programmation orientée objet.

L'Objective C (ObjC) peut s'avérer un peu ardu si vous commencez votre apprentissage par ce langage de programmation. Il est préférable de faire ses premières armes sur un langage plus classique, comme le C, afin de se familiariser avec les concepts de la programmation orientée objet (OOP).

Si vous êtes un warrior et que vous voulez vous attaquer directement au plus haut niveau, vous trouverez de la documentation sur l'Objective C dans le Framework d'Apple .

Quelles sont les principales différences entre le dev mobile et le dev "classique" ?

En apparence, on a l'impression que c'est la même chose; mais en réalité, ce sont 2 mondes complètement différents.

Quand vous faites du développement mobile, vous devez être beaucoup plus vigilant sur l'utilisation des ressources. C'est très important de gérer la mémoire de façon la plus optimisée possible car les téléphones et les tablettes n'ont pas encore autant de puissance que les ordinateur de bureau, même si ces terminaux sont chaque jour encore plus puissants.

Les utilisateurs attendent des applications mobiles qu'elles soient rapides et réactives. Aussi, vous devez user et abuser du multi threading afin de réduire les temps de chargement. Cela fait appel aussi à la mise en oeuvre de concepts de programmation asynchrone. Le multi threading vous permet de construire l'interface de l'application et en parallèle de récupérer le contenu qu'elle va afficher.

A-t-on besoin uniquement de connaissances techniques ?

Bien sûr que non. Il faut également posséder des notions de design et de de création d'UX (user experience).
Durant la phase de développement, comme nous l'avons évoqué plus haut, il faut créer l'UI (interface utilisateur) en gardant à l'esprit qu'elle doit être la plus intuitive possible.
Mettez-vous à la place des utilisateurs finaux, et imaginez comment il vont utiliser l'application. Essayez alors de leur proposer la meilleure expérience utilisateur. 

Il faut garder en tête que l'interaction d'un utilisateur avec une application mobile est complètement différente de celle qu'il peut avoir avec une application de bureau. Les smartphones n'ont pas de souris mais un écran tactile et leur écran est beaucoup plus petit. Il faut donc repenser complètement l'expérience utilisateur.

Pourquoi choisir iOS plutôt qu'une autre plate-forme ?

iOS est une plate-forme très populaire, aussi bien du coté des développeurs que des utilisateurs.

Lorsqu'on débute sur iOS, on peut avoir le sentiment que c'est plus compliqué qu'Android, mais ce n'est pas vrai. En fait, même si java est plus accessible qu'ObjC, et que les développeurs le trouve plus simple, il s'avère qu'Android est une plate-forme très fragmentée. 
Si vous vous plongez dans Objective C, vous verrez qu'il n'est pas si compliqué qu'il n'y parait. Le framework Apple est très bien pensé et l'utiliser pour développer devient très plaisant. De plus, il est facile de trouver de l'aide auprès de la communauté ou bien dans la documentation. (UIKit , ...)

Un conseil perso

Parmi les nombreux conseils qui vous seront donnés, voici celui que je considère le plus important : Ne débutez pas à partir de storyboards.

Selon Apple : "Un storyboard est une représentation visuelle de l'interface utilisateur d'une application iOS, qui présente les différents écrans et les relations entre ces différents écrans. Un storyboard est composé d'une succession de scènes, chacune représentée par une vue contrôleur et ses vues; les scènes sont connectées entre elles par des objets segue, qui sont une transition entre 2 vue contrôleurs."

Les débutants ont pour habitude de démarrer leur apprentissage d'iOS en utilisant des storyboards, mais ceci peut s'avérer contre productif dans la mesure où vous apprenez à développer selon un schéma. Le problème, c'est que quand vous voulez vous attaquer à des choses plus complexes, qui ne peuvent pas être matérialisées par un dessin, vous n'arrivez pas à réfléchir sans vous appuyer sur un schéma.

Apprendre à développer à partir du code, en limitant le recours aux storyboards, va accroître votre connaissance du framework, de l'objective C et du runtime. Cela sera un véritable atout lorsque vous aurez à résoudre des problèmes complexes. Lorsque vous serez un peu plus expert sur la plate-forme, vous pourrez utiliser les storyboards si vous pensez que cela peut accélérer votre processus de production. De notre coté, on pense que ce n'est pas le cas :)
Après avoir lu cet article, vous devriez en savoir un peu plus sur le développement de logiciels iOS, et par quel bout commencer pour créer vous-même votre première application iOS.

Si vous avez des questions ou si vous souhaitez obtenir davantage de conseils, n'hésitez pas à poster un commentaire, nous nous ferons un plaisir de répondre.

POUR ALLER PLUS LOIN :

 

  • Vous aussi vous pouvez exploiter les technologies d'aujourd'hui et devenir développeur. Nul besoin d'avoir des connaissances poussées ! En fonction de vos besoins, GoodBarber vous accompagne, étape par étape, dans l'élaboration de votre propre application mobile . Au terme du développement, vous pourrez mettre en ligne votre travail sur les stores iOS et Android !
  • En tant que développeur, vous souhaitez peut-être découvrir qui se cache derrière le système de GoodBarber ! Nous vous aidons à chaque étape du développement de votre travail jusqu'à la mise en ligne de votre app sur les stores iOS pour iPhone et Android pour Samsung, mais vous souhaitez peut-être en savoir davantage. En fonction des questions que vous vous posez, découvrez 3 choses que vous ne savez peut-être pas sur GoodBarber . Vous comprendrez mieux ce qui nous pousse à vous aider à donner vie à vos projets !
  • En fonction de vos préférences, une fois son développement terminé, vous pouvez mettre en ligne votre application sur le store iOS ou sur celui d'Android. Si vous êtes développeur d'apps pour iphone et ipad, découvrez comment publier son application sur l'App Store .
  • Lorsque vous souhaitez mettre en ligne votre application, vous vous demandez peut-être comment faire un choix entre iOS et Android . Chaque store regroupe une variété d'apps de jeux, d'apps utilitaires ou encore d'apps de réseaux sociaux, mais alors comment faire le milleur choix ? En fonction de votre stratégie, découvrez nos conseils pour rendre votre app accessible sur iPhone et iPad, ou sur tout autre téléphone. Bien sûr, vous pouvez publier votre app sur les deux stores ! Ne pas avoir de choix à faire, ça facilite la vie non ?
  • Dans un monde où le développement des technologies est constant, nous souhaitons une longue vie au métier d'app maker  ! Que vous souhaitiez créer une app de jeux ou une appli pour votre travail, donner vie à votre propre système pour mobiles ne peut être que bénéfique. En plus, on peut s'occuper de la mise en ligne sur iOS et Android pour vous !
  • En fonction du type d'application que vous avez dévoloppé : jeux, utilitaires, news... un nouveau système de classification a été mis en place pour les apps Android . Si vous avez donné vie à une appli pour iPhone iOS, vous n'êtes donc pas concernés par cette nouveauté.
Conseils pour créer une app