iOS Outils du commerce

introduction

Xcode, l’environnement de développement intégré (IDE) de facto pour iOS et OS X, est un logiciel fantastique. Il offre tout ce dont un développeur Cocoa a besoin pour passer d’une idée fragile à une application réussie dans l’App Store d’Apple..

Cependant, de nombreux outils et services sont devenus indispensables dans le flux de travail de nombreux développeurs de Cocoa. Dans cet article, je soulignerai certains des outils que j’utilise ainsi que des alternatives..

Contrôle de source

Dans la communauté Cocoa, Git est sans doute le système de gestion de code source (SCM) le plus populaire. Même si la prise en charge de Git par Xcode s'améliore avec chaque version, de nombreux développeurs Cocoa préfèrent un outil dédié à la prise en charge intégrée de Xcode..


SourceTree

SourceTree est le client gratuit Git d’Atlassian, disponible pour OS X et Windows. Il supporte également Mercurial, mais la majorité des développeurs de Cocoa choisissent Git de nos jours. Non seulement SourceTree est gratuit, il est incroyablement puissant et facile à utiliser, même pour les personnes non familiarisées avec Git.

Le client Git d’Atlassian s’intègre parfaitement à Bitbucket, ainsi qu’à GitHub et à FogCreek's Kiln. SourceTree vous aide même avec des flux de travail courants, tels que Git-flow et Hg-flow. Même si vous ne jurez que par la ligne de commande, SourceTree simplifiera considérablement les opérations complexes..

La tour

Tower est depuis des années mon client de choix pour Git. Il est magnifiquement conçu, puissant et robuste. Il offre la plupart des fonctionnalités dont vous avez besoin au quotidien et s'intègre parfaitement à Beanstalk, GitHub ainsi qu'à certains de vos éditeurs préférés, tels que BBEdit et Coda..

Les gens de Fournova, les créateurs de Tower, ont fait un travail extraordinaire avec Tower et continuent de me surprendre à chaque sortie. Tower n'est pas gratuit, mais cela ne devrait pas vous empêcher de télécharger la version d'évaluation et de l'essayer..

Kaléidoscope

Kaleidoscope de Black Pixel est votre meilleur ami pour trouver des différences entre les fichiers et les dossiers. Le concept peut sembler simple, mais ce n’est pas le cas.

Vous pensez peut-être qu'une application de comparaison de fichiers comme Kaléidoscope ne vaut pas la peine d'être payée, mais je vous mets au défi d'essayer et de vous émerveiller. Cela fonctionne très bien et je compte désormais sur son interface utilisateur intuitive et ses puissantes fonctionnalités de fusion..

GitHub

Il existe un certain nombre de plates-formes pour l'hébergement de référentiels Git, mais GitHub est l'un des choix les plus populaires. C'est la maison de nombreux projets open source, tels que AFNetworking et CocoaPods.

Les référentiels publics sont gratuits et les plans payants sont relativement peu coûteux. Avec plus de 5 millions d'utilisateurs et plus de 11 millions de référentiels, GitHub est devenu un acteur majeur sur lequel de nombreux développeurs s'appuient..

Codage

AppCode

Xcode est l'IDE de facto si vous êtes sérieux au sujet du développement de Cocoa. Cependant, JetBrains ne se fie pas à cette affirmation et ils ont mis leur argent à la bouche en créant AppCode.

AppCode est la réponse de JetBrains aux plaintes de nombreux développeurs frustrés par Xcode. C'est un outil pour le moins impressionnant et il peut être utilisé aux côtés de Xcode. Bien que Xcode ne soit pas encore disponible, il fait un meilleur travail sur certaines fonctionnalités clés de Xcode, telles que le refactoring et la complétion de code..

PaintCode

Je connais peu de gens qui aiment écrire du code et je suis sûr que le créateur de PaintCode ne l'aime pas non plus. PaintCode est une application de dessin vectoriel qui génère du code Objective-C à la volée..

PaintCode vous fera non seulement gagner du temps, il vous aidera également à vous fier moins aux images pour créer l'interface utilisateur de votre application. Cela facilite grandement la flexibilité, le dynamisme et la légèreté de l'interface utilisateur de votre application..

Gestion des dépendances

CacaoPods

Si vous êtes un développeur iOS ou OS X et que vous n'utilisez pas CocoaPods, vous vous trompez. CocoaPods a commencé comme un petit projet avec un objectif ambitieux. Il est devenu la solution de gestion de la dépendance de facto pour le développement de Cocoa. Les bibliothèques les plus populaires fournissent un support pour CocoaPods et même les grandes entreprises telles que Facebook et Square soutiennent CocoaPods..

CocoaPods fonctionne incroyablement bien, est étonnamment robuste et est intégré à AppCode de JetBrains, dont j'ai déjà parlé. CocoaPods vous facilitera grandement la vie. Sérieusement, essayez-le. Tu peux me remercier plus tard.

Distribution

Vol d'essai

Il n'y a pas si longtemps, distribuer des versions aux testeurs était un problème, surtout si ces testeurs n'étaient pas très techniques. TestFlight a résolu ce problème en créant une plate-forme pour la distribution par air des versions de test. Distribuer des builds aux testeurs n'a jamais été aussi simple.

Bien que l'approvisionnement en applications reste un obstacle majeur pour les nouveaux développeurs de Cocoa, la distribution ad hoc est devenue beaucoup plus facile..

TestFlight propose également une application de bureau pour OS X afin de faciliter le téléchargement d'une nouvelle version sur leurs serveurs. Il détecte automatiquement lorsque vous créez une nouvelle archive et vous invite à télécharger la construction sur les serveurs de TestFlight. C'est ce que j'appelle une distribution ad hoc indolore.

HockeyApp

HockeyApp est très similaire à TestFlight, il aide les développeurs à distribuer des versions aux testeurs. Comme TestFlight, il est capable de collecter des rapports d'incident avec une symbolisation côté serveur et inclut des analyses permettant d'obtenir une idée précise des périphériques et des configurations sur lesquels vos applications sont testées..

Comme TestFlight, HockeyApp possède une merveilleuse API. Avec l'API HockeyApp, vous pouvez même extraire des rapports d'incident et mettre à jour des profils d'approvisionnement.

Plugins Xcode

Alcatraz

Alcatraz est un gestionnaire de paquets pour Xcode. Dites au revoir à la copie manuelle de fichiers dans un répertoire obscur. Pour installer des plugins ou des palettes de couleurs avec Alcatraz, il suffit de cliquer sur un bouton..

Alcatraz gère une liste de plug-ins, de modèles et de palettes de couleurs que vous pouvez rechercher et installer en un clic. Au moment de la rédaction de ce document, Alcatraz n'est pas totalement compatible avec Xcode 5, mais ne vous laissez pas empêcher de l'essayer..

Débogage

Révéler

L'objectif de Reveal est simple mais impressionnant. Il vous permet d'inspecter et de manipuler la hiérarchie des vues de votre application au moment de l'exécution. Plus j'utilise Reveal, plus j'apprécie et découvre sa puissance et ses capacités.

Il permet d'inspecter la hiérarchie des vues de votre application en deux et trois dimensions, de modifier les propriétés des vues individuelles et même de zoomer sur un sous-ensemble de vues pour faciliter le débogage. Révéler n'est pas gratuit, mais cela en vaut la peine.

Charles

Charles est l'un de ces outils que beaucoup de gens adorent une fois qu'ils l'utilisent. C'est un outil multiplateforme pour la surveillance du trafic réseau. Pourquoi cela serait-il utile pour un développeur Cocoa? Dès que votre application doit communiquer avec un service Web, vous verrez immédiatement les avantages d'un outil tel que Charles..

Au lieu de se demander pourquoi une demande renvoie un 404, vous examinez simplement la demande dans Charles pour voir si vous envoyez les en-têtes corrects avec la demande. Charles prend en charge SSL, vous permet de filtrer le trafic et peut même simuler une connexion réseau lente.

SimPholders

La plupart des développeurs iOS testent leurs applications dans le simulateur iOS, en particulier au tout début du développement. Cela signifie que vous devez parfois parcourir le sandbox d'une application. Bien sûr, vous pouvez ouvrir le Finder et accéder à ~ / Bibliothèque / Support applicatif / Simulateur iPhone / 7.0.3 / Applications / 56A57F3E-CF48-47F6-BAE8-B8541BCEC13B /. Vraiment?

SimPholders est une application minuscule qui réside dans votre barre de menus. Il vous donne un accès rapide aux sandbox des applications que vous avez installées dans le simulateur iOS. Faites-vous une faveur et prenez une copie SimPholders. C'est gratuit.

Suivi de la performance

Crashlytics

TestFlight et HockeyApp ont la possibilité de collecter des rapports d'accident pour vous, mais le seul objectif de Crashlytics est de collecter et d'analyser les accidents, et cela se voit. Crashlytics est un service gratuit qui prend en charge iOS et Android..

Non seulement il collecte et symbolise les rapports d'accident, mais il inspecte et analyse les accidents. Le résultat est qu’il affiche la gravité d’un problème, ce qui vous aide à hiérarchiser les corrections de bogues. L'application de bureau Crashlytics détecte automatiquement le moment de la création d'une nouvelle archive et télécharge automatiquement le fichier dSYM de l'archive afin qu'elle puisse symboliser les rapports d'incident entrants..

Crittercism

Crittercism va encore plus loin que Crashylitics en combinant analyse, compte rendu des incidents et performances des applications. Le résultat est un service qui permet aux développeurs d’ajuster leurs applications, de repérer les goulots d’étranglement critiques et de hiérarchiser les correctifs de bogues. Il prend en charge les applications iOS, Android, Windows Phone et Web..

Conclusion

Cette liste n'est en aucun cas définitive. Il existe de nombreux autres outils et services qui rendent la vie d'un développeur iOS plus facile et plus agréable, ou moins frustrante. Quels outils et services utilisez-vous pour le développement iOS??