Frage von fbchwi, 68

Validator für JavaScripts sinnvoll?

Ist die Nutzung eines online Validators für JavaScripts sinnvoll?Benötigen solche Skripte überhaupt eine Validierung wie z.B HTML(W3C Standard)? Warum/warum nicht?

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von TeeTier, Community-Experte für programmieren, 44

Wer es ernst meint, validiert seinen Code. Egal in welcher Sprache dieser auch geschrieben ist.

Das gilt im weiteren Sinne auch für alle Lint-Abkömmlinge und andere statischen Code-Analyse Tools.

Allerdings sollte man nicht bei jeder Änderung am eigenen Code eine Website konsultieren müssen, sondern solche Tools fest und automatisiert in seinen Workflow eingebaut haben.

Gründe, die dagegen sprechen, fallen mir überhaupt keine ein. Höchstens, dass Anfänger aus Mangel an Erfahrung noch nicht in der Lage sind, die False-Positives aus der Flut an Warnungen heraus zu picken.

Aber ein Grund, der sehr stark dafür spricht, ist das Auffinden von Fehlerquellen.

Ernsthaft: Wer als Entwickler - egal in welcher Sprache - seinen Code nicht von irgendwelchen Tools checken lässt, der sollte den Beruf wechseln. :)

Kommentar von fbchwi ,

Das kligt absolut logisch. Mich wundert es, dass sich die Fachliteratur nur selten mit dem Thema auseinanderzusetzen scheint. Oder suche ich mit "Validator" einfach nach dem falschen Begriff?

Man sollte doch denken, dass sich jemand schon einmal intensiver mit dem Thema auseinandergesetzt hat.

Kommentar von TeeTier ,

Dann such mal nach "Refactoring", "Statische Code Analyse", "Defensive Programming", "Code Smells", "Unit Testing" oder "Design-Patterns", auch wenn einige dieser Stichwörter nur entfernt etwas mit der ursprünglichen Frage zu tun haben.

Dazu gibt es hunderte von Tools und Bücher, für eigentlich alle beliebten Programmiersprachen. :)

Für Einsteiger ist das Buch "Weniger schlecht programmieren" von O'Reilly mit nem Esel auf dem Cover sehr zu empfehlen. Dort werden alle obigen Punkte - und noch mehr - angerissen, die eine gute Übersicht bieten. Als erfahrener Programmierer kennt man zwar schon alles davon, aber alle Leute ohne 15 bis 20 Jahre Berufserfahrung sollten da vielleicht mal reingeschaut haben.

Kommentar von fluffiknuffi ,

Wenn du mit einiger gigantischen Basis an Legacy Code arbeitest, für die es keinen einzigen Test gibt und bei dem auch nie die Code-Qualität (Code Style, ...) überprüft wurde, kannst du das natürlich tun, aber ich persönlich hasse den Code zwar, bin aber dennoch froh, bezahlt zu werden dafür, dass ich mich mit ihm herumschlage. Ist besser als Kistenstapeln oder arm sein. :'D

Antwort
von Eatofid, 4

Gmx.at beispielsweise ist keineswegs valide. Soviele Fehler, unglaublich. 

Gebe ich bei Google nun "Mail Anbieter" ein, ist Gmx auf Rank 19 indexiert.
Nicht wirklich schlecht, aber für so einen bekannten Mail Anbieter wie Gmx eher mies.

Aber ok, Gmx hat es eben nicht nötig, sonderlich viel auf SEO zu achten.

Ich kann nur jedem raten, wenn auf Suchwörter optimiert wird, bei welcher es Konkurrenz gibt, achtet auf valide Seiten, sonst spielt ihr extrem mit Handicap.

Das ist einfach bewiesen und somit Fakt.

Es ist aber auch nicht sooooo schlimm, dass ein paar kleine Fehler im Code total furchtbar sind. Aber dennoch können ein paar gravierende Fehler dafür ausschlaggebend sein, dass der Crawler von Google die Seite als mies einstuft und das war es dann auch schon in punkto SEO. :-)

So einfach is das.
Wenn der Robot das Labyrinth an Daten Code besteht, seid ihr siegreich. Gibts viele Einbahnstraßen, sind diese eine Hürde für den Crawler.

So kann man das am besten sehen, würd ich mal meinen, also bildlich betrachtet. :-)

Antwort
von fluffiknuffi, 46

Validieren kannst du da nichts. Was du eher willst ist etwas dass deinen Code auf "schlechte Dinge" prüft, z. B. JSLint http://jslint.com/

Solche Linter baut man dann in den Build-Prozess mit ein z. B. via Grunt/Gulp.

Bin allerdings selber zu wenig JS-Developer um das zu tun :D

Kommentar von fbchwi ,

Baut JavaScript denn nicht auch auf gewissen Standards auf (es gibt doch auch unterschiedliche Versionen), anhand derer eine Validierung prinzipiell möglich wäre?

Kommentar von fluffiknuffi ,
(es gibt doch auch unterschiedliche Versionen

Möglich, vllt.   Tools die dich warnen wenn du ES6-Zeug benutzt (und du das nicht willst). Muss aber sagen das ist nicht mein Fachgebiet.

Antwort
von perhp, 22

Kannst auch folgendes Tool verwenden: JsHint

Ich benutze immer diesen Validator für JavaScript und habe es in meinem Editor eingebaut, sodass ich eventuelle Fehler sofort ausbessern kann. Kann ich dir nur empfehlen, so lernst du sauberes schreiben (schon mal nur von der Syntax )

Keine passende Antwort gefunden?

Fragen Sie die Community