Ați învățat multe în ultimele cinci săptămâni, lăcustă, și ați putea chiar să vă simțiți puțin copleșiți în acest moment. Aș dori să vă las cu un sfat și o grămadă de resurse pentru a vă menține pe drumul cel bun pentru a deveni un dezvoltator iOS competent.
Chiar dacă anul 2007 pare a fi ieri, spațiul mobil, în special iOS, a crescut într-un ritm incredibil. Este greu de imaginat peisajul mobil fără iPhone, iPad și iPod Touch. Ca urmare a creșterii și popularității remarcabile a platformei iOS, nu există lipsă de cărți, videoclipuri, cursuri și bloguri care să vă ghideze în căutarea dvs. de a deveni un dezvoltator iOS calificat.
Materialul pe care l-am acoperit în această serie ar fi trebuit să vă dau o bună înțelegere a platformei iOS din perspectiva dezvoltatorului. Prima sfat pe care aș vrea să vă dau este să continuați să construiți aplicații pentru iOS. Nu așteptați până când credeți că știți suficient pentru a începe să creați prima aplicație iOS reală. Veți învăța cel mai mult prin crearea de aplicații mici și găsirea de soluții la problemele pe care le întâlniți în timp ce mergeți. În cele din urmă, programarea vizează rezolvarea problemelor. Mă găsesc să creez mai multe aplicații în fiecare săptămână. Acest lucru nu înseamnă că fiecare aplicație este demnă de publicare în App Store - exact opusul. Încep să izolez o problemă specifică, bine definită, care face parte dintr-un proiect mai amplu. Apoi, creez un nou proiect iOS care se concentrează pe rezolvarea acelei probleme. Când am găsit și am implementat o soluție la problemă, perfecționez soluția prin mai mulți pași de refactorizare pentru ao pregăti pentru integrare în proiectul mai amplu. În același timp, am creat o componentă reutilizabilă pentru o utilizare ulterioară. Dacă vă concentrați asupra reutilizării, este mai puțin probabil să scrieți cod spaghete și mai multe șanse să economisiți timp pentru proiecte viitoare.
Această abordare este, de asemenea, excelentă pentru a explora noi cadre sau pentru a încerca o nouă bibliotecă open source pe care ați dat peste ea. În această serie, am creat un număr de proiecte iOS. Cu fiecare proiect nou, am învățat ceva nou și, pe parcurs, am devenit din ce în ce mai familiarizați cu Xcode. Familiarizarea cu mediul de dezvoltare este un alt element cheie al dezvoltării iOS.
Al doilea sfat este să evitați copierea și inserarea fragmentelor de cod pe care le găsiți pe web. Dacă nu înțelegeți fragmentele pe care le copiați, nu veți beneficia de acestea pe termen lung. Sigur, poate rezolva temporar o problemă cu care vă confruntați, dar folosind fragmente aleatorii de cod pe care nu le înțelegeți, veți crea datorii tehnice. Acest lucru nu înseamnă că nu trebuie să includeți biblioteci bine întreținute în proiectele dvs., cum ar fi AFNetworking sau Magical Record. De asemenea, nu înseamnă că trebuie să cunoașteți fiecare detaliu al implementării acestor biblioteci. Dacă vă confruntați cu o problemă pe care o puteți rezolva, petrecându-vă una sau două ore de codificare a unei soluții, atunci este timpul petrecut bine. Dezvoltarea de software nu se referă doar la viteză și rezultate. La nivel personal, dezvoltarea de software este despre a deveni mai bună la ceea ce faci, de programare, și nu devii un programator mai bun prin copierea și lipirea bucăți de cod pe care nu le înțelegi pe deplin. Nu există comenzi rapide pentru a deveni un mare programator.
Înainte de a mă arunca în lista de resurse utile, vreau să menționez că Envato Tuts + a fost în jur de mulți ani și a construit o colecție impresionantă de tutoriale de înaltă calitate pe dezvoltarea iOS. Aproape 200 de tutoriale despre Tuts + sunt destinate în special dezvoltării iOS, variind de la începători la subiecte avansate.
Dacă sunteți un dezvoltator înregistrat iOS, atunci aveți acces la Forumurile pentru dezvoltatori Apple. Nu numai că Forumurile dezvoltatorilor Apple sunt active și pline de dezvoltatori care știu lucrurile, cadrele și inginerii DTS (Suport tehnic pentru dezvoltatori) mențin și monitorizează forumurile, care uneori vă pot salva ziua - sau vă pot salva o zi.
Ori de câte ori vă aflați folosind Google pentru a găsi un răspuns la o întrebare de programare sau o soluție la o problemă pe care o aveți, este posibil ca Google să vă îndrepte spre sincronizare. Este corect să spunem că Stack Overflow a revoluționat dezvoltarea de software și comunitatea dezvoltatorilor. Stack Overflow este un loc minunat de a pune întrebări, dar și de a da înapoi comunității sale, ajutându-i pe alții. Indiferent de ce limbă lucrați sau de ce platformă dezvoltați software-ul, este posibil ca Stack Overflow să aibă o comunitate vibrantă axată pe interesele dvs..
În ultimii ani, codarea socială a devenit foarte populară, iar GitHub este cu siguranță una din forțele motrice ale acestei tendințe. Deoarece sunteți nou în dezvoltarea iOS, probabil că nu veți putea contribui la proiectele open source (iOS) încă. Cu toate acestea, nimic nu te oprește în explorarea unor proiecte open source și în navigarea codului sursă pentru a vedea cum pot fi făcute anumite lucruri. Dacă doriți să accelerați procesul de învățare prin explorarea codului scris de alți dezvoltatori, atunci este esențial să alegeți un proiect bine întreținut și în curs de dezvoltare activă.
O bună înțelegere a limbajului C este importantă pentru fiecare dezvoltator de cacao, dar veți observa că puteți obține un drum lung, cunoscând doar elementele de bază ale limbajului C. Odată cu trecerea timpului, veți întâlni bucăți de cod pe care nu le veți înțelege pe deplin dacă nu vă aruncați adânc în limba C. Ghidul definitiv pentru învățarea C este cartea scrisă de Brian Kernighan și Dennis Ritchie, C Programming Language. După cum ați putea aminti din articolul despre învățarea C, Dennis Ritchie a fost unul dintre creatorii limbii C. Ce modalitate mai bună de a învăța C de la persoana care a ajutat la crearea limbii? O altă carte excelentă pentru învățarea C este C Learn C on the Mac de Dave Mark.
Deși Apple oferă un ghid cuprinzător al limbajului de programare Obiectiv-C (Object-Oriented Programming with Objective-C), consider că nu este ideal pentru persoanele care sunt noi în Obiectiv-C și cu siguranță nu pentru oamenii noi în C. Unul dintre cele mai bune cărți despre Obiectiv-C este cartea scrisă de Stephen Kochan, Programarea în Obiectiv-C. Asigurați-vă că ați luat cea mai recentă ediție, care discută și despre Obiectiv-C 2.0.
De asemenea, notează, în 2010, Dan Walker a scris o serie populară despre Tuts + despre învățarea obiectivului C. Dacă doriți să vă extindeți cunoștințele despre Obiectiv-C, atunci vă încurajez să aruncați o privire la seria lui Dan.
Apress și O'Reilly Media sunt doi editori care sunt cunoscuți pentru publicarea de cărți de înaltă calitate privind dezvoltarea i dezvoltării iOS în general. Două publicații excelente Apress sunt începând cu iOS 7 Development și iOS 6 Development. Ambele publicații sunt actualizate cu fiecare nouă lansare de iOS.
Una dintre primele cărți scrise despre dezvoltarea cacao-ului este programarea de cacao pentru Mac OS X. Această carte este scrisă și actualizată de Aaron Hillegass, fondatorul Big Nerd Ranch. Aaron este foarte cunoscut în comunitatea de cacao și mulți dezvoltatori au învățat dezvoltarea cacao-ului prin intermediul cărților sale - inclusiv mine.
Conferința World Wide Developer (WWDC) a Apple este punctul culminant al anului pentru mulți dezvoltatori de cacao. Fiecare prezentare oferită la WWDC este înregistrată și disponibilă a doua zi dezvoltatorilor înregistrați iOS și Mac. Colecția de videoclipuri revine la WWDC 2010, astfel încât să aveți o mulțime de materiale pentru a trece prin.
În ultimii ani, un număr de colegii și universități au început să predea dezvoltarea iOS. Unele dintre aceste cursuri sunt disponibile prin programul Apple iTunes U gratuit. Cea mai cunoscută și mai lungă cursă este CS193p de la Universitatea Standford. La Colegiul Tehnic Madison Area, Brad Larson învață Advanced iPhone Development, care acoperă și câteva subiecte mai avansate. Un alt curs despre dezvoltarea iPhone-ului este dat de Jan Borchers la Universitatea din Aachen.
Nu ar trebui să vă surprindă când vă spun că există sute de mii de bloguri dedicate dezvoltării iOS. Am enumerat câteva din blogurile mele preferate de mai jos, dar sunt multe pentru tine de descoperit.
Nu cu mult timp în urmă, Dave Verwer a lansat iOS Dev Weekly, un newsletter săptămânal despre dezvoltarea iOS. Dacă doriți să primiți o listă a legăturilor legate de dezvoltarea iOS atentă, atunci vă pot recomanda un newsletter Dave. Am menționat că este gratuit?
Twitter este un mediu excelent pentru a fi la curent cu dezvoltarea iOS și OS X. Am compilat o scurtă listă de oameni din zona de twitter, pe care ați putea dori să o urmați.
În fine, poți să mă urmărești și pe Twitter. Nu ezitați să mă pingeți dacă aveți o întrebare sau dacă doriți să spuneți doar hi.
Sper că v-ați bucurat de această serie pe dezvoltarea iOS-ului la fel de mult cum mi-a plăcut să o pun împreună. Dacă aveți întrebări, nu ezitați să lăsați un comentariu sau să mă ping pe Twitter. Sugestii pentru subiecte viitoare pot fi, de asemenea, lăsate în comentarii.