8 Stimmen

Warum sollte ich serverseitiges JavaScript verwenden?

Ich bin verwirrt, lese ich regelmäßig sprechen von Server-seitigen JS, warum sollte ich wollen, dass zu verwenden? Es scheint, wie es Weg langsamer als so ziemlich jede andere Sprache ausführen würde, es fehlt auch viele Konventionen, die anspruchsvollere Sprachen haben.

Ist es möglich, ganze Objekte vom Client an den Server zu übergeben, sie zu manipulieren und wieder zurückzugeben?

Es fällt mir nur schwer, die Konzepte zu verstehen.

1voto

Pete Duncanson Punkte 3112

Vergessen Sie nicht, dass Sie all Ihre clientseitigen Vorzüge, die Ihnen Mootools und Co. bieten, auch auf der Serverseite nutzen können, was das Programmieren zu einem reinen Vergnügen macht, wenn Sie das zum Laufen bringen. Was die Geschwindigkeit angeht, kommt es darauf an, was Sie damit machen wollen. Wir haben eine Website, auf der 1000 Zeilen Code in JScript ASP pro Seitenanforderung laufen, 60.000 Benutzer pro Tag, 1000 Seiten. Es ist blitzschnell! So schnell, dass die Argumente für eine Neukodierung in .net einfach nicht stark genug sind, da der aktuelle Code dies perfekt handhabt.

Schreiben von Javascript-Client-Seite kann Ihren Kopf ein bisschen auf den ersten, keine Elemente zu verwirren mit nur nette Codierung Stil mit einigen wirklich schrulligen Funktion (wir übergeben eine annoymous Funktionen / Verschlüsse in unsere DB-Code wie zum Beispiel so:

var hotels = DataLayer.FindByHotelByStarRating( 4 )

hotels.each( function( hotel ) {
  %>
  <li><%= hotel.name.htmlEncode() %> is rated as <%= hotel.star_rating %> star</li>
  <%
}, this );

Nun, das ist ziemlich mächtig und verdammt Spaß zu, und die Zeit verbrachte learnng Mootools oder fortgeschrittene JS ist nicht verschwendet, da wir es sowohl Server-Seite und Client-Seite verwenden können.

Wir können die gleiche Validierungslogik, die gleichen JSON-Funktionen, die gleichen Objekte (wenn Sie vorsichtig sind) und so weiter verwenden. ASP mit JScript ist 100 Mal besser/sauberer/einfacher/schöner als VBScript und macht meine Arbeit zu einem Vergnügen und nicht zu einer VBScript-Kopfsache.

Und was am wichtigsten ist: Es macht verdammt viel Spaß!

1voto

mvalente Punkte 23

ach, aber sind diese Interpräsenzen nicht Teil des Browsers der Kunden, die werden diese wahrscheinlich nicht zur Verfügung stehen ihrem Server

Besuchen Sie www.commonjs.org

-- MV

1voto

user239237 Punkte 652

Javascript ist nicht langsam; das DOM ist es.

1voto

christkv Punkte 4250

Nachdem ich Nodejs nun schon eine Weile benutze und einen Mongodb-Treiber dafür geschrieben habe, muss ich sagen, dass ich sehr beeindruckt bin. Erstens, da ich Mongo verwende, die JSON-Objekte speichert, habe ich eine Client-zu-DB-Pipeline, die alle javascript ist.

Während ich also bei der Arbeit immer noch Ruby verwende, bin ich für alle persönlichen Projekte zu Javascript übergegangen, weil ich faul bin und den ständigen Kontextwechsel zwischen SQL, Ruby und Javascript nicht ausstehen kann.

Und wenn es sonst nichts gibt. NodeJS ist eine fantastische Möglichkeit, eine Sprache neu zu lernen, in die nur wenige von uns jemals viel Energie investiert haben, und das kann dich nur zu einem stärkeren Webentwickler machen :D

1voto

CyberFonic Punkte 3799

Ich bin zu spät gekommen. JavaScript / ECMA-Script ist eine Basissprache, die an eine beliebige Bibliothek gebunden werden kann. Wenn sie in einem Browser verwendet wird, werden mehrere Objekte auf Browserebene (Fenster, Dokument usw.) für die Sprache zugänglich gemacht. Die Skripte, die Sie in .html-Dateien einbetten oder als .js-Dateien verlinken, sind so programmiert, dass sie die gewünschten Operationen mit diesen Objekten ausführen.

Das gleiche Konzept gilt für die Server-Seite. NodeJS stellt beispielsweise HTTP-Server- und Client-Objekte zur Verfügung, und Sie können dieselben Dinge tun, die Sie in PHP, CGI-Skripten, Python- oder Ruby-Frameworks oder Apache-Modulen tun würden.

Die V8-JavaScript-Engine von Google mit JIT ist sehr gut optimiert. Sie wird sowohl in Chrome (Browser) als auch in NodeJS (Server) verwendet.

Ich habe JavaScript im Browser für AJAX-Aufrufe und Python / WSGI für den Server verwendet. Diese gemischte Art der Programmierung hat mich genervt. Seit ich NodeJS entdeckt habe, kann ich sowohl serverseitige als auch clientseitige Programmierung in derselben Sprache durchführen. Überraschenderweise ist der Durchsatz von NodeJS mehr als doppelt so hoch wie der, den ich mit Python erreicht habe. Es gibt einige detailliertere Analysen auf nodejs.org. Die einfache Erkenntnis ist, dass JS bei der Verwendung von V8 sehr nahe an die Geschwindigkeit von C/C++ herankommt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X