Ja, Objective-C ist natürlich noch immer wichtig. Und wird es in nächster Zeit auch bleiben. Und da es eine der häufigsten Fragen von Studenten (neben Problemen nach der Umbenennung von Outlets) ist, möchte ich in diesem Artikel mal etwas differenzierter darauf antworten. Hier findest Du fünf Gründe für Objective-C.

1. Objective-C ist noch immer präsent

Swift gehört die Zukunft. Aber Objective-C ist nicht nur Vergangenheit. Es ist auch Gegenwart. Und selbst wenn Du Deine Projekte komplett mit Swift aufbaust, begegnet Dir früher oder später Objective-C Code. Es gibt sehr viele Beispiele und Tutorials. Egal ob auf Youtube, Stackoverflow oder sogar in offizieller Dokumentation von Apple. Egal ob als Hobby oder professioneller Entwickler. Dir begegnet Objective-C regelmäßig noch weiterhin.

2. Es gibt noch immer Objective-C Apps

Während Swift eine wunderbare Sprache ist, gibt es auch Unternehmen die aktuell weiterhin auf Objective-C setzen. Gerade wenn die Apps bereits stabil funktionieren, macht ein Rewrite mit Swift meist wenig Sinn.

Never change a running system? Ganz so einfach ist es nicht. Aber ein stabiles Projekt ohne weitere Veranlassung auf Swift umzustellen, lohnt sich oft nicht. Bei der Kalkulation ist nicht nur die Umstellung auf eine andere Syntax wichtig. In Unternehmen müssen ggf. Entwickler geschult werden, Code wird neu geschrieben und muss anschließend umfassend getestet werden.

Während die Syntax schon dank Xcode schnell validiert ist, sind inhaltliche und logische Fehler schwerer auszumachen. Test-Driven-Development und Co sind ein gutes Mittel. Sie verkürzen die Entwicklungszeit aber nicht. Kurzfristig steigt sogar der Aufwand. Die Kosten werden noch mehr.

Deshalb bleiben bestehende Apps häufig Objective-C, oder zumindest die Basis. Denn neue Features und Frameworks können natürlich auch in Swift entwickelt und beide Sprachen gemischt werden.

3. Effizienter dank Objective-C Kenntnissen

In nächster Zeit profitiert jeder Swift-Entwickler von Objective-C Kenntnissen. Die folgenden Szenarien machen es deutlich.

Der Macher: ich will eine App selbst bauen

Einige meiner Studenten sind Entwickler und möchten eine App entwickeln. Es gibt konkrete Anforderungen, einen (zumindest groben) Entwurf oder eine Business Idee. Das ist pragmatisch und setzt nicht immer die große Leidenschaft voraus.

Mit Programmiererfahrung, hochwertigen Kursen (wie auf codingtutor.de *hehe*) und etwas Geschick kann eine konkrete Idee realisiert werden. Wer sich hier einordnet, profitiert bei der Suche nach Lösungen von Objective-C Wissen. Quer durch das Netz gibt es immer wieder Beispiele, die nicht nur in Swift präsentiert werden.

Der Hobby-Entwickler: ich arbeite nebenbei an meiner App

Gerade als Hobby-Entwickler gibt es meist keine konkrete Deadline. Und in dem Fall ist Objective-C gleich doppelt interessant. Denn es geht ja um Spaß haben, das Lernen und Erfahrung sammeln. Objective-C Kenntnisse helfen nicht nur beim Lesen von Beispielen.

Es ist mit Hintergrundwissen viel leichter die Vorteile und Gründe für bestimmte Elemente zu verstehen. Warum gibt es Optionals? Wie werden Konstante und Variable Werte unter Objective-C realisiert? Welche anderen Unterschiede gibt es?

Der Profi: verdient Geld als App-Entwickler

Wer beruflich Apps entwickelt, kommt an Swift und Objective-C nicht vorbei. Vielleicht gibt es eine bestehende Objective-C Basis, einzelne Frameworks oder ganze Projekte in sowohl der einen oder der anderen Sprache.

In einer Agentur oder als Freelancer wirst Du vermutlich sogar von Kunde zu Kunde mit unterschiedlichen Sprachen zu tun haben. Diese Woche? Objective-C! In drei Wochen wenn der Sprint vorbei ist? Wieder das nächste Swift-Projekt. Und zwischendurch? Bugfixing in einem Objective-C Projekt.

4. Objective-C für mehr Verständnis

Es gibt die Empfehlung jedes Jahr eine neue Programmiersprache zu lernen. Du musst natürlich Dein bisherigen Wissen nicht über Bord werfen. Stattdessen überträgst Du neue Erkenntnisse und setzt Sie mit vorhandener Erfahrung in Verbindung. Auf Dauer kannst Du unterschiedliche Situationen immer besser lösen und wirst gleichzeitig ein besserer Software-Architekt.

Bei Objective-C und Swift ist dieser Effekt besonders stark. Normalerweise lernst du eine neue Sprache, die Paradigmen und die jeweiligen Konzepte. In diesem Fall arbeitest Du später aber mit den gleichen Bibliotheken. Du arbeitest mit dem Cocoa bzw. dem Cocoa Touch Framework, lernst sie aber aus verschiedenen Blickwinkeln kennen.

Besonders wertvoll? Das Wissen rund um die Speicherverwaltung, Pointer und Referenzen. Während auch Swift Pointer bietet, sind in Objective-C immer noch die ursprünglichen C-Style Pointer verfügbar. Noch tiefer kommst Du in der Abstraktionsebene fast nur noch mit Assembler.

5. Objective-C als möglicher Übergang zu C/C++

Objective-C ist kein zufälliger Begriff. Die Sprachen sind wirklich in vielerlei Hinsicht gleich. Gerade die Basis ist wie bei der Sprache C. Wenn es Dir wie mir geht, wirst Du natürlich nicht bei einer Sprache bleiben. Und selbst wenn nun Objective-C nur eine Zwischenstation ist, bereitest Du Dich auch gleich auf den Einstieg in C/C++ vor.

Die primitiven Datentypen sind z.B. in beiden Sprachen fast gleich. Du kannst bereits Pointer und andere Elemente kennenlernen, die auch in C vorhanden sind. Dazu gehören die Kontrollstrukturen, Operatoren und Co.

Du interessierst Dich (noch) nicht für andere Sprachen? Kein Problem. Bleib bei Swift, vielleicht auch bei Objective-C. Der Einstieg in bspw. C wird Dir trotzdem leichter fallen. Und dagegen kannst Du Dich auch nicht wehren.

Tags:

Schreib einen Kommentar

Your email address will not be published.