Für eine Youthweb-App wird eine API benötigt. Und wer die Entwicklung der Youthweb-API in den letzten Wochen im Entwickler-Blog oder im Forum beobachtet hat, wird festgestellt haben, dass sich hier viel getan hat. Hier möchten wir euch einige Fragen zur API und zur App-Entwicklung beantworten.
Was ist eine API?
Eine API ist eine Programmierschnittstelle für Anwendungen (englisch: Application Programming Interface), mit deren Hilfe eine App mit dem Youthweb-Server reden kann. Wenn man sich in einer App die MyPages eines Users ansehen will, dann "redet" die App mit dem Youthweb-Server und bekommt die Daten geliefert. Welche Wörter in dieser "Sprache" verwendet werden können, wird in der API festgelegt und kann hier eingesehen werden.
Wie ist der Stand der API?
Die API kann bereits Daten über User, Pinnwand-Posts, Events und (ab Sonntag auch) Freunde ausliefern und Pinnwand-Posts erstellen. Die API befindet sich aber noch im Closed Alpha Status. Das bedeutet, dass sich zwar jeder Entwickler eine App registrieren kann, aber wir jeden App noch manuell freischalten.
Warum fehlen in der API noch so viele Sachen?
Die API befindet sich noch in der Entwicklung und es fehlen noch Dinge wie Nachrichten, Gebetsanliegen, Gruppen oder das Forum. Wir bauen die API vorwiegend nach Bedarf der App-Entwickler und müssen auch gucken, dass wir die entsprechenden Bereiche auf Youthweb schon für die API überarbeitet haben. Wenn dir etwas fehlt, dann erstelle einfach ein Issue oder einen Pull-Request auf Github.
Wir möchten aber auch klar sagen, dass der Sinn der API ist, neue Funktionen zu ermöglichen, die es in der WebApp nicht gibt. Der Sinn der API ist nicht in erster Linie, dass die WebApp (in ihrer bisherigen Form) bis ins kleinste Detail nachgebaut werden kann. Es wird also wahrscheinlich nicht alles, was es in der WebApp gibt, in der API abgebildet werden.
Warum gibt es ein Ablaufdatum für API-Versionen?
Während der Entwicklung versionieren wir unsere API, wobei jede Version für mindestens 1 Jahr unterstützt wird. Jede App muss bei Requests angeben, mit welcher API-Version sie arbeitet. Dies hat den Sinn, dass jedem Entwickler klar sein sollte, dass er eine App, die er heute schreibt, in spätestens einem Jahr wieder etwas erneuern muss, da sie sonst nicht mehr funktionieren könnte. Auf diese Weise halten wir uns während der Entwicklung Änderungen an der API vor. Gleichzeitig kommunizieren wir damit jedem Entwickler, dass er seine App auch nach der Fertigstellung weiter pflegen muss.
Sobald die API Version 1.0 erreicht hat, werden die API-Versionen mindestens so lange unterstützt, bis wir bei Version 2.0 angekommen sind.
Entwickelt ihr schon eine App?
Ẁir nicht, aber ein User. @Oli arbeitet im Zuge seiner Bachelorarbeit an einer App für Android, deren Quell Code er im Anschluss veröffentlichen möchte. Dadurch kann die App auch von anderen Entwicklern eingesehen, verbessert oder als Vorlage für eine eigene App verwendet werden.
Kann man diese App schon testen?
Noch nicht, aber @Oli plant in Kürze, einige Alpha Tester zuzulassen, die die App testen können. Wenn weitere Tester gesucht werden, werden wir euch informieren.
Entwickelt ihr auch eine App für iOS?
Bisher nicht. Und wir sind bei der Entwicklung auch auf euch User angewiesen. Wenn also jemand von euch Lust hat, eine iOS-App für Youthweb zu entwickeln, dann meldet euch gerne bei uns. Wie in dem Fall der Android-App kann das zum Beispiel auch im Rahmen eures Studiums geschehen.
Habt ihr noch weitere Fragen? Dann könnt ihr einfach einen Kommentar hinterlassen.
0 Kommentare