aboutsummaryrefslogtreecommitdiff
path: root/Info/9/3/Planet/modellierung/landung/online-ide.md
blob: 8b0c91d44055c83187b09e4233993010c3a89ec6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
---
section: Landung
include-after: |
  <script>
  async function fetchJson(url) {
  	try {
  		const response = await fetch(url);
  		if (!response.ok) {
  			console.log(response);
  			return;
  		}
  		return await response.json();
  	} catch (error) {
  		console.error('Error fetching JSON:', error);
  	}
  }
  
  // Get the user's firstname via the moodle generico filter
  const firstname = "{firstname}";
  const lastname = "{lastname}";
  
  const resource = 90441121;
  // Moodle some insists in wrapping urls in <a> tags breaking the JS code.
  // We use a base64 encoding for the url: https://lernplattform.bycs.de/mod/resource/view.php?id=
  const resourceUrl = "aHR0cHM6Ly9sZXJucGxhdHRmb3JtLmJ5Y3MuZGUvbW9kL3Jlc291cmNlL3ZpZXcucGhwP2lkPQo=";
  const url = window.atob(resourceUrl) + resource;
  
  fetchJson(url).then((logins) => {
  	if (logins) {
  		for (const user of logins) {
  			if (!(user.Name.includes("{firstname}") && user.Name.includes("{lastname}")))
  				continue;
  
  			let loginDiv = document.querySelector(".oide-login");
  			loginDiv.innerHTML = `Benutzername: ${user.Benutzername}<br>Passwort: ${user.Passwort}`;
  		}
  	}
  });
  </script>
---

:::{.terminal}
### Online-IDE

Die YASA benutzt für alle Programmieraufgaben die [Online-IDE](https://www.online-ide.de/).  
Rufe die Seite auf und melde dich an.

#### Dein Zugang

Die YASA hat dir einen Zugang für die Online-IDE angelegt.

::::{.oide-login}
::::

Bitte ändere dein Passwort per Klick auf die kleine Figur neben deinem Namen im <span style="border: solid 1px #00B2FF">Controls-Fenster</span> und notiere dir deine Login-Informationen!
:::

#### Aufbau der Seite

Die Online-IDE ist folgendermaßen aufgebaut.

![](img/online-ide-overview.png){.center}

##### [Datei-Fenster]{color="#004CFF"}

Das <span style="border: solid 1px #004CFF">Datei-Fenster</span> befindet sich in der linken oberen Ecke und zeigt dir alle Dateien und Ordner in deinem aktuellen Projekt.
Durch anklicken einer Datei siehst du deren Inhalt.
Wird rechts neben einer Datei ein grüner Pfeil angezeigt, dann kann Code in der Datei mit einem Klick auf den grünen Pfeil im Controls-Fenster direkt ausgeführt werden.

##### [Workspace-Fenster]{color="#770088"}

Das <span style="border: solid 1px #770088">Workspace-Fenster</span> zeigt dir alle deine Projekte.
Ein Projekt heißt in der Online-IDE workspace.

##### [Code-Fenster]{color="#028121"}

Das größte und wichtigste Fenster ist das <span style="border: solid 1px #028121">Code-Fenster</span>.
Hier erscheint der Code der in der ausgewählten Datei steht.
Für dich wichtige Dateien sind alle die mit einem grünen Pfeil markiert sind und die Datei **Rover**.

##### [Status-Fenster]{color="#FF0000"}

Das <span style="border: solid 1px #FF0000">Status-Fenster</span> unter dem Code-Fenster zeigt dir an, ob du noch Fehler in deinem Code hast.
Für jeden Fehler wird eine kurze Beschreibung angezeigt.
Oft hilft es aufmerksam die Beschreibung des Fehlers zu lesen wenn du zum Beispiel einfach nur einen Strichpunkt (Semikolon) `;`{.java} vergessen hast.

##### [Ausgabe-Fenster]{color="#EEDD00"}

Das <span style="border: solid 1px #FFEE00">Ausgabe-Fenster</span> ist der Ort an dem die spannenden Dinge passieren, dein Fenster zum roten Planeten.
Hier kannst du bequem von deinem sicheren Arbeitsplatz die karge Welt des Planeten beobachten und was der Rover darin so tut.

##### [Controls-Fenster]{color="#00B2FF"}

Zuletzt kannst du über dem Code-Fenster mit den <span style="border: solid 1px #00B2FF">Controls</span> dein Programm starten, die Geschwindigkeit in der es ausgeführt werden soll einstellen und vieles mehr.

:::{.erledigt}
:::

<< Zurück zu TODO: %section%

---

##### Wenn du mehr wissen willst

Der Entwickler der Online-IDE hat ausführlichere Erklärvideos zum Aufbau und der Benuztung der Online-IDE erstellt.

:::{.tipp}
**Es ist clever die Viedos erst mit etwas mehr Erfahrung anzusehen.**
:::

###### Funktionen

[Funktionen](https://youtu.be/gh7CM8RFCQ0)

###### Code-Hilfen

[Code-Hilfen](https://youtu.be/1xIEjj2NhTI)