Wie geht es weiter?

Sie haben in den letzten fünf Wochen viel gelernt, die Heuschrecke, und Sie könnten sich an diesem Punkt sogar etwas überfordert fühlen. Ich möchte Ihnen ein paar Ratschläge und ein paar Ressourcen zur Verfügung stellen, damit Sie auf dem richtigen Weg sind, ein fähiger iOS-Entwickler zu werden.

Dinge, die man beachten muss

Obwohl 2007 wie gestern aussieht, ist der mobile Speicherplatz und insbesondere iOS besonders schnell gewachsen. Die mobile Landschaft ist ohne iPhone, iPad und iPod Touch kaum vorstellbar. Aufgrund des bemerkenswerten Wachstums und der Beliebtheit der iOS-Plattform gibt es keinen Mangel an Büchern, Videos, Kursen und Blogs, die Sie bei Ihrer Suche nach einem erfahrenen iOS-Entwickler unterstützen.

Das Material, das wir in dieser Serie behandelt haben, sollte Ihnen ein gutes Verständnis der iOS-Plattform aus der Sicht eines Entwicklers vermitteln. Der erste Rat, den ich Ihnen gerne geben möchte, ist, iOS-Anwendungen weiter zu entwickeln. Warten Sie nicht, bis Sie der Meinung sind, dass Sie genug wissen, um die erste echte iOS-Anwendung zu erstellen. Sie werden am meisten lernen, indem Sie kleine Anwendungen erstellen und Lösungen für die Probleme finden, auf die Sie stoßen. Am Ende geht es bei der Programmierung darum, Probleme zu lösen. Ich finde, dass ich jede Woche mehrere Anwendungen entwickle. Dies bedeutet nicht, dass jede Anwendung im App Store veröffentlicht werden sollte - im Gegenteil. Ich beginne damit, ein spezifisches, genau definiertes Problem zu isolieren, das Teil eines größeren Projekts ist. Dann erstelle ich ein neues iOS-Projekt, das sich auf die Lösung dieses Problems konzentriert. Wenn ich eine Lösung für das Problem gefunden und implementiert habe, verfeinere ich die Lösung durch mehrere Schritte des Refactorings, um sie für die Integration in das größere Projekt vorzubereiten. Gleichzeitig habe ich eine wiederverwendbare Komponente für die spätere Verwendung erstellt. Wenn Sie sich auf die Wiederverwendbarkeit konzentrieren, schreiben Sie weniger Spaghetti-Code und sparen Zeit bei zukünftigen Projekten.

Dieser Ansatz eignet sich auch zum Erkunden neuer Frameworks oder zum Testen einer neuen Open Source-Bibliothek, über die Sie gestoßen sind. In dieser Serie haben wir eine Reihe von iOS-Projekten erstellt. Mit jedem neuen Projekt haben wir etwas Neues gelernt und sind mit Xcode immer mehr vertraut geworden. Das Kennenlernen Ihrer Entwicklungsumgebung ist ein weiteres Schlüsselelement der iOS-Entwicklung.

Mein zweiter Ratschlag ist, das Kopieren und Einfügen von im Internet gefundenen Codeausschnitten zu vermeiden. Wenn Sie nicht die Schnipsel verstehen, die Sie kopieren, profitieren Sie auf lange Sicht nicht davon. Sicher, es kann vorübergehend ein Problem lösen, mit dem Sie kämpfen, aber durch die Verwendung von zufälligen Codeausschnitten, die Sie nicht verstehen, werden Sie technische Schulden aufbauen. Dies bedeutet nicht, dass Sie keine gut gepflegten Bibliotheken in Ihre Projekte aufnehmen sollten, wie z. B. AFNetworking oder Magical Record. Es bedeutet auch nicht, dass Sie alle Implementierungsdetails solcher Bibliotheken kennen sollten. Wenn Sie vor einem Problem stehen, das Sie selbst lösen können, indem Sie eine oder zwei Stunden damit verbringen, eine Lösung zu programmieren, dann ist dies eine gute Zeit. Bei der Softwareentwicklung geht es nicht nur um Geschwindigkeit und um Ergebnisse zu liefern. Auf persönlicher Ebene geht es bei der Softwareentwicklung darum, bei dem, was Sie tun, besser zu werden, zu programmieren, und Sie werden nicht zu einem besseren Programmierer, indem Sie Codeabschnitte kopieren und einfügen, die Sie nicht vollständig verstehen. Es gibt keine Abkürzungen, um ein großartiger Programmierer zu werden.

Envato Tuts+

Bevor ich in die Liste der nützlichen Ressourcen eintauche, möchte ich erwähnen, dass Envato Tuts + bereits seit vielen Jahren existiert und eine beeindruckende Sammlung von qualitativ hochwertigen Tutorials zur iOS-Entwicklung aufgebaut hat. Fast 200 Tutorials zu Tuts + richten sich speziell an die iOS-Entwicklung, vom Anfänger bis zum fortgeschrittenen Thema.

Wo finde ich Hilfe??

Apple Entwicklerforen

Wenn Sie ein registrierter iOS-Entwickler sind, haben Sie Zugriff auf die Apple Developer-Foren. Die Apple Developer Forums sind nicht nur aktiv und gefüllt mit Entwicklern, die sich mit ihren Mitarbeitern, dem Framework und den technischen Entwicklern von DTS (Developer Technical Support) auskennen, die Foren pflegen und überwachen. Dies kann manchmal den Tag retten oder Sie sparen einen Tag.

Google zur Rettung… oder ist es Stack Overflow?

Wann immer Sie Google bei der Suche nach einer Antwort auf eine Programmierfrage oder einer Lösung für ein Problem verwenden, haben Sie die Chance, dass Google Sie auf Stack Overflow verweist. Man kann sagen, dass Stack Overflow die Softwareentwicklung und die Entwicklergemeinde revolutioniert hat. Stack Overflow ist ein großartiger Ort, um Fragen zu stellen, aber auch der Community etwas zurückzugeben, indem man anderen hilft. Unabhängig von der Sprache, mit der Sie arbeiten oder mit welcher Plattform Sie Software entwickeln, besteht die Chance, dass Stack Overflow eine lebendige Community mit Ihren Interessen hat.

GitHub

In den letzten Jahren ist Social Coding sehr populär geworden, und GitHub ist sicherlich eine der treibenden Kräfte dieses Trends. Da Sie mit der iOS-Entwicklung noch nicht vertraut sind, können Sie wahrscheinlich noch nicht an (iOS) Open Source-Projekten mitarbeiten. Nichts hindert Sie jedoch daran, einige Open-Source-Projekte zu erkunden und ihren Quellcode zu durchsuchen, um zu sehen, wie bestimmte Dinge getan werden können. Wenn Sie Ihr Lernen durch Erkunden von Code, der von anderen Entwicklern geschrieben wurde, beschleunigen möchten, müssen Sie ein Projekt auswählen, das gut gepflegt ist und sich in der Entwicklung befindet.

Bücher

C Programmierung

Ein gutes Verständnis der C-Sprache ist für jeden Cocoa-Entwickler wichtig. Sie werden jedoch feststellen, dass Sie einen langen Weg zurücklegen können, wenn Sie nur die Grundlagen der C-Sprache kennen. Mit der Zeit werden Sie jedoch auf Teile des Codes stoßen, die Sie nicht vollständig verstehen werden, wenn Sie nicht tiefer in die C-Sprache eintauchen. Der endgültige Leitfaden zum Lernen von C ist das Buch, das von Brian Kernighan und Dennis Ritchie, der Programmiersprache C, geschrieben wurde. Wie Sie sich vielleicht aus dem Artikel über das Lernen von C erinnern können, war Dennis Ritchie einer der Schöpfer der C-Sprache. Wie kann man C besser von der Person lernen, die die Sprache mitgestaltet hat? Ein weiteres großartiges Buch zum Lernen von C ist Learn C auf dem Mac von Dave Mark.

Ziel c

Obwohl Apple einen umfassenden Leitfaden für die Programmiersprache Objective-C (objektorientierte Programmierung mit Objective-C) bietet, finde ich es nicht ideal für Personen, die neu bei Objective-C sind, und schon gar nicht für Menschen, die neu in C sind Die besten Bücher über Objective-C sind die Bücher von Stephen Kochan, Programmieren in Objective-C. Stellen Sie sicher, dass Sie die neueste Ausgabe verwenden, in der auch Objective-C 2.0 behandelt wird.

Dan Walker schrieb 2010 eine beliebte Serie über Tuts + zum Lernen von Objective-C. Wenn Sie Ihr Wissen über Objective-C erweitern möchten, sollten Sie sich Dans Serie ansehen.

Mehr Bücher

Apress und O'Reilly Media sind zwei Verlage, die dafür bekannt sind, qualitativ hochwertige Bücher zur Entwicklung und Entwicklung von iOS allgemein zu veröffentlichen. Zwei ausgezeichnete Apress-Veröffentlichungen sind Beginn der iOS 7-Entwicklung und weitere iOS 6-Entwicklung. Beide Publikationen werden mit jeder neuen Version von iOS aktualisiert.

Eines der ersten Bücher, die jemals über die Entwicklung von Cocoa geschrieben wurden, ist Cocoa Programming für Mac OS X. Dieses Buch wurde von Aaron Hillegass, dem Gründer der Big Nerd Ranch, geschrieben und aktualisiert. Aaron ist in der Cocoa-Community sehr bekannt und viele Entwickler haben Cocoa-Entwicklung durch seine Bücher gelernt - einschließlich mir selbst.

Videos

WWDC

Die World Wide Developer's Conference (WWDC) von Apple ist für viele Cocoa-Entwickler das Highlight des Jahres. Jede auf der WWDC gegebene Präsentation wird aufgezeichnet und steht am nächsten Tag registrierten iOS- und Mac-Entwicklern zur Verfügung. Die Videosammlung geht auf die WWDC 2010 zurück, sodass Sie viel Material durcharbeiten können.

iTunes U

In den letzten Jahren haben mehrere Hochschulen und Universitäten mit der Entwicklung von iOS begonnen. Einige dieser Kurse sind kostenlos über das iTunes U-Programm von Apple erhältlich. Der bekannteste und am längsten laufende Kurs ist CS193p an der Standford University. Am Madison Area Technical College unterrichtet Brad Larson Advanced iPhone Development, das auch einige fortgeschrittenere Themen abdeckt. Ein weiterer Kurs zur iPhone-Entwicklung wird von Jan Borchers an der Universität Aachen gehalten.

Blogs

Es sollte Sie nicht überraschen, wenn ich Ihnen sage, dass es Hunderte, wenn nicht Tausende von Blogs gibt, die sich der iOS-Entwicklung widmen. Ich habe unten einige meiner Lieblingsblogs aufgelistet, aber es gibt noch viel mehr zu entdecken.

  • Jeff LaMarche's Blog ist einer der länger laufenden Blogs über Cocoa-Entwicklung, von denen ich weiß. Jeff hat mehrere Bücher über iOS-Entwicklung geschrieben und kennt sich aus.
  • Kakao mit Liebe ist ein Blog von Matt Gallagher. Ich würde Matts Beiträge auf keinen Fall als leichtes Lesen bezeichnen. Die meisten Artikel, die er schreibt, sind tiefgehend, voller Informationen und sehr gut geschrieben.
  • Kakao ist meine Freundin ist eine weitere Quelle großartiger Artikel. Die Autoren von Cocoa Is My Girlfriend sind Marcus Zarra, Matt Long, Fraser Hess und Saul Mora (Schöpfer von Magical Record)..
  • Obwohl Mike Ash's Blog ist nicht der schönste Blog im Web, er ist voller toller Inhalte. Besonders seine Artikel zu Fragen und Antworten zum Freitag sind eine Freude zu lesen.
  • Der Blog von Ole Begemann bietet frische und gut geschriebene Artikel zur iOS-Entwicklung und verwandten Themen.
  • NSHipster ist ein jüngerer Blog von Mattt Thompson. Mattt arbeitet derzeit bei Panic und ist einer der Entwickler von AFNetworking. Der Slogan von NSHipster lautet "... ein Journal der übersehenen Bits in Objective-C und Cocoa ...", was den Inhalt von NSHipster sehr gut zusammenfasst.

Newsletter

Vor nicht allzu langer Zeit begann Dave Verwer mit iOS Dev Weekly, einem wöchentlichen Newsletter zur Entwicklung von iOS. Wenn Sie eine sorgfältig kuratierte Liste mit Links zur iOS-Entwicklung erhalten möchten, kann ich Daves Newsletter sehr empfehlen. Habe ich schon erwähnt, dass es kostenlos ist?

Wem folgen?

Twitter ist ein hervorragendes Medium, um über die Entwicklung von iOS und OS X auf dem Laufenden zu bleiben. Ich habe eine kurze Liste von Personen in der Twittersphere zusammengestellt, denen Sie vielleicht folgen möchten.

  • Matt Gemmell
  • Aaron Hillegass
  • Steve Scott
  • Matt Gallagher
  • Michael Jurewitz
  • Dave Mark
  • Marco Arment
  • Wil Shipley
  • Fraser Speirs
  • Daniel Jalkut
  • Manton Reece
  • Mattt Thompson
  • Mike Lee
  • Craig Hockenberry

Schließlich können Sie mir auch auf Twitter folgen. Zögern Sie nicht, mich zu kontaktieren, wenn Sie eine Frage haben oder einfach nur Hallo sagen möchten.

Fazit

Ich hoffe, dass Ihnen diese Serie zur iOS-Entwicklung genauso gut gefallen hat, wie ich sie zusammengestellt habe. Wenn Sie Fragen haben, zögern Sie nicht, einen Kommentar zu schreiben oder mich auf Twitter zu kontaktieren. Vorschläge für zukünftige Themen können auch in den Kommentaren hinterlassen werden.