Notizen und Gedanken von Andreas Marc Klingler

All­mäch­ti­ges Frontend

Ich expe­ri­men­tie­re seit eini­ger Zeit hin und wie­der mit Java­Script-Frame­works wie Angular.js oder Ember.js. Dar­in kann man mitt­ler­wei­le kom­plet­te MVC-Anwen­dun­gen schrei­ben, die kom­plett im Brow­ser lau­fen kön­nen und ggf. höchs­tens noch per JSON/XML mit einem Ser­ver-Skript zur per­sis­ten­ten Daten­spei­che­rung kom­mu­ni­zie­ren müs­sen. (Wobei auch das teil­wei­se schon lokal geht.)

Ein inter­es­san­ter Aspekt, der mir heu­te Abend bei einem Gespräch auf dem Angular.js-Meetup gekom­men ist: Es gibt einen Trend, immer mehr Logik in das Front­end (→ Brow­ser) zu verschieben.

In den meis­ten Web­an­wen­dun­gen wird der­zeit die meis­te Logik im Backend in einer eigen­stän­di­gen (Skript-) Spra­che geschrie­ben und dar­aus HTML-/JS-/CSS-/usw.-Code erzeugt und vom Brow­ser ger­en­dert. Zwar wird die Dar­stel­lung zwar oft noch per Java­Script ger­en­dert, aber die wesent­li­che Logik liegt im Backend.

Die Java­Script-Frame­works lau­fen dage­gen voll­stän­dig im Brow­ser ab. Dar­aus folgt dann aber auch, dass die gesam­te Logik öffent­lich wird. Jeder kann sich im Brow­ser durch die Java­Script-Datei­en han­geln, die kom­plet­te Logik nach­voll­zie­hen, auf Schwach­stel­len ana­ly­sie­ren und gar kom­plett her­un­ter­la­den, ver­än­dern und woan­ders mani­pu­liert hochladen.

Das eröff­net neben­bei völ­lig neue Mög­lich­kei­ten zum „Platt­form­klau” oder zu Angrif­fen, bei denen man nicht mal mehr ande­re Sei­ten nach­bau­en muss, weil man sie kom­plett auf einen eige­nen Ser­ver kopie­ren kann. Schnell noch eine Ver­tip­per-Domain regis­trie­ren und dann mal schau­en, wer sich so anmel­det. Die Anmel­de­da­ten kann man dann auch gleich spei­chern, um damit auf der rich­ti­gen Platt­form frem­de Nut­zer­kon­ten über­neh­men zu können.

In die­sem Zusam­men­hang lohnt sich auch ein Blick auf die Sei­te nobackend.org, auf der bereits Ideen und Lösun­gen gesam­melt wer­den für eine Welt, die voll­stän­dig ohne Backend auskommt.

Die Idee fin­de ich für eini­ge Anwen­dungs­fäl­le ganz inter­es­sant und ich wer­de das auch wei­ter­hin beob­ach­ten. Aber es fühlt sich irgend­wie komisch an, eine Platt­form so leicht kom­plett kopie­ren zu kön­nen. Viel­leicht bin ich da aber auch nur zu vor­ein­ge­nom­men, weil ich es bis­her anders nicht ken­ne. Mal schau­en, wie sich das entwickelt.

2 Kommentare

  1. Lukas Rosenstock

    Den Trend beob­ach­te ich auch und den­ke dass es für eine Viel­zahl von Web Apps sinn­voll ist und deren Per­for­mance erhöht. Von den Sicher­heits­aspek­ten her sind die­se Web Apps dann ja im Prin­zip Open Source Soft­ware mit den dazu­ge­hö­ri­gen Vor- und Nachteilen.
    Und dan­ke für den Hin­weis auf nobackend.org, die Sei­te kann­te ich noch nicht, wohl aber eini­ge Projekte/Ideen die dort ver­linkt sind (remo­tes­to­rage und unhosted).

  2. Lukas Rosenstock

    Hier noch ein paar inter­es­san­te Gedan­ken zu dem The­ma: http://www.windley.com//archives/2014/02/fargo_and_personal_cloud_application_architectures.shtml

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert