Zum Inhalt springen

„Isomorphes JavaScript“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Chewbacca2205 verschob die Seite Benutzer:Versionen/Isomorphic JavaScript nach Isomorphes JavaScript, ohne dabei eine Weiterleitung anzulegen
Rücksetzung auf letzte deutsche Version
Zeile 1: Zeile 1:
'''Isomorphic JavaScript''', also known as '''Universal JavaScript''', describes [[JavaScript]] applications which run both on the [[Client (computing)|client]] and the [[Server (computing)|server]].
'''Isomorphes JavaScript''', auch bekannt als '''Universelles JavaScript''', beschreibt [[JavaScript]]-Anwendungen, die sowohl auf dem [[Client]] als auch auf dem [[Server]] laufen.


== Mechanism ==
== Mechanismus ==
Isomorphes JavaScript wird im Zusammenhang mit [[Single-Page-Webanwendung|Single-Page-Anwendungen]] (SPA) verwendet. In einer typischen SPA ist der größte Teil der Geschäftslogik, einschließlich des [[Webframework|Routings]], in einer  JavaScript-Datei gebündelt, die zum Client gesendet wird. Obwohl dies den Server entlastet, da er nicht mehrere Anfragen zu bearbeiten hat, macht es doch den Start für den Nutzer langsamer, da die gesamte Webanwendung zum Client gesendet werden muss.
Isomorphic JavaScript works in the context of a [[single-page application]] (SPA). In a typical SPA, most of the application logic, including [[Web framework#URL mapping|routing]], is encapsulated in a bundled JavaScript file that's sent to the client. Whilst this frees up the server, as it does not have to handle so many requests, it also makes the initial load slow for the client, as the entire application needs to be sent over to the client.


Mit isomorphem JavaScript wird bei der ersten Anfrage vom Client die Ansicht der Seite auf dem Server berechnet, ähnlich zu serverseitigen [[Webseite#Dynamische_Webseiten|Websites]], und dann zum Client gesendet. Der Client kann dadurch die Ansicht unverzüglich rendern. Nachdem die Startansicht erzeugt wurde, wird die gesamte SPA im Hintergrund heruntergeladen und nachfolgende Aktionen werden auf der Client-Seite bearbeitet.
With Isomorphic JavaScript, when a web page is first requested from the client, the view of the page is generated on the server, similar to [[Dynamic web page#Server-side scripting|server-side dynamic web pages]], and sent over to the client. The client can then render the view immediately. After the initial view is rendered, the complete SPA is downloaded in the background, and subsequent actions are handled client-side.


== Name ==
== Name ==
The naming of the term 'Isomorphic JavaScript' has been a matter of controversy.<ref name=":0">{{Cite web|url=http://2ality.com/2015/08/isomorphic-javascript.html|title=Is "Isomorphic JavaScript" a good term?|website=2ality|access-date=2017-06-15}}</ref> The term 'isomorphic' was first coined by Charlie Robbins from [[Nodejitsu]], in one of the company's blog posts.<ref>{{Cite web|url=https://blog.nodejitsu.com/scaling-isomorphic-javascript-code/|title=Scaling Isomorphic Javascript Code {{!}} Nodejitsu Inc.|last=Inc.|first=Nodejitsu|website=blog.nodejitsu.com|access-date=2017-06-15}}</ref> Spike Brehm, a software engineer from [[Airbnb]], wrote another blog post using the same term.<ref>{{Cite web|url=https://medium.com/airbnb-engineering/isomorphic-javascript-the-future-of-web-apps-10882b7a2ebc|title=Isomorphic JavaScript: The Future of Web Apps|last=AirbnbEng|date=2013-11-11|website=Airbnb Engineering & Data Science|access-date=2017-06-15}}</ref> However, others have proposed to use the term Universal JavaScript instead.<ref name=":0" /><ref>{{Cite web|url=https://medium.com/@mjackson/universal-javascript-4761051b7ae9|title=Universal JavaScript|last=Jackson|first=Michael|date=2015-06-08|website=Michael Jackson|access-date=2017-06-15}}</ref>
Der Ursprung des Namens 'Isomorphes JavaScript' ist umstritten.<ref name=":0">{{Cite web|url=http://2ality.com/2015/08/isomorphic-javascript.html|title=Is "Isomorphic JavaScript" a good term?|accessdate=2017-06-15}}</ref> Der Begriff 'isomorph' wurde zuerst von Charlie Robbins von Nodejitsu in einem der Blog-Einträge des Unternehmens geprägt.<ref>{{Cite web|url=https://blog.nodejitsu.com/scaling-isomorphic-javascript-code/|title=Scaling Isomorphic Javascript Code {{!}} Nodejitsu Inc.|accessdate=2017-06-15|last=Inc.|first=Nodejitsu}}</ref> Spike Brehm, ein Softwareentwickler von [[Airbnb]], verwendete in einem anderen Blog-Eintrag den selben Begriff.<ref>{{Cite web|url=https://medium.com/airbnb-engineering/isomorphic-javascript-the-future-of-web-apps-10882b7a2ebc|title=Isomorphic JavaScript: The Future of Web Apps|date=2013-11-11|accessdate=2017-06-15|last=AirbnbEng}}</ref> Davon unabhängig wurde von anderen vorgeschlagen, stattdessen den Begriff 'Universelles JavaScript' zu verwenden.<ref>{{Cite web|url=https://medium.com/@mjackson/universal-javascript-4761051b7ae9|title=Universal JavaScript|date=2015-06-08|accessdate=2017-06-15|last=Jackson|first=Michael}}</ref>


== Benefits ==
== Vorteile ==
Es hat mehrere Vorteile, isomorphes JavaScript zu verwenden:
There are several benefits to using Isomorphic JavaScript:

* Faster page load
* Schnelleres Laden der Seite
* [[Search engine optimization|Search Engine Optimization]] - since the view is generated on the server, [[web crawler]]s no longer need to run JavaScript in order to render the page and index it
* [[Suchmaschinenoptimierung]] - da die Ansicht auf dem Server erzeugt wird, müssen [[Webcrawler]] nicht länger JavaScript starten, um eine Seite zu rendern und zu indizieren


== Frameworks ==
== Frameworks ==
There has been several isomorphic JavaScript frameworks created, most notably [[Meteor (web framework)|Meteor]] and [[React (JavaScript library)|React]]. Others includes [https://rendrjs.github.io/ Rendr], [http://derbyjs.com/ Derby], [http://haskell-miso.org/ Miso], [http://ezeljs.com/ Ezel] and [http://catberry.org/ Catberry].
Es wurden mehrere Frameworks für isomorphes JavaScript erstellt, vor allem sind [[Meteor (Webframework)|Meteor]] und [[React]] zu nennen. Weitere sind [https://rendrjs.github.io/ Rendr], [http://derbyjs.com/ Derby], [http://haskell-miso.org/ Miso], [http://ezeljs.com/ Ezel] und [http://catberry.org/ Catberry].


== Einzelnachweise ==
==References==
<references />
<references />


[[Kategorie:ECMAScript]]


[[Category:JavaScript]]

Version vom 11. April 2018, 19:51 Uhr

Isomorphes JavaScript, auch bekannt als Universelles JavaScript, beschreibt JavaScript-Anwendungen, die sowohl auf dem Client als auch auf dem Server laufen.

Mechanismus

Isomorphes JavaScript wird im Zusammenhang mit Single-Page-Anwendungen (SPA) verwendet. In einer typischen SPA ist der größte Teil der Geschäftslogik, einschließlich des Routings, in einer  JavaScript-Datei gebündelt, die zum Client gesendet wird. Obwohl dies den Server entlastet, da er nicht mehrere Anfragen zu bearbeiten hat, macht es doch den Start für den Nutzer langsamer, da die gesamte Webanwendung zum Client gesendet werden muss.

Mit isomorphem JavaScript wird bei der ersten Anfrage vom Client die Ansicht der Seite auf dem Server berechnet, ähnlich zu serverseitigen Websites, und dann zum Client gesendet. Der Client kann dadurch die Ansicht unverzüglich rendern. Nachdem die Startansicht erzeugt wurde, wird die gesamte SPA im Hintergrund heruntergeladen und nachfolgende Aktionen werden auf der Client-Seite bearbeitet.

Name

Der Ursprung des Namens 'Isomorphes JavaScript' ist umstritten.[1] Der Begriff 'isomorph' wurde zuerst von Charlie Robbins von Nodejitsu in einem der Blog-Einträge des Unternehmens geprägt.[2] Spike Brehm, ein Softwareentwickler von Airbnb, verwendete in einem anderen Blog-Eintrag den selben Begriff.[3] Davon unabhängig wurde von anderen vorgeschlagen, stattdessen den Begriff 'Universelles JavaScript' zu verwenden.[4]

Vorteile

Es hat mehrere Vorteile, isomorphes JavaScript zu verwenden:

  • Schnelleres Laden der Seite
  • Suchmaschinenoptimierung - da die Ansicht auf dem Server erzeugt wird, müssen Webcrawler nicht länger JavaScript starten, um eine Seite zu rendern und zu indizieren

Frameworks

Es wurden mehrere Frameworks für isomorphes JavaScript erstellt, vor allem sind Meteor und React zu nennen. Weitere sind Rendr, Derby, Miso, Ezel und Catberry.

Einzelnachweise

  1. Is "Isomorphic JavaScript" a good term? Abgerufen am 15. Juni 2017.
  2. Nodejitsu Inc.: Scaling Isomorphic Javascript Code | Nodejitsu Inc. Abgerufen am 15. Juni 2017.
  3. AirbnbEng: Isomorphic JavaScript: The Future of Web Apps. 11. November 2013, abgerufen am 15. Juni 2017.
  4. Michael Jackson: Universal JavaScript. 8. Juni 2015, abgerufen am 15. Juni 2017.