Développement iOS : Ce dont vous avez besoin et comment l'obtenir
04.04.2012
- Page d'accueil
- Blog
- Développement iOS : Ce dont vous avez besoin et comment l'obtenir
Vous voulez écrire des applications pour l’iPhone ?
*-J’écris des applications pour iPhone
*Alors tu veux être payé pour les écrire, hein ?
-Oui ! Gimme, gimme!
Une conversation familière, un trope universel, mais qui présente une énigme. Après la formation de base, quelle est la prochaine étape ?
Disons que vous :
- Avez appris l’Objective-C
- Vous êtes exercé à créer quelques applications
- Comprenez MVC
- Pouvez vous débrouiller sans problème avec la documentation de Xcode
Maintenant, vous avez commencé à passer du statut de développeur en formation à celui de développeur et vous voulez travailler avec une agence numérique pour développer des applications que les gens utiliseront. Ahhh… c’est un cacao d’une autre saveur. Voici mes conseils pour vous aider à progresser.
1. Services Web
Il n’y a malheureusement aucun moyen de contourner ce point. En fait, il est si important qu’il pourrait représenter les points 1 à 3 de cette liste, mais c’est redondant et la redondance est ennuyeuse (et redondante). Les applications réservées aux clients sont bien et utiles et peuvent vous faire gagner de l’argent. Mais ce n’est pas la viande et les pommes de terre du développement d’applications. Les applications qui communiquent avec un serveur doivent OBLIGATOIREMENT figurer dans votre portfolio. Idéalement, vous devriez avoir des exemples de communication avec un serveur PHP/MySQL en JSON et/ou XML via des services web RESTful. Oui, j’admets que c’est intimidant, mais c’est évidemment surmontable, sinon personne ne serait capable de le faire, n’est-ce pas ?
COMMENT APPRENDRE:
Tout d’abord, consultez ce tutoriel qui est tout à fait logique grâce à une équipe d’auteurs formidables. NE LÉSINEZ PAS SUR LA PARTIE PHP. Même si vous n’écrivez jamais vos propres services web sur le serveur, vous serez toujours reconnaissant de savoir que vous pouvez le faire.
Vous voudrez également lire cet article qui traite spécifiquement de l’utilisation de ASIHTTPRequest, c’est-à-dire l’ami du débutant dans l’apprentissage des cadres de mise en réseau tiers.
*pourquoi dois-je apprendre les réseaux tiers ? Ne devrais-je pas apprendre les frameworks Apple ?
Je vais prendre ici une position sur laquelle certains ne seront pas d’accord : Non. Pas au début en tout cas. NSURLRequest et NSURLConnection ne sont pas faciles à utiliser. S’ils l’étaient, les gens n’auraient pas créé une demi-douzaine d’alternatives à leur API. À ce stade du jeu, il est plus important d’apprendre à communiquer dans les deux sens que de comprendre comment cela fonctionne au niveau du langage, et ASIHTTPRequest est parfait pour cela.
(***NOTE : Si vous chargez ASIHTTPRequest et ses fichiers dans une application qui utilise ARC, assurez-vous de désactiver ARC sur ces fichiers en :
a) en allant dans Targets -> Build Phases -> Compile Sources (Cibles -> Phases de construction -> Compiler les sources)
b) Mettre en évidence tous les fichiers .m qui commencent par ASI (ainsi que tous les autres fichiers de ASIHTTPRequest comme Reachability.m)
c) Appuyer sur Entrée
d) Tapez -fno-objc-arc
e) S’assurer que l’on a peuplé le bon côté pour chacun d’entre eux
Pour plus d’informations sur la désactivation de l’ARC, veuillez consulter cet article.
Entraînez-vous à POSTER et à RECEVOIR des chaînes de caractères et des nombres, ainsi qu’à charger et à télécharger des fichiers.
Pratiquez l’encodage et l’analyse JSON et XML.
S’entraîner à mettre en place un serveur en nuage pour gérer vos services.
Cela changera votre façon d’envisager l’architecture de vos applications.
CEPENDANT, travailler avec ASIHTTPRequest n’est pas une connaissance suffisante en soi. Vous devez apprendre d’autres frameworks de mise en réseau tiers. La prochaine étape évidente est AFNetworking.
COMMENT APPRENDRE : Lisez mon article de blog précédent intitulé “iOS Programming - Converting from ASIHTTPRequest to AFNetworking” qui explique clairement et facilement comment passer de l’un à l’autre.
Une fois que vous aurez pris en main ce réseau de grands garçons, vous aurez également pratiqué les blocs et un peu de threading. Vous pouvez maintenant apprendre un autre kit comme le MKNetworking Kit ou RESTKit. Ces deux kits sont très populaires en ce moment et ont des caractéristiques différentes. RESTKit est particulièrement axé sur l’intégration avec CoreData, ce qui nous amène au point suivant de notre liste.
2. CoreData
Il existe quatre façons courantes de conserver des données sur l’iPhone :
a) NSUserDefaults
b) E/S de fichiers
c) Archivage
d) Données de base
De l’avis de l’auteur, vous pouvez probablement ignorer a, b et c, du moins au début. Ils sont souvent enseignés comme le moyen d’apprendre à persister, mais je ne vois pas pourquoi, car ils sont plutôt désuets par rapport à CoreData. Je sais que CoreData a une courbe d’apprentissage, mais si vous êtes prêt à persister, vous êtes prêt pour CoreData.
CoreData est la façon dont Apple stocke et organise les données qui perdurent entre les sessions. Et, depuis l’introduction d’iOS 5, il a été rendu encore plus facile à utiliser grâce à un nouveau type de fichier qui le stocke, appelé UIManagedDocument. Ce fichier est plein de fonctionnalités et d’un backend compliqué, mais vous n’avez pas besoin de tout comprendre. Vous pouvez apprendre les choses au fur et à mesure.
COMMENT APPRENDRE : COMMENT APPRENDRE IOS 11 ET SWIFT POUR UNE CARRIÈRE DE DÉVELOPPEUR IPHONE. Cet homme, Paul Hegarty, est le maître de l’enseignement du développement iOS. Écoutez tout ce qu’il dit et faites en sorte que votre code soit le même que le sien.
3. Travailler avec un designer
Vous DEVEZ DEVOIR DEVOIR DE TRAVAILLER avec un concepteur. Le développement réel est une collaboration entre l’idée, le code et le design et si vous n’avez pas d’exemple de mise en œuvre du front-end de quelqu’un d’autre, vous n’avez aucune idée de la façon dont vous vous acquitteriez de cette tâche. En général, un concepteur fait des comps de chaque écran de l’application et les remet aux développeurs sous forme de fichiers .ai ou .psd (notez l’utilisation du logiciel Adobe qui n’est pas bon marché mais qui est nécessaire pour les développeurs également). Ensuite, le développeur consulte ces fichiers et en extrait les éléments dont il a besoin. Il est beaucoup plus facile de couper, recadrer et découper vos bordures, boutons et arrière-plans tout seul en passant par les calques que de recevoir des fichiers .png d’éléments individuels.
(***NOTE À L’ATTENTION DES CONCEPTEURS : Ne mettez pas de choses dans des calques cachés dans les fichiers .psd. Le développeur risque de ne pas s’en apercevoir. Si vous avez un message d’erreur ou une deuxième version de la vue, placez-les dans leurs propres fichiers .psd. C’est pour votre bien !)
COMMENT APPRENDRE : Trouvez un designer et travaillez avec lui.
-Mais ce n’est pas si simple..
Oui, c’est vraiment très simple. Il y a des gens qui veulent s’exercer à la conception tout autant que vous voulez vous exercer au développement. Allez sur Facebook, LinkedIn, Craigslist et Tumblr, ayez un peu de courage et postez des choses sur StackOverflow ou partout où vous pouvez trouver des gens ! Vous serez peut-être surpris. Et lorsque vous les trouverez, reproduisez leur vision à l’identique. Ce n’est pas votre travail de refaire, de réinventer et de réinterpréter, mais c’est votre travail de faire en sorte que le design apparaisse exactement tel qu’il est sur l’ordinateur. Si vous y parvenez, vous serez apprécié des concepteurs. Pourquoi est-ce important ? Parce que les concepteurs sont le visage des applications. C’est ce que l’on voit et, de nos jours, le marché des applications est très saturé. Très peu d’applications font quelque chose qu’une autre application ne fait pas et la façon dont l’utilisateur les choisit est entièrement liée à la conception, c’est-à-dire à ce qui est le plus beau et le plus intuitif. Cela signifie que nous devons travailler plus dur pour mettre en œuvre des animations, des tableaux personnalisés, des boutons fantaisistes et des gestes exotiques (à condition qu’ils soient intuitifs).
Devenez un fan de design. Il n’est pas nécessaire d’être doué pour le design, il suffit d’être dévoué à la vision. Tous les développeurs iOS doivent également s’occuper de la partie frontale ; le développement n’est pas séparé entre la partie frontale et la partie dorsale, comme c’est le cas pour d’autres technologies. En prônant un design de qualité, vous montrerez à quel point vous prenez au sérieux l’expérience de l’utilisateur, CE QUI EST TOUT.
4. Pratiquer les meilleures pratiques
Vous devez être vu en train d’utiliser les bonnes pratiques MVC et OOP. C’est vrai. Mais cela ne s’arrête pas là.
** a) N’utilisez pas de variables d’instance. Utilisez @propertys**
b) @synthétisez vos @propertys avec une variable soulignée. par exemple:
@synthétiser fantastiButton = _fantastiButton ;
MAIS N’ACCÉDEZ JAMAIS DIRECTEMENT à _variable.
**c) Utilisez l’API privée dans vos classes
e) Arrêtez de nommer les choses avec des balises d’ouverture. par exemple:
arg_interestingInt <- BAD
t_interestingString <- BAD
INSTEAD :
f) NameThingsWithProperLongEasyToReadNames.
g) Créez vos propres NSNotifications et @protocoles
h) ^{ useBlocks ; }];
i) #define useMacros 1
j) Utiliser l’instanciation paresseuse. (Ceci est également mieux appris dans le cours de Stanford dans le premier épisode de l’automne 2011.)
k) Utilisez les storyboards et l’ARC. Ils sont nouveaux et incroyables.
l) // Ne commentez pas trop. Votre code doit être clair par lui-même.
et enfin :
m) self.remembers.to.use.dot.notation
5. Créer une application iPad
l’iPad a plus d’attrait que l’iPhone. Il est largement adopté et ne nécessite pas de service de téléphonie mobile. Il est en train de devenir l’ordinateur de notre époque. On vous demandera de développer pour lui.
*-Quelle est la différence ?
Pour vous, ce n’est peut-être pas si différent (le même vieux cacao), mais pour celui qui n’est pas un développeur iOS, ça l’est. Souvent, vous passez un entretien avec quelqu’un qui n’est pas développeur, et encore moins un développeur iOS, et le candidat qui a déjà une application iPad fonctionnelle à son actif semble bien plus fort que celui qui n’en a pas.
6. Sizzle-Frameworks
-Huh?
Il est important de réfléchir à la manière de montrer votre bon travail. L’art de la vente est un art du spectacle et certaines choses sont plus excitantes que d’autres.
a) Travaillez avec la vidéo.
b) Travailler avec des photos.
**c) Effectuer ces opérations avec AVFoundation (que vous pouvez apprendre dans le cours de Stanford dans la démo bonus intitulée “Introduction à AVFoundation” avec Salik Syed)
d) Connaître un peu d’animation de base
e) Inclure au moins un élément d’interface utilisateur personnalisé ou tiers dans l’une de vos applications de démonstration !
7. PRATIQUEZ, PRATIQUEZ, PRATIQUEZ !
Pourquoi attendez-vous ? Ces choses ne s’acquièrent pas par osmose ; elles nécessitent de la pratique et de la patience et, dans une agence numérique, il faut être rapide. Cela ne viendra pas d’une expérience superficielle.
8. Avoir des applications dans l’AppStore
Vous serez jugé sur ce point. Même si ce n’est pas l’application la plus excitante du monde, ce n’est pas grave, cela montre que vous pouvez aller jusqu’au bout. Mettre une application dans l’AppStore est l’une des meilleures choses que vous puissiez faire pour vous-même.
9. Soyez aimable
N’oubliez pas qu’en fin de compte, les gens aiment travailler avec des personnes sympathiques :) Vous avez beau être une superstar de l’iOS, il est essentiel de vous présenter comme quelqu’un avec qui les autres aimeraient travailler.
by
Will Larche
Laissez-nous vous aider à améliorer votre expérience utilisateur
Vous pensez qu'il est peut-être temps d'apporter une aide supplémentaire ?
Lisez-les ensuite...
Demandez un devis de projet gratuit
Nous examinerons votre demande et fournirons une évaluation des coûts du projet dans un délai de 1 à 2 jours ouvrables.
Demandez un devis de projet gratuit