Abo
  • Services:

Transpiler: Googles Inbox zu zwei Dritteln plattformübergreifender Code

Um native iOS- und Android-Apps sowie die Web-App für Inbox möglichst gemeinsam weiter zu entwickeln, setzt Google auf Transpiler, die Java in Javascript und Objective-C übersetzen.

Artikel veröffentlicht am ,
Inbox schreibt Google auf für iOS und das Web zum Teil in Java.
Inbox schreibt Google auf für iOS und das Web zum Teil in Java. (Bild: Google)

Ungefähr zwei Drittel des Client-Codes von Googles neuem E-Mail-Dienst Inbox werden plattformübergreifend genutzt. Das ist insofern ungewöhnlich, da für Android in Java, für iOS in Objective-C und für das Web in Javascript programmiert wird. Dennoch ist eine weitgehend einheitliche Code-Pflege möglich. Google nutzt dafür Transpiler und das Konzept Model View Controller (MVC) zur Strukturierung.

Stellenmarkt
  1. Universität Passau, Passau
  2. Viega Holding GmbH & Co. KG, Attendorn

Letzteres erlaubt den Entwicklern eine klare Trennung der darzustellenden Daten sowie der Anwendungslogik von der plattformspezifischen Oberfläche, für die unter anderem das Android SDK, UIKit für iOS sowie CSS für die Web-Anwendung genutzt werden. Die Logik und die Datenmodelle werden in Java geschrieben, was so unter Android direkt weiter verwendet werden kann.

Programmiersprachen ineinander übersetzen

Für iOS und die Web-Anwendung verwendet Google zwei selbst entwickelte Transpiler. Mit J2ObjC wird aus den Java-Quellen Objective-C-Code erzeugt, das Google Web Toolkit (GWT) erstellt entsprechend Javascript, das im Browser ausgeführt werden kann. Dadurch spart sich Google eigenen Angaben zufolge einen erheblichen Mehraufwand ein. Immerhin müssten Dinge wie die Netzwerkverwaltung, das Zwischenspeichern von Objekten oder die Unterstützung für Veränderungen an der Nutzerverwaltung für alle drei Clients korrekt implementiert werden und ständig aktualisiert werden.

Etwas problematisch wird diese Herangehensweise bei der Speicherverwaltung, da Java einen Garbage Collector (GC) nutzt, Objective-C hingegen eine Referenzzählung. J2ObjC verfolgt dabei den Ansatz, dass Speicherbereiche für Objekte, die normalerweise von GC aufgeräumt würden, freigegeben werden, wenn ein Autorelease-Pool leerläuft. Außerdem müssen Zyklen in dem Programmablauf aufgebrochen werden können, weshalb in dem Java-Code bereits schwache Referenzen annotiert werden. Diese werden wiederum vom Transpiler so übersetzt, dass die korrespondierenden Eigenschaften mit dem Zusatz __weak versehen werden.

Dank dieser Vorgehensweise habe man es geschafft, ein Produkt für drei Plattformen mit den gleichen Funktionen und vor allem termingerecht zu veröffentlichen, erklärt Google.



Anzeige
Spiele-Angebote
  1. 54,99€ mit Vorbesteller-Preisgarantie
  2. 54,99€ mit Vorbesteller-Preisgarantie
  3. 16,99€

foxylion 26. Nov 2014

Weil Business-Logik auch so toll Bibliotheken des Zielsystems nutzen kann. Das enzige...

mxcd 25. Nov 2014

Das sähe ich dann als zutreffend an, wenn Google gleich eine entsprechende Webanwendung...

tomate.salat.inc 25. Nov 2014

Hatte ich auch erst vermutet, aber nach nochmaligem Lesen glaube ich, er meinte schon...

Nein! 25. Nov 2014

Hast mich neugierig gemacht. Teil deine Theorie.


Folgen Sie uns
       


Apple WWDC 2018 Keynote in 11 Minuten - Supercut

Im Supercut zur WWDC 2018 zeigen wir in zehn Minuten, was Apple Entwicklern und Nutzern von iOS 12, MacOS Mojave und WatchOS 5 und TvOS präsentiert hat.

Apple WWDC 2018 Keynote in 11 Minuten - Supercut Video aufrufen
Deutsche Siri auf dem Homepod im Test: Amazon und Google können sich entspannt zurücklehnen
Deutsche Siri auf dem Homepod im Test
Amazon und Google können sich entspannt zurücklehnen

In diesem Monat kommt der dritte digitale Assistent auf einem smarten Lautsprecher nach Deutschland: Siri. Wir haben uns angehört, was die deutsche Version auf dem Homepod leistet.
Ein Test von Ingo Pakalski

  1. Patentantrag von Apple Neues Verfahren könnte Siri schlauer machen
  2. Siri vs. Google Assistant Apple schnappt sich Googles KI-Chefentwickler
  3. Digitaler Assistent Apple will Siri verbessern

K-Byte: Byton fährt ein irres Tempo
K-Byte
Byton fährt ein irres Tempo

Das Startup Byton zeigt zur Eröffnung der Elektronikmesse CES Asia in Shanghai das Modell K-Byte. Die elektrische Limousine basiert auf der Plattform des SUV, der vor fünf Monaten auf der CES in Las Vegas vorgestellt wurde. Unter deutscher Führung nimmt der Elektroautohersteller in China mächtig Fahrt auf.
Ein Bericht von Dirk Kunde

  1. KYMCO Elektroroller mit Tauschakku-Infrastruktur
  2. Elektromobilität Niu stellt zwei neue Elektromotorroller vor
  3. 22Motor Flow Elektroroller soll vor Schlaglöchern warnen

Elektroautos: Ladesäulen und die Tücken des Eichrechts
Elektroautos
Ladesäulen und die Tücken des Eichrechts

Wenn Betreiber von Ladestationen das Wort "eichrechtskonform" hören, stöhnen sie genervt auf. Doch demnächst soll es mehr Lösungen geben, die die Elektromobilität mit dem strengen deutschen Eichrecht in Einklang bringen. Davon profitieren Anbieter und Fahrer gleichermaßen.
Eine Analyse von Friedhelm Greis

  1. WE Solutions Günstige Elektroautos aus dem 3D-Drucker
  2. Ladesäulen Chademo drängt auf 400-kW-Ladeprotokoll für E-Autos
  3. Elektromobiltät UPS kauft 1.000 Elektrolieferwagen von Workhorse

    •  /