Die statische und starke Programmiersprache Kotlin erschien im Jahr 2011 erstmals. Die Sprache wurde in Sankt Petersburg entwickelt und trägt den Namen einer Insel. Wir haben einen Experten gefragt, was das Besondere an Kotlin ist und Herr Obser teilt seine Erfahrung mit uns:
Herr Obser, Sie sind seit einigen Jahren selbständig in diversen Projekten als Android Developer mit dem Schwerpunkt Kotlin tätig. Warum haben Sie sich für Kotlin entschieden?
Seit 2017 wird Kotlin offiziell als Programmiersprache für Android unterstützt. Spätestens seit der offiziellen Ankündigung von Google auf der hauseigenen Entwicklerkonferenz I/O in diesem Jahr ist klar, dass Kotlin die präferierte Programmiersprache im Android-Umfeld ist.
Mein erster Kontakt mit Kotlin hat schnell gezeigt, dass die Programmiersprache viele Vorteile mit sich bringt und für laufende und zukünftige Projekte ein geeigneter Kandidat als moderne Programmiersprache ist.
Können Sie unseren LeserInnen kurz erklären, was das Besondere an Kotlin ist und in welchen Bereichen diese Programmiersprache zum Einsatz kommt?
Kotlin ist eine objektorientierte Programmiersprache, die aber auch gleichzeitig eine funktionale Programmierung ermöglicht. Die Syntax der Sprache weist starke Ähnlichkeiten zu anderen modernen Sprachen wie C#, Swift und auch Java auf.
Im Gegensatz zu Java — der zuvor primären Programmiersprache für Android — erspart man sich durch Kotlins Typinferenz in den meisten Fällen die explizite Angabe der Typen von Variablen. Dennoch ist Kotlin stark typisiert und erlaubt damit eine Typprüfung bereits zur Compilezeit, sodass man an dieser Stelle keine Abstriche bei der sicheren Entwicklung machen muss.
Die Reduktion des geschriebenen Programmcodes ist ein genereller Vorteil von Kotlin. Durch die prägnante Syntax kann die gleiche Funktionalität oft mit einer reduzierten Anzahl an Codezeilen erreicht werden. Zu betonen ist hier insbesondere, dass dies nicht zu Lasten der Lesbarkeit geht, sondern der Programmcode in der Regel zwar knapp, aber sehr verständlich ausgedrückt werden kann.
Ein signifikanter Vorteil von Kotlins Typsystem ist die strikte Unterscheidung zwischen non-nullable und nullable Typen — sprich zwischen Typen die immer initialisiert sind und einen Wert besitzen und Typen, die potentiell (noch) nicht initialisiert sind. Fehler aufgrund nicht initialisierter Variablen und Rückgabewerte gehören damit der Vergangenheit an, da Nullables explizit sicher gehandelt werden müssen. Damit eliminiert Kotlin eine der häufigsten Fehlerquellen bei der Implementierung.
Wie schätzen Sie die Zukunft für diesen Skill ein? Ist Kotlin zukünftig möglichen Herausforderungen gewachsen?
Kotlin ist seit seiner Veröffentlichung 2012 definitiv den Kinderschuhen entwachsen und zeichnet sich als hervorragende Programmiersprache für neue Projekte aus. Gerade die nahtlose Interoperabilität mit bestehenden Java-Applikationen erlaubt einen fließenden Übergang von Java nach Kotlin.
Der Hersteller JetBrains arbeitet weiter an Verbesserungen und neuen Funktionen der Sprache, sodass hier — gemeinsam mit Google — ein großer Hersteller hinter der Weiterentwicklung von Kotlin steht. Nach meiner Ansicht spricht daher nur wenig gegen den Einsatz von Kotlin.
Gerade auch das (noch) experimentelle Feature Kotlin-Multiplattform hat großes Potential in Zukunft die Programmierung für unterschiedliche Zielplattformen zu erleichtern.
Durch Kotlin-Multiplattform lässt sich derselbe Kotlin-Code sowohl im Backend, als auch auf Android, iOS und, in Form von JavaScript, sogar im Webbrowser nutzen. Dies verringert den Implementierungs- und Wartungsaufwand enorm und verspricht bei durchdachter Planung eine enorme Einsparung von Personalressourcen.
Vielen Dank für Ihre Antworten Herr Obser! Wir wünschen Ihnen viel Erfolg bei Ihren Projekten.
Hier geht es zum Profil des Android Developers Sven Obser.