Aus Linux-Magazin 06/2017

Best Practices - Folge 8: Tipps für besseren Javascript-Code

© depiano, 123RF

Leicht lesbarer, bequem wartbarer Code ist ein hehres Ziel – das allerdings oft aus den Augen gerät, wenn die Termine drücken. Seine Missachtung rächt sich allerdings früher oder später.

Die folgenden Richtlinien für Javascript gelten so oder in ähnlicher Form auch für andere Programmiersprachen und nicht nur für Webprojekte.

Namen und Variablen

Kryptische Kurznamen oder aber Romane als Variablennamen sind leicht vermeidbare Stolpersteine. Der Programmierer braucht sich nur an eines der vielen bereits existierenden Schemata zu halten, beispielsweise an die so genannte Hungarian Notation. Dabei stellt er einem kurzen Namen ein einbuchstabiges Kürzel für den Datentyp voran.

Eine Variable, die den Familiennamen als String enthält, könnte »sfamilyName« heißen, eine für einen Booleschen Wert »bisLegal«, eine für ein Objekt, das für ein Mitglied steht, »oMember«. Eine gute Idee ist es auch, beim Englischen zu bleiben, das die meisten Programmiersprachen ohnehin benutzen.

Jedes Javascript-Programm, das in eine Webseite eingebunden ist, teilt sich mit jedem anderen Javascript denselben Geltungsbereich. Daher überschreibt eine globale Variable, die in einem später eingebundenen Skript definiert wird, eine gleichnamige Variable, die ein früheres Skript bereits mitbrachte.

Will der Programmierer darum globale Variablen vermeiden, ist eine einfache Möglichkeit die Verwendung so genannter Object Literals. Anstelle von

var current = null;
function init(){...}
function change(){...}

schreibt man dann:

var myNameSpace = {
  current:null,
  init:function(){...},
  change:function(){...},
}

Der Preis besteht allerdings darin, vor jedem Aufruf den Namen des Namespace voranstellen zu müssen. Statt »init()« muss es dann also heißen »myNamespace.init()«.

Guter Kodierstil

Browser können mit Blick auf die Javascript-Syntax sehr nachsichtig sein. Das sollte jedoch niemand ausnutzen, weil sonst die Webseite in einem Browser funktioniert und im nächsten den Dienst verweigert. Um das zu vermeiden, empfiehlt es sich, die Skripte immer mit einem Javascript-Validation-Tool wie JS Lint zu testen. Damit erhält man zuverlässige Warnungen und Fehlerberichte bei fragwürdiger oder falscher Syntax.

Kommentieren

Ausreichend kommentieren, aber auch nicht mehr – guter Code sollte für sich selbst sprechen. Allerdings ist das Verständnis, das man von einem fremden Programmierer (oder auch von sich selbst nach längerer Zeit) erwarten kann, eine sehr subjektive Angelegenheit. Hier können Kommentare, die sich auf das Wichtige beschränken, sehr hilfreich sein. Wer sich auch hier an Regeln hält, dem gelingt es später sogar, einen Teil der Dokumentation aus den Kommentaren zu generieren.

Modularisieren und konfigurieren

Eine Funktion soll genau eine Aufgabe lösen. Das macht es anderen später viel leichter, das fertige Programm zu verstehen und zu debuggen. Auch ist es so einfacher, Codeteile mehrfach zu verwenden. Spezialfälle landen dann in Funktionen, die die generellere, mehrfach nutzbare Funktion ergänzen.

Was sich ändern kann, soll konfigurierbar sein, nicht hart verdrahtet. Das erspart Kollegen, die später einmal den Code warten müssen, die umständliche Suche nach der Stelle, an der eine Einstellung im Code definiert ist. Wenn der Entwickler auch die Texte eines GUI konfigurierbar auslegt, erleichtert das die Übersetzung in andere Sprachen.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 1 HeftseitePreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben