Xcode, l'ambiente di sviluppo integrato di fatto (IDE) per lo sviluppo di iOS e OS X, è un fantastico software. Offre tutto ciò che uno sviluppatore Cocoa deve passare da un'idea fragile a un'applicazione di successo nell'App Store di Apple.
Tuttavia, ci sono numerosi strumenti e servizi che sono diventati indispensabili nel flusso di lavoro di molti sviluppatori di Cocoa. In questo articolo, evidenzierò alcuni degli strumenti che uso e alcune alternative.
Nella comunità di Cocoa, Git è probabilmente il sistema di gestione del codice sorgente più popolare (SCM). Anche se il supporto di Xcode per Git migliora con ogni versione, molti sviluppatori di Cocoa preferiscono uno strumento dedicato oltre il supporto integrato di Xcode.
SourceTree è il client Git gratuito di Atlassian, disponibile per OS X e Windows. Supporta anche Mercurial, ma la maggior parte degli sviluppatori di Cocoa sceglie Git al giorno d'oggi. SourceTree non è solo gratuito, è incredibilmente potente e facile da usare, anche per le persone che non hanno familiarità con Git.
Il client Git di Atlassian si integra perfettamente con Bitbucket e con GitHub e FogCreek's Kiln. SourceTree ti aiuta anche con flussi di lavoro comuni, come Git-flow e Hg-flow. Anche se si giura tramite la riga di comando, SourceTree renderà le operazioni complesse molto più semplici.
Per anni, Tower è stato il mio cliente preferito di Git. È ben progettato, potente e robusto. Offre la maggior parte delle funzionalità di cui hai bisogno quotidianamente e si integra perfettamente con Beanstalk, GitHub e alcuni dei tuoi editor preferiti, come BBEdit e Coda.
Le persone di Fournova, i creatori di Tower, hanno fatto un lavoro straordinario con Tower e continuano a stupirmi ad ogni uscita. Tower non è gratis, ma ciò non dovrebbe impedirti di scaricare la versione di prova e prenderla per un giro.
Black Pixel's Kaleidoscope è il tuo migliore amico quando si tratta di trovare differenze tra file e cartelle. Il concetto può sembrare semplice, ma in realtà non lo è.
Potresti pensare che un'applicazione di comparazione di file come Kaleidoscope non valga la pena di essere pagata, ma ti sfido a fare un tentativo e sarai sbalordito. Funziona molto, molto bene e sono giunto a fare affidamento sulla sua intuitiva interfaccia utente e potenti funzionalità di fusione.
Esistono diverse piattaforme per l'hosting di repository Git, ma GitHub è una delle scelte più popolari. È la casa di numerosi progetti open source, come AFNetworking e CocoaPods.
I repository pubblici sono piani gratuiti ea pagamento sono abbastanza economici. Con oltre 5 milioni di utenti e oltre 11 milioni di repository, GitHub è diventato uno dei principali attori su cui molti sviluppatori fanno affidamento.
Xcode è l'IDE di fatto se sei serio sullo sviluppo del cacao. Tuttavia, JetBrains non è in grado con questa affermazione e hanno messo i loro soldi dove la loro bocca è creando AppCode.
AppCode è la risposta di JetBrains alle lamentele di molti sviluppatori che sono diventati frustrati con Xcode. È uno strumento impressionante per non dire altro e può essere usato insieme a Xcode. Anche se non è ancora disponibile per Xcode, fa un lavoro migliore in alcune delle principali funzionalità di Xcode, come il refactoring e il completamento del codice.
Conosco poche persone che amano scrivere codice di disegno e sono sicuro che anche il creatore di PaintCode non è appassionato di esso. PaintCode è un'applicazione di disegno vettoriale che genera al volo codice Objective-C.
PaintCode non solo ti farà risparmiare tempo, ti aiuterà a fare meno affidamento sulle immagini per creare l'interfaccia utente dell'applicazione. Ciò rende molto più semplice mantenere flessibile l'interfaccia utente della tua applicazione, dinamica e leggera.
Se sei uno sviluppatore iOS o OS X e non stai usando CocoaPods, allora stai sbagliando. CocoaPods è iniziato come un piccolo progetto con un obiettivo ambizioso. È diventato una soluzione di gestione della dipendenza di fatto per lo sviluppo del cacao. Le librerie più famose forniscono supporto per CocoaPods e persino le principali aziende, come Facebook e Square, supportano CocoaPods.
CocoaPods funziona incredibilmente bene, è sorprendentemente robusto ed è integrato in AppCode di JetBrains, che ho discusso in precedenza. CocoaPods renderà la tua vita come sviluppatore Cocoa molto più semplice. Seriamente, provalo. Puoi ringraziarmi più tardi.
Non molto tempo fa, distribuire build ai tester era un problema al collo, specialmente se quei tester non erano molto tecnici. TestFlight ha affrontato questo problema creando una piattaforma per la distribuzione aerea di build di test. Distribuire build ai tester non è mai stato così facile.
Sebbene il provisioning delle applicazioni continui ad essere un ostacolo importante per i nuovi sviluppatori di Cocoa, la distribuzione ad hoc è diventata molto più semplice.
TestFlight ha anche un'applicazione desktop per OS X per rendere ancora più semplice il caricamento di una nuova build nei loro server. Rileva automaticamente quando si crea un nuovo archivio e viene richiesto di caricare la build sui server TestFlight. Questo è ciò che io chiamo indolore distribuzione ad hoc.
HockeyApp è molto simile a TestFlight, aiuta gli sviluppatori a distribuire build ai tester. Come TestFlight, ha la capacità di raccogliere i rapporti sugli arresti anomali con la simbolizzazione sul lato server e include l'analisi per ottenere un'idea precisa di quali dispositivi e configurazioni vengono testate le applicazioni su.
Come TestFlight, HockeyApp ha una meravigliosa API. Con l'API HockeyApp, puoi anche recuperare i rapporti sugli arresti anomali e aggiornare i profili di provisioning.
Alcatraz è un gestore di pacchetti per Xcode. Dì addio alla copia manuale dei file in qualche directory oscura. L'installazione di plugin o combinazioni di colori con Alcatraz consiste nel fare clic su un pulsante.
Alcatraz mantiene un elenco di plug-in, modelli e combinazioni di colori, che è possibile cercare e installare con un clic di un pulsante. Al momento della scrittura, Alcatraz non è completamente compatibile con Xcode 5, ma non lasciare che ti impedisca di provarlo.
L'obiettivo di Reveal è semplice ma impressionante, consente di ispezionare e manipolare la gerarchia della vista dell'applicazione in fase di runtime. Più uso Reveal, più apprezzo e scopro il suo potere e le sue capacità.
Permette di ispezionare la gerarchia delle viste della tua applicazione in due e tre dimensioni, modificare le proprietà delle singole visualizzazioni e persino ingrandire un sottoinsieme di viste per facilitare il debugging. Reveal non è gratuito, ma vale ogni centesimo.
Charles è uno di quegli strumenti che molte persone amano quando iniziano a usarlo. È uno strumento multipiattaforma per monitorare il traffico di rete. Perché questo sarebbe utile per uno sviluppatore Cocoa? Dal momento in cui la tua applicazione ha bisogno di parlare con un servizio web, vedrai immediatamente il vantaggio di uno strumento come Charles.
Invece di chiedersi perché una richiesta restituisca a 404
, semplicemente ispeziona la richiesta in Charles per vedere se stai inviando le intestazioni corrette con la richiesta. Charles supporta SSL, filtriamo il traffico e possiamo persino simulare una connessione di rete lenta.
La maggior parte degli sviluppatori iOS testano le loro applicazioni in iOS Simulator, specialmente nelle prime fasi di sviluppo. Ciò significa che a volte è necessario esplorare la sandbox di un'applicazione. Certo, puoi aprire il Finder e navigare ~ / Libreria / Application Support / iPhone Simulator / 7.0.3 / Applicazioni / 56A57F3E-CF48-47F6-BAE8-B8541BCEC13B /
. Veramente?
SimPholders è una piccola applicazione che vive nella barra dei menu. Ti dà un rapido accesso alle sandbox delle applicazioni che hai installato su iOS Simulator. Fatti un favore e prendi una copia di SimPholders. È gratis.
TestFlight e HockeyApp hanno la capacità di raccogliere i rapporti sugli arresti anomali per te, ma l'unico obiettivo di Crashlytics è la raccolta e l'analisi dei crash, e questo mostra. Crashlytics è un servizio gratuito e supporta iOS e Android.
Non solo raccoglie e simbolizza i rapporti sugli arresti anomali, ispeziona e analizza i crash. Il risultato è che esso e ti mostra la gravità di un problema, che ti aiuta a dare la priorità alla risoluzione dei bug. L'applicazione desktop Crashlytics rileva automaticamente quando viene creato un nuovo archivio e carica automaticamente il file dSYM dell'archivio in modo che possa simboleggiare eventuali segnalazioni di arresti anomali in arrivo.
Il Critterismo fa un passo in più rispetto ai Crashylitics combinando analisi, rapporti sugli arresti anomali e prestazioni delle applicazioni. Il risultato è un servizio che consente agli sviluppatori di mettere a punto le loro applicazioni, individuare i colli di bottiglia critici e dare la priorità alle correzioni dei bug. Supporta iOS, Android, Windows Phone e applicazioni Web.
Questa lista non è affatto definitiva. Ci sono molti altri strumenti e servizi che rendono la vita di uno sviluppatore iOS più facile e divertente - o meno frustrante. Quali strumenti e servizi utilizzi per lo sviluppo di iOS?