Erfahrungen mit NodeJs

Simple Man

Lt. Commander
Registriert
Sep. 2003
Beiträge
1.420
Ich wollte mal nach euren Erfahrungen mit NodeJS und Express.js fragen. Ist ja einfach eine JavaScript runtime environment, die es erlaubt JS auf dem Server laufen zu lassen.

Also her mit euren Erfahrungen, Anekdoten, und Meinungen.

Ist NodeJs einfach nur so beliebt, weil es JavaScript auf dem Server laufen lassen kann (1 Sprache für front-end und back-end) oder was übersehe ich da?
 
Zuletzt bearbeitet:
Ist halt eine von dutzenden möglichen Lösung für serverseitige Anwendungen. Andere sind aber auch beliebt.
 
Mich würde ja mal interessieren wie Node.js im Business Enterprise Bereich ankommt, eingesetzt oder angenommen wird. Also den "richtigen" Business Enterprise Bereich und keine Hippster App ;)

Oder hat dort noch Java usw. die Dominanz?
 
  • Gefällt mir
Reaktionen: Simple Man
Express ist als Teil des MERN Stacks extrem verbreitet. Es ist auch ein Trugschluss zu denken, dass JavaScript es nicht erlaubt, sichere Software-Systeme zu erstellen.
 
aronlad schrieb:
Das Problem ist nicht Javascript.
Naja. Auch die Sprache bietet die ein oder andere Stolperstelle. Klar kann man irgendwie damit umgehen. Aber sie ist jetzt nicht gerade dafür prädestiniert super-sichere Software zu schreiben.
 
sh. schrieb:
Also den "richtigen" Business Enterprise Bereich und keine Hippster App
Von Netflix zu PayPal zu Uber, gibt genug "richtige" Firmen die Node einsetzen.

Die Hipster mögen Node weil jeder Frontend-Entwickler ein "gut genug"-Backend mit ein paar Packages programmieren kann.
Aber beim Streaming von Netflix z.B. ist non-blocking IO mehr als nur Komfort.

Mit dem was in v8 (und JS generell) gesteckt wurde ist Node für viele Sitationen gut genug.
Vor wenigen Wochen noch ein Post gelesen wo eine größere Firma* von Go umsteigen musste weil der Garbage Collector periodisch extreme Latenzen ausgelöst hat.
Soll nicht heißen Node ist besser als Go, sondern das nicht jede Spache/Runtime in allem perfekt sein muss.
Zumal solider Javascript-Code immernoch besser und sicherer laufen wird als mieser C-Code.

Und wer einfach Dependencies lädt ist's selbst schuld, das kann in anderen Sprachen genauso schnell nach hinten losgehen.

*: war Discords "Read State" Dienst, nicht das die mit Nodejs besser dran gewesen wären, aber es geht ums Prinzip. Go ist ne GC Sprache, also nicht verwunderlich wenn der GC periodisch aufräumen muss.
 
Zuletzt bearbeitet:
aronlad schrieb:
Das Problem ist nicht Javascript. Das Problem ist npm!
Inwiefern?
Ergänzung ()

andy_m4 schrieb:
Naja. Auch die Sprache bietet die ein oder andere Stolperstelle. Klar kann man irgendwie damit umgehen. Aber sie ist jetzt nicht gerade dafür prädestiniert super-sichere Software zu schreiben.
Aha. Wieso?
 
SheepShaver schrieb:
Na allein der Themenkomplex Typisierung. Javascript ist schwach typisiert, das führt dazu das Du Datentypen in Operationen fröhlich mischen kannst. Auch das Variablen nicht statisch deklariert werden kann ein Problem werden. Ein Tippfehler führt halt dazu, das das nicht angemeckert wird, sondern von einer neuen Variable ausgegangen wird.
Das ist immer wieder Quelle zahlreicher Fehler die zudem erst zur Laufzeit auffallen, wenn der problematische Codepfad ausgeführt wird.
Generell ist die Sprache recht fehlertolerant. Das bedeutet aber auch, das der Interpreter statt Uneindeutigkeiten anzumeckern im Zweifel "ratet" was der Programmierer wohl wollte. Damit handelst Du Dir Inkonsistenzen ein, wo ähnliche Dinge völlig unterschiedlich interpretiert werden.
Dem kann man entgegenwirken mit Disziplin, nutzen und entsprechenden Tools, Frameworks, Tests etc. aber ist zunächst mal eine Schwäche die man Berücksichtigen muss.

Man muss ja auch ganz klar sagen, das das Javascript-Design ja eher so ein Schnellschuss war und auch nie gedacht war, in dem Umfang eingesetzt zu werden wie man es heute tut. Und ja. Inzwischen gabs auch neue Versionen die einige Dinge ausgebügelt haben und auch nützliche Features ergänzt haben, aber wenn die Basis schon nicht so toll ist, dann ists halt schwierig das dann im nachhinein wieder glatt zu ziehen (es sei denn man macht nen massiven Kompatibilitätsbruch ; die Python-Leute wissen, was ich meine ;) ).
 
Das ist etwas veraltetes Halbwissen. Heutzutage nutzt man entweder Typescript oder ES10 mit Flow in Kombination mit Transpilern und Bundlern.
Dein Wissen datiert von 2014 oder früher.
Speziell Microservices werden oft mit Express implementiert, auch bei Netflix und Co. Es hat für Firmen einen immensen Vorteil, wenn der komplette Techstack End to End auf der selben Syntax basiert. Daher auch die Popularität von MERN u.ä.
 
SheepShaver schrieb:
Das ist etwas veraltetes Halbwissen.
Wieso veraltet? Ich hab doch explizit auf Tools und neue Versionen hingewiesen, mit denen man Probleme (zumindest teilweise) in den Griff bekommt?!
 
ziemlich viele hello world tutorials für node.js und express.js... sieht nach tutorial hell aus :/
 
Scheint nicht viele Meinunen zu Node.js und Express.js zu geben?
 
Zurück
Oben