Kotlin vs Java: Wird Kotlin Java ersetzen?
Veröffentlicht: 2021-10-05Ein Artikel, der alle Hauptschönheiten der beiden Sprachen für die mobile Android-Entwicklung beschreibt - Kotlin bzw. Java.
Der Artikel stammt vom 10. März 2017, und zu diesem Zeitpunkt ist Kotlin noch keine offizielle Google-Sprache geworden.
Wenn Sie Entwickler auswählen, die an Ihrer benutzerdefinierten Android-Anwendung arbeiten, ist eine bestimmte Technologie, die sie verwenden, für Sie von entscheidender Bedeutung. Die beiden am häufigsten verwendeten Sprachen für Google sind jetzt Java und Kotlin (obwohl es immer noch keine offizielle Unterstützung von Google gibt). Weitere Überlegungen zeigen jedoch, dass die Programmiersprache auch einen Teil Ihrer Zeit und Kosten einsparen kann.
Lesen Sie auch: Gründe für die Ablehnung von Google Play
Eine interessante Tatsache: Kotlin wurde nach einer Insel benannt (Kotlin-Insel, die sich in der Nähe der Stadt Sankt Petersburg befindet); Diese relativ neue Programmiersprache von Kotlin entwickelt sich allmählich zu einer massiven Kraft mit einem riesigen Potenzial für die zukünftigen Android-Apps, auf denen ihre Entwicklung basiert.
Treffen Sie technisch 6, aber wirklich 1-jährige Kotlin.
Ursprünglich, im Jahr 2011 als vorgestellte Version, erschien Kotlin erstmals als neue Sprache für Java Virtual Machine von einem Team von Saint-Peterburg-Programmierern namens Jet Brains. Der Grund, warum sie sich entschieden haben, ein neues „Spinning Wheel“ für die Android-Entwicklung zu entwickeln, ist ziemlich leicht zu verstehen. anscheinend gibt es ein paar:
Java gibt es schon seit 22 Jahren (ein ziemlicher Begriff für eine Programmiersprache), weshalb es viele Features gibt, die aufgrund der Massivität und Obsoleszenz von Java nicht implementiert werden können.
Java erfordert das Schreiben langer Codekombinationen
Auf Java geschriebener Code dauert eine ganze Weile, bis er kompiliert ist
Das Entwicklungsteam von Kotlin drückte es jedoch milde aus und stimmte zu, dass viele Sprachen nicht die Mischung von Funktionen haben, nach denen sich Ingenieure weltweit sehnen, außer Scala; Allerdings, wie Dmitry Jeremov, der technische Leiter der Jet Brains Corporation, betonte, ist die Kompilierungszeit von Scala langsam und unzureichend für die Geschwindigkeit, mit der sich moderne IT-Dienste bewegen.
Schließlich war der Februar des letzten Jahres ein besonderer Monat für den gesamten JB-Konzern – denn die erste Kotlin 1.0-Version hat offiziell die Welt in einem stabilen Release erblickt.
Seitdem rieten uns Jet Brains in ihrem offiziellen Blog, dran zu bleiben und versprachen, dass das neue 1.1 Kotlin-Update, das sich auf Bugfixing und Java-Script-Unterstützung konzentriert, bald erscheinen wird. Zum Zeitpunkt der Veröffentlichung dieses Artikels (10. März 2017) wurde die 1.1 Kotlin-Version erst vor einer Woche veröffentlicht, aber die Welt spricht bereits darüber. Wenn Sie also einen Vergleich zwischen Kotlin und Java machen, gibt es signifikante Unterschiede?
Kein Rad neu erfinden.
Wenn man sich die Unterschiede zwischen Kotlin und Java ansieht, zeigen sich definitiv einige Vorteile von Kotlin gegenüber Java, die für diejenigen, die eine Android-App entwickeln möchten, einen gewünschten Effekt haben könnten.
Fangen wir also irgendwo am Anfang an.
Gründe für die Verwendung von Kotlin:
1) Kotlin benötigt weniger Code zum Schreiben.
Mindestens 20 % weniger. Wie bereits erwähnt, ist das 22-jährige Java bereits etwas veraltet + Oracle hat Java als abwärtskompatible Sprache entwickelt, was im Grunde bedeutet, dass jede neu gestartete Version die Funktionen der vorherigen unterstützen muss , mit jedem Update wird es schwieriger, einige neue Funktionen zu integrieren; folglich nimmt auch die Menge an zu schreibendem Code zu.
Im Gegenteil, Kotlins Architektur wurde von Grund auf neu geschaffen, was das Fehlen einer Schicht-zu-Schicht-Architektur verursachte.
2) Auf Kotlin treten weniger Quetschungen auf.
Kotlin JVM hat viel weniger Probleme als den oft als "eine Milliarde Dollar Fehler" bezeichneten - das Problem von NullPointerExeption ist dort vermeidbar. NullPointer ist noch in jeder Programmiersprache vorhanden, aber die Art und Weise, wie man damit arbeitet, kann unterschiedlich sein. Für den Datensatz müssen Sie in Java manuell prüfen, ob der Link null ist oder nicht. Wenn Null verpasst wird - Boom, Crash, voila! Zu Kotlins Gunsten wird jedes Objekt in dieser Sprache automatisch auf Null gesetzt + es gibt automatisierte Überprüfungen für den NullPointer - um sicherzustellen, dass der Code ohne ihn richtig funktioniert.
3) Kotlin ist eine typsichere Sprache.
Auch in Kotlin ist jede Klasse eine Funktion und umgekehrt; Darüber hinaus bietet Kotlin für Android wie Swift für iOS optionale Typen, die bei allen Sicherheitsüberprüfungen helfen.
Lesen Sie auch: Vorteile der Verwendung von Siwft gegenüber Objective-C
4) Kotlin spart Ihnen etwas von Ihrer kostbaren Zeit.
Wie schon gesagt, weniger Code garantiert fast weniger Fehler bzw. weniger Zeitaufwand für den gesamten Codierungsprozess. Und nicht selten berechnen Softwareentwicklungsteams die Gesamtkosten des Projekts anhand der Stunden, die Entwickler für die Codierung aufwenden.
Hier sind einige Vorteile von Kotlin gegenüber Java. Obwohl Kotlin noch nicht offiziell von Google unterstützt wird und bei der ersten Code-Kompilierung ein paar Sekunden länger dauert, wird mit all diesen Punkten klar, dass die Programmiersprache von Kotlin viele Schönheiten hat, und wenn man die Geschwindigkeit berücksichtigt nimmt Fahrt auf, ohne Zweifel ist es eine kluge Idee, Kotlin-Switch zu verwenden.
Lesen Sie mehr über die Unterschiede zwischen Android- und iOS-Entwicklung
"Was ist, wenn ich umschalte?"
Die Welt, in der wir leben, ist bei vielen Gelegenheiten ziemlich unberechenbar, und in Bezug auf die Entwicklung mobiler Anwendungen muss manchmal das Team, mit dem Sie zusammengearbeitet haben, geändert werden. Nehmen wir an, Sie haben früher mit einem Outsourcing-Team gearbeitet, aber jetzt gibt es eine Anfrage nach einer Eigenentwicklung für Ihr Projekt. Wie schwierig wäre eine "Übersetzung" von einer Sprache in eine andere?
Auch hier hängt die Antwort wirklich von der Technologie ab, die Ihre früheren Ingenieure verwendet haben. Nehmen wir als Beispiel einen Wechsel von Java zu Kotlin – dann gibt es zweifellos eine Lösung. Jet Brains hat einen Java-Kotlin-Konverter entwickelt, der bei der Lösung dieses Problems hilft. Allerdings treten während des Konvertierungsprozesses noch einige Fehler auf, so dass er überwacht und einige der Operationen sogar manuell eingestellt werden müssen.
Auf der anderen Seite wäre die Umstellung von Java auf Kotlin noch stagnierender und schmerzhafter, da nicht alle Funktionen, Methoden und Variablen konvertiert werden könnten. Die vielleicht schnellste Lösung für das neue Team, mit dem Sie zusammenarbeiten, wäre, wenn möglich weiter auf Java zu schreiben.
Außerdem hängt die Möglichkeit der Konvertierung in eine andere Sprache von der Größe Ihres Projekts ab. Im Allgemeinen gibt es 3 Arten von Projekten: kleine , mittlere und große .
Kleine Projekte dauern etwa 160-200 Stunden, und wenn keine komplexe Architektur vorhanden ist, können sie möglicherweise nach Kotlin übertragen werden;
Mittlere Projekte bestehen aus einer Entwicklung von bis zu 5 Monaten und sind ziemlich umständlich zu konvertieren;
Die Entwicklung großer Projekte beginnt ab einer Laufzeit von 5 Monaten und Projekte dieser Kategorie können nicht in eine andere Sprache umgewandelt werden.
Insgesamt ist die beste Option für einen „wechselnden“ Kunden immer, mit Ingenieuren zusammenzuarbeiten, die die gleichen Technologien, Sprachen und Frameworks verwenden wie die vorherigen Projektinhaber. Wie auch immer, wenn die Änderung unvermeidlich ist, empfehlen wir dringend, „das neuere Lexikon“ zu wählen; um beispielsweise Kotlin gegenüber Java zu wählen.
Eine prägnante Möglichkeit, auf intelligentere Weise für Android zu codieren.
So lautet zumindest der Slogan von Kotlin. Zweifellos hat Kotlin seine Vor- und Nachteile, aber viele Funktionen wurden mit der Einführung von Kotlin praktikabel und weiter.
In Mind Studios haben wir uns auch mit Kotlin für die Android-Entwicklung beschäftigt, seit die erste stabile Version auf den Markt kam. Mi Band Control (ein Aktivitätstracker für Mi Band Wristband) ist eine vollständig auf Kotlin entwickelte Anwendung. Diese Erfahrung hat bewiesen, dass Kotlin auch von unseren Entwicklern eine intelligentere und prägnantere Art der Programmierung für Android ist. Wählen Sie also die Sprache für Ihre App mit Bedacht aus, aber denken Sie daran, auf dem Laufenden zu bleiben!
Geschrieben von Vsevolod Kaganovich und Elina Bessarabova.