2.1 Entwicklungstools
Warum ist die Nutzung eines einfachen Texteditors für die Webentwicklung heutzutage weniger zweckmäßig?
Es gibt inzwischen sehr leistungsfähige Entwicklungsumgebungen, die die Webentwicklung unterstützen und effizienter machen, da sie HTML, CSS und JavaScript sowie Client-/Server-Probleme gleichzeitig berücksichtigen.
Was ist eine Entwicklungsumgebung?
Eine Entwicklungsumgebung ist ein Programm, das die Entwicklung von Software, z. B. Webseiten, komfortabler macht, indem es Tools zur Fehlererkennung und Unterstützung mehrerer Technologien bietet.
Welche Herausforderungen gibt es bei der Entwicklung von Web-Applikationen im Vergleich zu anderen Programmiersprachen?
Die Webentwicklung ist herausfordernd, da sie die gleichzeitige Verwendung mehrerer Technologien (HTML, CSS, JavaScript) sowie die Verwaltung von Client- und Server-seitigen Fehlern erfordert.
Was ist Visual Studio Code (VS Code) und wer hat es entwickelt?
Visual Studio Code ist eine plattformübergreifende, kostenlose Entwicklungsumgebung, die von Microsoft entwickelt wurde. Es basiert auf der Chromium-Engine und lässt sich durch zahlreiche Plug-ins erweitern.
Was ist WebStorm und welche Firma hat es entwickelt?
WebStorm ist eine kommerzielle Entwicklungsumgebung der Firma JetBrains. Es ist besonders leistungsfähig und für private Zwecke kostenlos nutzbar.
Welche Vorteile bieten Online-Editoren für die Webentwicklung?
Online-Editoren, wie Visual Studio Code Web, Phoenix und der in GitHub integrierte Editor, können ohne Installation direkt im Browser genutzt werden, was sie besonders flexibel macht.
Welche Entwicklungsumgebung wird in diesem Kurs verwendet und warum?
In diesem Kurs wird Visual Studio Code verwendet, da es plattformübergreifend, kostenlos und in der Popularität stark wachsend ist.
Was ist VSCodium und wie unterscheidet es sich von Visual Studio Code?
VSCodium ist eine offene Variante von Visual Studio Code. Es ist eine Alternative zu Visual Studio Code ohne die proprietären Teile von Microsoft.
Welche Rolle spielen Plug-ins in Visual Studio Code?
Plug-ins erweitern Visual Studio Code um zusätzliche Funktionen, die in bestimmten Phasen der Webentwicklung nützlich sind, um effizienter arbeiten zu können.
2.2 Versionsverwaltung
Welche Herausforderungen entstehen, wenn mehrere Entwickelnde gleichzeitig an einer Web-Applikation arbeiten?
Die Herausforderungen umfassen die Synchronisierung des Codes, das Rückgängigmachen von Änderungen, das Entfernen von Features ohne Beschädigung des Systems und die parallele Entwicklung von Features, die zu unterschiedlichen Zeiten implementiert werden.
Was bedeutet der Begriff "Revisionssicherheit"?
Revisionssicherheit bedeutet, dass man jederzeit auf ältere Versionen der Software zugreifen kann, um Änderungen rückgängig zu machen oder ältere Versionen zu überprüfen.
Was ist ein Versionskontrollsystem?
Ein Versionskontrollsystem ermöglicht es, verschiedene Versionen von Dateien zu verwalten und Änderungen an diesen nachzuvollziehen.
Was ist eine "Working Copy" in git?
Eine "Working Copy" ist die lokale Kopie des gesamten Quellcodes, mit der der Entwickelnde unabhängig von den anderen arbeitet.
Welches Versionskontrollsystem wurde von Linus Torvalds entwickelt und warum?
Linus Torvalds entwickelte git, da ihm kein existierendes Versionskontrollsystem geeignet erschien, um die Anforderungen des Linux-Kernels zu erfüllen. Git ist heute ein weltweiter Standard.
Was ist der Unterschied zwischen git und den bis dahin üblichen Versionskontrollsystemen?
Git benötigt keinen zentralen Server, um in der Basisfunktionalität zu arbeiten. Entwicklerhaben immer eine lokale Kopie des gesamten Quellcodes und können Plattformen wie Github für die Zusammenarbeit nutzen.
Welche Funktion hat der Befehl init in git?
init
Der Befehl init legt ein neues Repository an und setzt das aktuelle Verzeichnis unter Versionskontrolle.
Wofür wird der Befehl add in git verwendet?
add
Mit dem Befehl add werden Dateien dem Repository hinzugefügt, sodass sie von git verwaltet werden können.
Was bedeutet der Befehl commit in git und wozu dient er?
commit
Der Befehl commit speichert Änderungen im Repository. Jeder Commit enthält eine Erklärung, die beschreibt, was und warum geändert wurde.
Wie funktioniert der Befehl status in git?
status
Der Befehl status zeigt an, welche Dateien schon committet wurden, welche geändert wurden und welche git noch nicht kennt.
Was macht der Befehl log in git?
log
Der Befehl log zeigt die Historie aller bisherigen Änderungen im Repository an.
Welche Rolle spielen Remote-Repositories bei der Zusammenarbeit in git?
Remote-Repositories ermöglichen es, Code zwischen Entwickelnden auszutauschen. Sie können z. B. bei Plattformen wie Github liegen oder auf eigenen Servern gehostet werden.
Wofür wird der Befehl clone in git verwendet?
clone
Der Befehl clone wird verwendet, um ein Remote-Repository herunterzuladen und lokal eine Kopie davon zu erstellen.
Was bewirkt der Befehl push in git?
push
Der Befehl push überträgt lokale Änderungen in ein Remote-Repository, um sie anderen zur Verfügung zu stellen.
Wofür dient der Befehl pull in git?
pull
Der Befehl pull integriert Änderungen aus einem Remote-Repository in das lokale Repository.
Wie ist git in Visual Studio Code integriert?
Git ist nahtlos in Visual Studio Code integriert, sodass alle wesentlichen Operationen wie commit, push und pull mit einem Mausklick ausgeführt werden können.
2.3 Paketmanager
Warum werden Paketmanager in modernen Web-Applikationen benötigt?
Paketmanager werden benötigt, um Abhängigkeiten zwischen verschiedenen JavaScript- und CSS-Frameworks aufzulösen und sicherzustellen, dass nur der benötigte Code an den Browser ausgeliefert wird.
Was versteht man unter einem Build-Prozess bei Web-Applikationen?
Ein Build-Prozess fasst die verschiedenen Komponenten einer Anwendung zusammen und erstellt daraus eine lauffähige Applikation. Er kann in Frameworks integriert sein, wie z. B. bei Tailwind CSS, oder separat aufgesetzt werden, wie bei Vue.js oder React.
Was ist npm und wofür wird es verwendet?
Npm (Node Package Manager) ist der Standard-Paketmanager für node.js. Es arbeitet mit vielen Frameworks zusammen und verwaltet die Abhängigkeiten in Web-Applikationen.
Welche Vorteile bietet Yarn gegenüber npm?
Yarn, entwickelt von Facebook, legt besonderen Wert auf Geschwindigkeit, Verlässlichkeit und Sicherheit. Es verwendet einen lokalen Cache für Pakete und installiert diese parallel, wodurch es meist schneller ist als npm.
Wann wird ein Paketmanager in Web-Anwendungen notwendig?
Ein Paketmanager wird notwendig, wenn eine Anwendung komplexer wird und Abhängigkeiten zwischen verschiedenen Bibliotheken und Frameworks aufgelöst werden müssen.
Was ist Webpack und wofür wird es eingesetzt?
Webpack ist ein Packer, der entscheidet, welche Dateien in einer Web-Applikation benötigt werden, und diese nach Bedarf umformt, z. B. durch das Übersetzen von TypeScript in JavaScript. Es bietet auch einen integrierten Webserver, der Änderungen automatisch erkennt und im Browser einen Reload auslöst.
Was ist Parcel und warum hat es an Popularität gewonnen?
Parcel ist ein Packer, der stark an Popularität gewonnen hat, weil es die Arbeit an sogenannte Worker-Prozesse delegiert und Mehrprozessorsysteme effizient nutzt. Durch einen integrierten Cache wird der Build-Prozess deutlich schneller.
Was ist Gulp und wie unterscheidet es sich von Webpack?
Gulp arbeitet ähnlich wie Webpack, bietet jedoch durch JavaScript-Code eine höhere Konfigurierbarkeit. Es ermöglicht einfache Implementierung von Plug-ins und lässt sich flexibel anpassen.
Wofür wird Babel eingesetzt?
Babel ist ein Transpiler, der neuere JavaScript-Versionen in ältere übersetzt, damit sie von allen Browsern verstanden werden. Er kann auch JSX, eine Mischung aus JavaScript und HTML, konvertieren.
Welche Frameworks unterstützen integrierte Build-Prozesse?
Frameworks wie Tailwind CSS haben integrierte Build-Prozesse. Andere, wie Vue.js oder React, unterstützen verschiedene Build-Prozesse, die separat aufgesetzt werden müssen.
Welche Vorteile bietet der Einsatz eines Paketmanagers bei komplexen Web-Applikationen?
Ein Paketmanager löst Abhängigkeiten zwischen Bibliotheken und Frameworks auf, stellt sicher, dass nur benötigter Code verwendet wird, und erleichtert den Build-Prozess.
Welche Funktion haben spezielle Compiler oder Tools im Entwicklungs- und Build-Prozess?
Spezielle Compiler wie Babel oder Tools wie Gulp unterstützen den Entwicklungsprozess, indem sie z. B. JavaScript-Varianten übersetzen, Build-Prozesse automatisieren oder die Konfiguration von Plug-ins erleichtern.
2.4 Upload/Bereitstellung
Was bedeutet "Upload" im Kontext der Web-Entwicklung?
Upload bezeichnet die Übertragung von Dateien vom eigenen Computer auf einen Server, auf dem die Web-Anwendung bereitgestellt wird.
Warum ist HTTPS besser als HTTP?
HTTPS bietet eine verschlüsselte Datenübertragung, die sensible Informationen, wie z. B. Kreditkartennummern, schützt. Es benötigt Zertifikate, die z. B. von LetsEncrypt kostenlos bereitgestellt werden.
Was versteht man unter Continuous Integration (CI)?
Continuous Integration ist der Prozess, bei dem Software bei jeder Änderung automatisch gebaut und getestet wird. Dies ermöglicht frühe Fehlererkennung und erhöht die Effizienz im Entwicklungsprozess.
Was bedeutet "Deployment" in der Web-Entwicklung?
Deployment beschreibt die Installation von Software oder Webseiten auf einem Server, damit diese von Nutzern im Internet verwendet werden können.
Welche Vorteile bietet Continuous Integration (CI)?
Continuous Integration ermöglicht:
Frühe Fehlererkennung,
Effizienz durch automatisierte Tests,
Schnellere Release-Zyklen,
Verbesserte Zusammenarbeit im Team durch regelmäßiges Einchecken des Codes.
Welche Werkzeuge können für Continuous Integration verwendet werden?
Tools wie Jenkins oder Github Actions ermöglichen die Automatisierung von Build- und Integrationsprozessen in CI-Systemen.
Welche Bereitstellungsmöglichkeiten gibt es für einfache Webseiten?
Einfache Webseiten können auf externen Webspace-Anbietern, Cloud-Diensten oder Plattformen wie Github Pages hochgeladen werden.
Warum ist die Automatisierung des Build-Prozesses wichtig?
Durch die Automatisierung des Build-Prozesses mittels Continuous Integration wird der Code regelmäßig getestet und integriert, was Fehler reduziert und den Entwicklungsprozess beschleunigt.
Welche Lösung bietet Visual Studio Code für den Entwicklungsprozess an?
Visual Studio Code bietet einen integrierten Webserver, der Änderungen erkennt und den Browser automatisch informiert, sodass die Webseite nicht manuell neu geladen werden muss.
Last changed2 days ago