Grin logo
en de es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Programming

David gegen Goliath - Node.js vs. PHP. Serverseitige Programmierung im Vergleich

Title: David gegen Goliath - Node.js vs. PHP. Serverseitige Programmierung im Vergleich

Bachelor Thesis , 2014 , 41 Pages , Grade: 1,0

Autor:in: Matthias Neuwersch (Author)

Computer Science - Programming
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

Diese Arbeit vergleicht PHP mit Node.js auf technischer Ebene und bietet einen Entscheidungsbaum zur richtigen Technologiewahl für ihr Webprojekt. Es wird erklärt, unter welchen Umständen Node.js Performancevorteile bringt, und wie diese im Detail entstehen. Non-blocking I/O vs. blocking I/O werden auf verständliche Weise erklärt und beispielhaft dargestellt. Es wird aber auch auf einige andere Unterschiede wie prototypenbasierter vs. klassenbasierter Objektorientierung, Unterschiede wie bspw. immutable classes von PHP vs. mutable prototypes von JavaScript oder Mehrfachvererbung vs. Einfachvererbung eingegangen. Auch enthalten ist ein Exkurs zum Hosting (Unterschiede, Marktangebot, etc.).

In der Arbeit sind Codesnippets enthalten, welche die Thematik beispielhaft näher bringen.

Node.js ist ein sehr junger Konkurrent am Markt der serverseitigen Programmierung, konnte aber bereits viel Aufmerksamkeit erwecken. In dieser Arbeit erfahren Sie den Grund dafür.

Excerpt


Inhaltsverzeichnis

  • Einleitung
    • Motivation
    • Ziele und Hypothese
    • Aufbau der Arbeit
  • Grundlagen und Begriffsbestimmungen
    • Serverseitige Programmierung
      • PHP
      • Node.js
      • Klassenbasierte, objektorientierte Programmierung
      • Prototypenbasierte, objektorientierte Programmierung
    • Datenbanksysteme
    • Hosting
  • PHP und Node.js im Vergleich
    • Technische Voraussetzungen
    • Synchrone vs. asynchrone Ein- und Ausgabemodelle
    • Klassenbasierte vs. prototypenbasierte OOP
    • Zusammenfassung des Vergleichs
  • Überprüfung der Hypothese
    • Entwicklung einer Entscheidungshilfe
      • Ziel
      • Herangehensweise
      • Der Entscheidungsbaum
  • Zukunftsausblick
    • Non-blocking I/O Modelle in PHP
    • Golang und weitere Konkurrenten

Zielsetzung und Themenschwerpunkte

Die Arbeit befasst sich mit dem Vergleich von PHP und Node.js im Kontext serverseitiger Web-Technologien. Ziel ist es, die Vor- und Nachteile beider Technologien herauszuarbeiten und einen Entscheidungsbaum für die Wahl der geeigneten Technologie zu entwickeln.

  • Vergleich der technischen Voraussetzungen von PHP und Node.js
  • Analyse von synchronen und asynchronen Ein- und Ausgabemodellen
  • Untersuchung von klassenbasierter und prototypenbasierter objektorientierter Programmierung
  • Entwicklung eines Entscheidungsbaums für die Wahl der geeigneten Technologie
  • Diskussion der Zukunftsperspektiven von Node.js und PHP

Zusammenfassung der Kapitel

Die Einleitung führt in die Thematik ein, beschreibt die Motivation für die Arbeit und definiert die Ziele und die Hypothese. Kapitel 2 behandelt die Grundlagen und Begriffsbestimmungen, wobei PHP und Node.js im Detail vorgestellt werden. Außerdem werden verschiedene Programmierkonzepte wie klassenbasierte und prototypenbasierte objektorientierte Programmierung erläutert.

In Kapitel 3 erfolgt der Vergleich von PHP und Node.js anhand ihrer technischen Voraussetzungen, Ein- und Ausgabemodelle und objektorientierten Programmierkonzepte. Kapitel 4 widmet sich der Entwicklung eines Entscheidungsbaums, der die Auswahl der geeigneten Technologie für ein Web-Projekt vereinfachen soll. Das letzte Kapitel beleuchtet den Zukunftsausblick und behandelt die Entwicklung von Non-blocking I/O-Modellen in PHP sowie alternative Technologien wie Golang.

Schlüsselwörter

Node.js, PHP, Serverseitige Programmierung, JavaScript, Objektorientierte Programmierung, Entscheidungsbaum, Web-Entwicklung, Non-blocking I/O, Golang, Vergleich

Häufig gestellte Fragen

Was ist der Hauptunterschied zwischen PHP und Node.js?

PHP nutzt klassischerweise ein blockierendes (synchrones) I/O-Modell, während Node.js auf einem nicht-blockierenden (asynchronen) Event-Loop basiert, was bei vielen gleichzeitigen Verbindungen Performancevorteile bietet.

Wann sollte man Node.js für ein Webprojekt wählen?

Node.js eignet sich besonders für Echtzeitanwendungen wie Chats, Streaming-Dienste oder Single-Page-Applications (SPAs), bei denen eine hohe Skalierbarkeit und geringe Latenz erforderlich sind.

Ist PHP veraltet?

Nein, PHP ist nach wie vor die dominierende Sprache im Web (z. B. durch WordPress). Es bietet eine ausgereifte klassenbasierte Objektorientierung und ist für klassische Content-Management-Systeme oft einfacher zu hosten.

Was bedeutet prototypenbasierte vs. klassenbasierte OOP?

PHP nutzt Klassen als Baupläne für Objekte. JavaScript (Node.js) nutzt Prototypen, bei denen Objekte direkt von anderen Objekten erben können, was eine höhere Flexibilität (mutable prototypes) ermöglicht.

Gibt es für PHP auch asynchrone Modelle?

Ja, es gibt Entwicklungen und Bibliotheken, die Non-blocking I/O auch für PHP ermöglichen, jedoch ist dies nicht der Standard-Workflow der Sprache.

Excerpt out of 41 pages  - scroll top

Details

Title
David gegen Goliath - Node.js vs. PHP. Serverseitige Programmierung im Vergleich
College
University of Applied Sciences Oberösterreich, Hagenberg
Grade
1,0
Author
Matthias Neuwersch (Author)
Publication Year
2014
Pages
41
Catalog Number
V276829
ISBN (eBook)
9783656701767
ISBN (Book)
9783656702658
Language
German
Tags
node.js node php serverseitige programmierung web vs prototypenbasiert non-blocking I/O javascript serverseitig hosting
Product Safety
GRIN Publishing GmbH
Quote paper
Matthias Neuwersch (Author), 2014, David gegen Goliath - Node.js vs. PHP. Serverseitige Programmierung im Vergleich, Munich, GRIN Verlag, https://www.grin.com/document/276829
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  41  pages
Grin logo
  • Grin.com
  • Shipping
  • Imprint
  • Privacy
  • Terms
  • Imprint