Künstliche Intelligenzen wie ChatGPT können dazu genutzt werden, um Codevorlagen und -schnipsel automatisch zu generieren und so Zeit und Arbeitsaufwand bei der Entwicklung von Softwareanwendungen zu sparen. ChatGPT kann auch zur Fehlerbehebung und zum Debugging von Code verwendet werden, indem es mögliche Fehlerquellen analysiert und den Programmierer bei der Identifizierung von Fehlern unterstützt. Darüber hinaus kann es als Werkzeug zur Erstellung von Dokumentationen und Tutorials für Softwareanwendungen eingesetzt werden, indem es komplexe technische Informationen in eine leicht verständliche Sprache übersetzt. ChatGPT kann auch bei der Entscheidungsfindung eingesetzt werden, indem es Datenanalysen und Prognosen durchführt und somit zu einer effektiveren Entwicklung von Webseiten und Softwareanwendungen beiträgt.
Inhalt
Beispiel 1: Bestehenden Code von ChatGPT erweitern lassen
Eingabe
Ich habe für ein Browserspiel eine Funktion geschrieben, welche den Fall von Objekten berechnet. Diese Funktion soll erweitert werden um sicherzustellen, dass sich die Geschwindigkeit nur bist zu einem gewissen Wert erhöht und nicht unendlich. Im folgenden der Code:
applyGravity() {
if (!this.isFalling) return;
// Gravitationskonstante (in Pixel/s²)
const g = 9.81 * 60;
// Geschwindigkeit aktualisieren
this.velocityY += g * (1 / 60);
// Position aktualisieren
this.y += this.velocityY * (1 / 60);
// Kollision mit dem Boden prüfen
if (this.y + this.radius >= canvas.height) {
this.y = canvas.height - this.radius;
this.isFalling = false;
}
}
Antwort von ChatGPT
Um sicherzustellen, dass sich die Geschwindigkeit nicht unendlich erhöht, kannst du eine Bedingung hinzufügen, die überprüft, ob die Geschwindigkeit einen bestimmten Maximalwert erreicht hat. Wenn die Geschwindigkeit diesen Wert erreicht hat, setze sie auf den Maximalwert zurück. Hier ist eine mögliche Implementierung:
applyGravity() {
if (!this.isFalling) return;
// Gravitationskonstante (in Pixel/s²)
const g = 9.81 * 60;
// Maximalgeschwindigkeit (in Pixel/s)
const maxVelocityY = 500;
// Geschwindigkeit aktualisieren
this.velocityY += g * (1 / 60);
// Geschwindigkeit auf Maximalwert begrenzen
if (this.velocityY > maxVelocityY) {
this.velocityY = maxVelocityY;
}
// Position aktualisieren
this.y += this.velocityY * (1 / 60);
// Kollision mit dem Boden prüfen
if (this.y + this.radius >= canvas.height) {
this.y = canvas.height - this.radius;
this.isFalling = false;
}
}
Hier wird die Variable maxVelocityY definiert, die den Maximalwert für die Geschwindigkeit festlegt. In der Funktion wird die Geschwindigkeit aktualisiert, wie zuvor, aber dann wird eine Bedingung hinzugefügt, um sicherzustellen, dass die Geschwindigkeit den Maximalwert nicht überschreitet. Wenn die Geschwindigkeit diesen Wert erreicht, wird sie auf den Maximalwert zurückgesetzt.
Bitte beachte, dass der Wert von maxVelocityY experimentell ermittelt werden muss und je nach Spiel und Objekt unterschiedlich sein kann.
Beispiel 2: Standardstrukturen automatisiert erstellen lassen / HTML Grundgerüst
Eingabe
Bitte baue mir ein HTML Grundgerüst in dem eine externe CSS Datei namens style.css sowie eine JavaScript Datei namens script.css eingebunden ist. Im Body soll ein lorem ipsum Blindtext stehen.
Antwort von ChatGPT
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Meine Webseite</title>
<link rel="stylesheet" href="style.css">
<script src="script.js"></script>
</head>
<body>
<p>Lorem ipsum dolor sit amet, consectetur...</p>
</body>
</html>
Hinweis: Ich habe den Blindtext nachträglich gekürzt.
Beispiel 3: Code erklären lassen
Eingabe
Was macht der folgende Code?
const inputString = "Hallo, wie geht es dir heute?";
const wordsArray = inputString.split(/[^\wäöüß]+/).filter(word => word.length > 0);
wordsArray.sort((a, b) => a.localeCompare(b, 'de'));
wordsArray.forEach(word => console.log([word]));
Antwort von ChatGPT
Dieser Code nimmt den Eingabestring "Hallo, wie geht es dir heute?" und unterteilt ihn in einzelne Wörter. Dazu wird die split-Funktion verwendet, die den String anhand des regulären Ausdrucks /[^\wäöüß]+/ in ein Array von Wörtern aufteilt. Dieser reguläre Ausdruck passt auf alle Zeichen, die keine Buchstaben, Zahlen oder Umlaute (ä, ö, ü) oder das scharfe ß sind und trennt an diesen Stellen den Eingabestring.
Das zurückgegebene Array wird dann gefiltert, um alle leeren Wörter zu entfernen. Anschließend wird das Array alphabetisch sortiert, indem die sort-Funktion aufgerufen wird. Diese Funktion sortiert das Array, indem sie jedes Element des Arrays mit dem vorherigen Element vergleicht. Das Ergebnis ist ein Array von Wörtern, das in alphabetischer Reihenfolge sortiert ist.
Schließlich wird jedes Wort des sortierten Arrays in eine eigene Zeile ausgegeben, indem die forEach-Funktion aufgerufen wird. Dabei wird für jedes Wort des Arrays eine Funktion aufgerufen, die das Wort als Parameter erhält und es in eckige Klammern setzt und in der Konsole ausgibt.
Insgesamt gibt der Code die sortierten Wörter in der Konsole aus:
["dir"]
["es"]
["geht"]
["Hallo"]
["heute"]
["wie"]