Guida definitiva alla costruzione e pubblicazione della prima app per iPhone
Stai pensando di creare la tua app? Questo è ciò che devi sapere. Scopri l'ecosistema delle app, i linguaggi di programmazione, i set di strumenti, il tempo e lo sforzo necessari. Non ti dico cosa devi sapere, ma spiega piuttosto come puoi iniziare oggi per ottenere un'app pubblicata nell'App Store.
Per il tuo riferimento rapido, ecco le scorciatoie:
- Building Blocks Of An App: Le basi
- Il processo di app-making
- Su Swift e Objective-C
- Middleware: Build Once, Run Multiple
- Design: come viene utilizzata l'app
- Come abilitare un'app per Internet
- Dalla beta alla diretta
- Creazione delle domande frequenti sulla prima app
- Risorse didattiche per iniziare
- Lista di riferimento completa
1. Building Blocks Of An App: The Basics
Un'app è solo un pezzo di software per computer in esecuzione su uno smartphone . È scritto da un programmatore e assemblato con risorse grafiche create da un designer.
Le app per iPhone sono realizzate con un'applicazione Mac chiamata Xcode e programmate in Swift o Objective-C. Molte app sono collegate a Internet, il che significa che hanno un back-end che consente l'archiviazione dei dati nel cloud o funzionalità che interconnettono gli utenti.
Xcode è l'applicazione che puoi utilizzare per creare app native per iPhone ed è disponibile solo per Mac OS X. Include Interface Builder, uno strumento per creare visivamente le fondamenta grafiche della tua app. È uno strumento per l'impalcatura : non puoi creare un'app funzionale, ma puoi preparare le basi per le GUI della tua app .
Xcode ha molte funzioni utili, come il layout automatico per far funzionare la tua interfaccia su risoluzioni multiple dello schermo e un simulatore iPhone per testare la tua app senza un vero iPhone.
Per pubblicare app nell'App Store è necessario un account sviluppatore di Apple. È disponibile per $ 99 USD all'anno e deve essere rinnovato ogni anno. Apple dispone di un set di strumenti online completo disponibile per la gestione di app nuove e pubblicate, chiamate iTunes Connect, oltre a un ampio set di documentazione.
Inoltre, iTunes Connect ora dispone di uno strumento di distribuzione beta chiamato TestFlight. Può essere usato per distribuire la tua app ai beta tester .
2. Il processo di app-making
Qualunque processo di sviluppo dell'app segue approssimativamente questi passaggi:
- Design . Crea un mockup della tua app e impagina tutti i componenti sullo schermo.
- Sviluppare . Questo passaggio implica la codifica dell'applicazione, collegando le interfacce con le azioni if-this-then-that.
- Prova Invia l'app ai beta tester e raccogli feedback sulle sue prestazioni. Quindi, risolvi eventuali errori che si presentano.
- Pubblica . Scarica la tua app oltre il processo di revisione e trasferiscila in produzione nell'App Store.
La moderna gestione dei processi spesso funziona con iterazioni a livello micro e macro.
Quando si sta creando una nuova funzione, la si progetta sempre prima, quindi la si codifica, la si verifica e la si attiva. Che si tratti di un piccolo componente o di un'intera nuova parte dell'app, segui questa procedura .
3. Su Swift e Objective-C
Le app per iPhone sono tutte scritte in Swift o Objective-C. Swift è il nuovo linguaggio di programmazione inventato da Apple, annunciato il 2 giugno 2014, e successivamente rilasciato come versione 1.0 stabile il 9 settembre 2014. È un linguaggio abbastanza nuovo e le app interamente scritte in Swift sono appena arrivate su App Store.
Swift sta guadagnando rapidamente popolarità e le sue caratteristiche sono molto acclamate sia dai principianti che dai programmatori avanzati. Il bello di Swift è che è intercambiabile con Objective-C. Questo aiuta l'adozione di Swift da parte dei programmatori, perché non devono riscrivere l'intera base di codice per essere compatibili con la nuova lingua .
Le persone che hanno già una competenza di livello intermedio in qualsiasi linguaggio di programmazione avranno bisogno di meno tempo per raccogliere Objective-C o Swift. Soprattutto quelli che hanno lavorato con linguaggi simili a Swift, come Java, PHP o Ruby, non dovrebbero avere problemi nell'apprendimento di Swift.
Ma quale è meglio, Swift o Objective-C?
Objective-C è un po 'più difficile da affrontare perché utilizza una sintassi unica. Per i principianti, Swift è chiaramente l'opzione migliore. È più facile rispetto a Objective-C e rimuove il sovraccarico dal processo di sviluppo, rendendo notevolmente più bassa la barriera per i principianti.
Nonostante ciò, Objective-C è ancora lo standard in molte aziende in tutto il mondo, quindi il codice legacy sarà Objective-C per i prossimi anni. Come sviluppatore iOS utilizzato, vedrai più Objective-C che Swift.
4. Middleware: Build Once, Run Multiple
Il middleware (o multipiattaforma) come Cordova o PhoneGap, è una scelta popolare per gli sviluppatori di app, perché consente loro di scrivere codice una volta e di distribuirlo su Android e iOS .
Le app per Android sono scritte in Java e non sono compatibili con le app iOS . Se si desidera creare un'app per entrambe le piattaforme, ma non si desidera programmare la stessa app due volte, il middleware è un'opzione che consente di risparmiare tempo .
Molti di questi strumenti multipiattaforma sono basati sulla tecnologia web, come HTML5, CSS e JavaScript.
PhoneGap è il più utilizzato: viene utilizzato da 400.000 sviluppatori di app. PhoneGap ha i suoi strumenti di compilazione e tecnicamente esporta un'app che può essere eseguita e costruita all'interno di Xcode, rendendola una "app ibrida" - componenti nativi combinati con HTML5 .
PhoneGap ora offre PhoneGap Build, che sostituisce il compilatore Xcode con una soluzione basata su cloud. PhoneGap è gratuito e rilasciato sotto Apache Public License v2 open-source.
Le alternative a PhoneGap includono:
- Cordova (open source)
- Sencha Touch (open-source e commerciale)
- RhoMobile Suite (open-source)
PhoneGap supera queste alternative con i dispositivi supportati (iOS, Android, Windows Phone, BlackBerry OS, Ubuntu e Firefox OS) e l' hardware supportato (accelerometro, fotocamera, ecc.).
Aspetti negativi al middleware
L'utilizzo di middleware come PhoneGap ha due aspetti negativi importanti.
Poiché tali strumenti sono tutti basati sulla tecnologia web, non sono in grado di utilizzare componenti nativi con accelerazione hardware. Le animazioni, le transizioni e la grafica ad alta risoluzione non funzionano come in un'app nativa, il che rende impossibile l'utilizzo per giochi o app visivamente intense .
Inoltre, l'utilizzo del middleware richiede una buona conoscenza dei compilatori e degli strumenti di compilazione, il che lo rende un'opzione scomoda per gli sviluppatori principianti .
5. Progettazione: come viene utilizzata l'app
Non tutto ciò che è app è la programmazione. Il design grafico è grande nel settore delle app; è un requisito per qualsiasi app che vuole essere presa sul serio. Stai pensando di programmare le tue app? Se il tuo budget lo consente, noleggia un grafico. Ce ne sono molti in giro per siti di outsourcing come Elance o oDesk.
Detto questo, non hai bisogno di un grafico se sei appena agli inizi . Su iOS, puoi lavorare con i numerosi componenti prefabbricati che Apple utilizza nelle proprie app e nell'interfaccia utente del sistema operativo. I componenti standard dell'interfaccia utente di iPhone non sembrano eccezionali, ma non sono neanche male. È un ottimo modo per iniziare senza spendere troppo tempo nell'aspetto grafico della tua app.
Strumenti e risorse
Le linee guida dell'interfaccia umana offrono una buona panoramica dei componenti disponibili e su come usarli.
Icone : considera l'utilizzo di un kit di icone come Glyphish (commerciale). Hanno messo insieme centinaia di icone, ottimizzate per le app per iPhone, tra cui icone di social media, pulsanti di riproduzione / interruzione e simboli per le attività relative alle app, come novità, modifica e invio.
Mockup : un altro strumento che devi assolutamente utilizzare è Balsamiq Mockups (versione di prova gratuita, commerciale). È un editor point-and-click per creare prototipi delle tue app. Un mockup è uno schizzo approssimativo e mostra e spiega come funziona la tua app e cosa fa. Non iniziare mai la programmazione: fai un passo indietro e ripensa l'interfaccia utente e il layout delle app creando un mockup.
Hai creato un mockup di sketch, ma non riesci a capire come apparirà effettivamente l'app? Lavora con i PSD di design di Teehan + Lax (gratuito). Hanno estratto tutti i componenti della GUI da iOS e li hanno resi disponibili come grafica vettoriale. Perfetto per creare un mockup grafico!
6. Come abilitare un'app per Internet
La tua app è connessa a Internet? La creazione di un back-end personalizzato con linguaggi lato server come NodeJS, Ruby o PHP può richiedere molto tempo, denaro e impegno. È più facile utilizzare uno strumento Platform-as-a-Service, come Parse.
Parse è una soluzione basata su cloud per la memorizzazione di dati offline e online nella tua app . Supponi di creare un'app social con un flusso di immagini e aggiornamenti di stato. È possibile utilizzare Parse per archiviare i dati nel cloud e utilizzare il loro SDK per recuperarli da e verso i propri utenti .
L'utilizzo di uno strumento come Parse rimuove completamente la necessità di creare un back-end personalizzato . Il livello di utilizzo di base di Parse è gratuito, i livelli successivi iniziano a $ 100 / mese.
Le alternative a Parse sono Appcelerator (middleware + PaaS, commerciale) e App42 (analisi PaaS +, livello gratuito).
7. Andando da Beta a vivere
Prima che un'app venga pubblicata su App Store, devi caricarla con iTunes Connect. Immetti le informazioni di base della tua app come una descrizione, le categorie di app e l'icona dell'app da utilizzare .
La tua app entra quindi nel processo di revisione, un requisito di Apple. Un revisore di Apple controlla se la tua app aderisce alle Linee guida per la revisione e se ha dei bug. È un controllo di qualità per garantire che solo app buone entrino nell'App Store e dal punto di caricamento occorrono circa 2 settimane per rivedere la tua app.
Altro su Hongkiat:
- Genera facilmente icone di app iOS con MakeAppIcon
- Promuovi la tua app iOS con il meta tag dell'app iTunes
- 8 suggerimenti per aumentare i download per la tua app
- 20 reti pubblicitarie per monetizzare la tua app mobile
10 domande frequenti per creare la tua prima app
Naturalmente a questo punto potresti avere ancora alcune domande scottanti legate alla creazione delle tue prime app iOS. Daremo uno sguardo alle 10 domande più frequenti sui nuovi sviluppatori di app.
1. Quanto costa un'app?
Il costo di sviluppo di un'app può essere molto diverso da una società contraente all'altra. I freelance in outsourcing possono creare una semplice app per circa $ 3000. Le aziende più grandi possono richiedere da 25.000 USD a 100.000 USD per un'applicazione complessa, compresa la progettazione grafica e la programmazione di back-end. Aziende come Tinder, Pinterest, Facebook, ecc. Possono spendere centinaia di migliaia a milioni per sviluppare e commercializzare un'app. Proprio come altrove: ottieni quello per cui paghi .
2. Sono bloccato con un bug di programmazione. Come posso ottenere aiuto?
Molte domande sulla programmazione per principianti sono già state poste su siti come StackOverflow. Cerca il messaggio di errore o il bug che hai trovato e molto probabilmente troverai una soluzione. Quando fai una domanda da solo, cerca sempre per prima cosa e assicurati di spiegare a fondo il tuo problema e di spiegare i passaggi che hai già intrapreso per risolverlo . Quora è un buon mezzo per porre domande non tecniche, come argomenti di business e UX / UI.
3. Ho un'idea brillante per un'app. Da dove comincio?
Se si sta seriamente creando un'attività commerciale basata su un'app, non iniziare immediatamente con la programmazione. Innanzitutto, convalida la tua idea imprenditoriale rivolgendoti al tuo pubblico di destinazione .
Entra in contatto con potenziali clienti e sondali, chiedendo feedback .
Tieni presente che le app di maggior successo risolvono un problema immediato, in modo tale che i clienti vogliono pagare per questo . Quando hai convalidato la tua idea e hai creato una relazione con i tuoi primi clienti, procedi con la progettazione e lo sviluppo dell'applicazione vera e propria.
4. Ho bisogno di un iPhone per creare app?
No, ma è raccomandato. Xcode ha un simulatore iPhone, che esegue le tue app proprio come farebbe un iPhone fisico. Tenere un vero iPhone con l'app tra le mani è diverso dal vederlo sul monitor del tuo computer, quindi è consigliabile testare la tua app su un dispositivo reale.
Tieni presente che Xcode gira solo su Mac OS X.
5. Non sono bravo in matematica, ne ho bisogno per la programmazione?
Sì e no. È un mito urbano che per essere in grado di codificarti devi essere bravo in matematica. Molti principi di programmazione trovano le loro radici in matematica, ma non sono necessari per una comprensione di base su come creare app . Quando ti immergi più a fondo e diventi più abile nella programmazione, scoprirai di aver acquisito alcune abilità matematiche lungo il percorso.
6. Lavoro per un'azienda. Perseguo la mia idea di app con la compagnia o nel mio tempo libero?
Dipende dalla compagnia e dalla tua posizione. Sei un ingegnere e il core business della tua azienda è online, digitale o strettamente correlato alle app? Quindi potresti voler costruire un prototipo e convincere il tuo supervisore o datore di lavoro a perseguire l'idea.
Se pensi che il tuo datore di lavoro non vedrà il valore, puoi perseguire l'idea dell'app nel tuo tempo libero. Sii consapevole del tuo contratto con il tuo datore di lavoro . Le invenzioni fatte durante il tempo trascorso con la società potrebbero essere considerate proprietà intellettuale della società, non la vostra.
7. La mia idea di app esiste già nell'App Store. Cosa faccio ora?
Il fatto che esista non significa che sia una buona app . Puoi sempre creare un'app in competizione e renderla migliore di quella che è già in circolazione.
Allo stesso modo, il fatto che un'app non esista ancora non lo rende una buona idea per crearlo. Potrebbe essere che un'app sia stata pubblicata più volte, ma è stata estratta dall'App Store perché non ce n'era bisogno.
Convalida sempre l'idea dell'app dal problema che sta risolvendo e il valore che ha per i suoi utenti.
8. Perché l'iPhone a volte si chiama iOS?
C'è una leggera differenza: iPhone è il nome per l'attuale smartphone hardware e iOS sta per "i Sistema operativo". Tornando alla storia di Apple, il computer iMac è stato il primo prodotto ad avere il prefisso "i". In seguito, hanno seguito questo stile e creato più prodotti: iTunes, iPod, iPad e iPhone. È naturale chiamare il sistema operativo che funziona su iPhone, iOS.
9. Come commercializzi efficacemente un'app per iPhone?
Interi libri sono stati scritti su questa domanda! È difficile, ma non impossibile da rispondere. Tutte le app di successo risolvono un problema, in modo tale che le persone vogliono pagare per questo.
Puoi trovare un problema e trovare persone che hanno bisogno della tua soluzione, o trovare un pubblico e esaminarli per problemi a cui potresti trovare una soluzione . Resta in contatto con questo gruppo di clienti e offri loro un modo per parlare agli altri del tuo prodotto. Referral e passaparola sono una macchina di marketing efficace ed economica.
10. Qual è il peggior modo di apprendere la programmazione?
Rinunciare è uno dei peggiori modi per imparare la programmazione . Imparare una nuova abilità ha degli alti e bassi, e puoi solo andare avanti celebrando gli alti e vedendo attraverso i bassi. Rinunciare non fa parte dell'equazione.
Inoltre, scopri qual è il tuo stile di apprendimento. Non ha senso guardare video, quando scrivere codice e tentativi ed errori ti stanno meglio.
Infine, non scegliere a caso un libro sulla programmazione dalla libreria, ma trovare un metodo o un percorso di apprendimento comprovato . Quando impari lo spagnolo, non inizi a leggere un dizionario, giusto?
Risorse didattiche per iniziare
Se vuoi continuare a creare la tua prima app per iOS, in questa sezione troverai tutte le risorse di apprendimento per iniziare.
Lo sviluppo di app coinvolge molti componenti e, quando sei nuovo, può essere una vera sfida conoscere tutti gli strumenti. Non aver paura! Puoi fare la tua prima app in un giorno al massimo, senza esperienza di programmazione precedente. L'unica cosa di cui hai bisogno è una buona risorsa che ti mostri le corde e si concentri su un unico set di strumenti contemporaneamente. Ci sono un sacco di tutorial per principianti su internet, così come corsi premium.
Il processo di apprendimento: in breve
Qual è il tuo stile di apprendimento? Considera questo prima di scegliere una risorsa.
- Guardare video : Sviluppo applicazioni per smartphone CS 193P della Stanford University, disponibile per iTunes U (gratuito).
- Leggere un libro : Sams Teach Yourself Swift In 24 Hours ($ 25- $ 35) e The Swift Programming Language Book di Apple (gratuito)
- Programmazione: tutorial di programmazione di We Heart Swift, JamesonQuave e AppCoda (tutti gratuiti).
Quando hai creato la tua prima app, è un ottimo piano per immergerti brevemente in una serie di componenti uno dopo l'altro. Impara al riguardo:
- Utilizzo dei controller di navigazione, ad esempio barre delle schede e menu degli hamburger
- Usando l' hardware, come la fotocamera e l'accelerometro
- Utilizzo di layout, ad esempio il controller di visualizzazione tabella e il controller di visualizzazione di pagina
- Lavorare con le animazioni e visualizzare le transizioni
- Il ciclo di vita dell'app
- Compilatori e strumenti di costruzione
La maggior parte di questi argomenti richiede un paio di giorni (da 24 a 32 ore) di armeggiare, tentativi ed errori e ricerca di risorse.
Una volta che hai capito le basi, inizia subito a lavorare con le fonti internet e le soluzioni basate sul cloud come Parse. Tutte le app sono collegate a Internet in un modo o nell'altro.
Indipendentemente da ciò, coloro che sono abituati a imparare cose nuove spesso possono delineare il proprio piano di apprendimento e non devono necessariamente seguire un programma come un corso o un libro.
Incartare
Non sarebbe bello avere la tua app in App Store? Ora hai una descrizione di base degli strumenti necessari per creare app e cosa serve per imparare come creare le tue app. Inizia con Swift leggendo un libro o seguendo un'esercitazione, crea un'interfaccia di grande impatto con Balsamiq, procurati un account sviluppatore e pubblicalo!
Lista di riferimento completa:
- Xcode
- Interface Builder
- Programma per sviluppatori Apple
- iTunes Connect
- PROVA Scelta dei colori
- veloce
- Apache Cordova
- PhoneGap
- Sencha Touch
- RhoMobile Suite
- Elance
- oDesk
- Linee guida dell'interfaccia umana
- Glyphish
- Balsamiq Mockups
- Teehan + Lax iPhone PSD
- analizzare
- Appcelerator
- App42
- Sviluppo di applicazioni Stanford CS 193P per iPhone
- Sams ti insegni Swift in 24 ore
- We Heart Swift
- JamesonQuave
- AppCoda
- The Swift Programming Language Book
Nota del redattore : questo è scritto da Reinder de Vries per Hongkiat.com. Reinder è un imprenditore e sviluppatore di app, che crede che non ci siano abbastanza produttori di app nel mondo. Ha sviluppato oltre 50 app e il suo codice è utilizzato da centinaia di migliaia di utenti in tutto il mondo. Quando non sta programmando, insegna agli aspiranti sviluppatori come creare le proprie app su LearnAppMaking.com.
Ora Leggi: Come integrare jQuery Mobile in Phonegap / Cordova
Come ottenere più comandi vocali personalizzati da Google Now
Google Now, l' assistente vocale intelligente del gigante della ricerca, ti consente di svolgere molte attività utilizzando nient'altro che la tua voce. È possibile utilizzare il controllo vocale sul dispositivo con questa applicazione, ma è limitato alla comprensione di pochi comandi.La buona notizia è che puoi utilizzare due fantastici strumenti per estendere l'utilizzo di Google Now. Ci
Come usare WordPress Jetpack offline
Jetpack è dotato di numerosi moduli per aiutarti a utilizzare i moduli di contatto, utilizzare lo scorrimento infinito, codici brevi e molto altro ancora. Queste funzionalità possono aiutarti a trasformare il tuo sito web WordPress in hosting in modo da essere potente come i siti web sono ospitati su WordPress.c