[S10] Prepare REST, Node, Express, Mongo Flashcards

1
Q

Wie erstellt man ein Node.js Projekt?

A

-npm i

und dann die ganzen Fragen weg Entern

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie installiert man die Packages Express und Mongoose?

A

npm i express mongoose

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was macht das Package Express?

A

-Erleichert das Bauen web application erheblich gegenüber plain Node.js

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was macht das Package mongoose?

A

-Erlaubt sehr einfachen Zugriff auf MongoDB Datenbanken

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie installiert man dotenv und nodemon für

A

npm i –save-dev dotenv nodemon

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was bewirken die Argumente npm i –save-dev für npm?

A

-Packages werde nur in development mode installiert und nicht in Produktion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was bringt das Package dotenv?

A

.env Dateien als Umgebungsvariablen in die Applikation laden

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was bringt das Package nodemon?

A

-Erlaubt es den Server bei jedem Chance zu refreshen ohne das per Hand zu tun

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wie kann man eigene Skripte in der package.json durch npm laufen lassen?

A

npm run devStart

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie kann man mit der Console MongoDB bedienen?

A

C:\Program Files\MongoDB\Server\4.0\bin

mongo.exe öffnen

show databases
zeigt die bestehenden Datenbanken

use newDB
erzeugt neue Datenbank

db.item.inser({name: “sascha})
erzeugt einen eintrag in die DB und liefert das WriteResult zurück

db.items.find()
liefert alle items der Datenbank

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist JSON?

A
  • JavaScript Object Notation

- Gängiges Datenrepräsentationsformat neben XML und YAML

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wo wird JSON oft genutzt?

A

-JSON wird für die Datenübertragung bei APIs und Configurations genutzt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind die Vorteile von JSON?

A
  • Sehr leichtgewichtig/Wenig Overhead
  • Kleine Dateigrößen
  • Einfach zu lesen/schreiben
  • Wird fast überall genutzt, jede Sprache nutzt es
  • Ist ein Superset von JavaScript und damit voll kompatibel
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Welche Datentypen unterstützt JSON?

A
  • Strings “Hello World”
  • Numbers 10 1.5 1.2e10
  • Booleans true false
  • Null null
  • Arrays [1,2,3]
  • Object {“keys”:”value”} {“age”:30}
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Manchmal erhält man von APIs JSON nicht als Object, sondern als String. Was kann man hier tun?

A

JSON.parse(api.response)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was macht JSON.parse?

A

Nimmt einen String und wandelt diesen in ein JSON Object, sofern er korrekt aufgebaut ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Was ist das wichtigste, was bei JavaScript zu beachten ist?

A

-ALLE OBJECTS IN DOPPELQUOTES EINBETTEN!
{ “name”:”Sascha”}
-Ansonsten ist es nicht korrekter JSON Code!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Was ist Git?

A

-Ein Versionskontrollsystem

19
Q

Was tut Git?

A
  • Tracked alle Changes von Dateien
  • Tauscht Versionen der Changes einfach aus
  • Macht Changes rückgängig
  • Perfekt zum gemeinsamen arbeiten
20
Q

Was ist Github?

A
  • NICHT GIT
  • Eine online Cloud Plattform auf denen Remote Repositories gehosted werden können damit andere Developer auf diese Zugriff haben
21
Q

Wie initialisiert man ein Git Projekt?

A

git init (fügt .git zum Ordner hinzu)

git clone (falls bereits initialisiert)

22
Q

Was ist das Working Directory in Git?

A
  • Alle Dateien im Lokalen Repository(Ordner) im aktuellen Zustand
  • Keine Dateien werden dabei getracked
  • Damit Dateien getracked werden müssen diese zum Index hinzugefügt werden /gestaged werden
23
Q

Was ist Indexing/Staging in Git?

A
  • Der Index/Staging enthält alle getracked Dateien
  • Alle Changed wurden mit git add hinzugefügt
  • Damit sind die Dateien immer noch nicht in der offiziellen Version des Codes, aber man kann zwischen den Changes wechseln
  • Erst mit git commit werden Changes zur finalen Version hinzugefügt
24
Q

Was ist der HEAD in Git?

A
  • Der Head enthält alle bereits durch Index/Staging getrackten Daten, welche einem Commit zugeordnet worden sind
  • Dateien werden durch git commit -m “xxx” zu Commit Versionen hinzugefügt
25
Was ist der Unterschied zwischen Local Repository und Remote Repository?
- Nachdem Dateien durch git commit versioniert worden sind, sind diese aber immer noch auf dem lokalem Repository und nicht auf dem Remote wie Github - Daher müssen diese Versionen noch mit git push origin branchname zum Remote Repository gepusht werden
26
Was macht git pull?
-Git wird alle Changes from Remote Repository auf das Lokale Repository pullen
27
Was sind Branches?
- Branches sind eine Kopie des Codes von einem gewissen Zeitpunkt aus - Man spaltet den Code wie in Zweige und so können verschiedene Teams verschiedene Features einbauen - Und danach wieder in den Master Branch integrieren
28
Wie erstellt man eine neuen Feature branch und wechselt sofortig in diesen?
git checkout -b "feature-branch-awesome"
29
Was ist REST?
- REpresentation State Transfer - Bedeutet das der Server auf CRUD Operationena in der standdardweise antwortet - URLs sollen API/Access Points für Ressourcen auf dem Server sein
30
Wo wird REST heute genutzt?
Fast jede Website nutzt REST
31
Welche HTTP Actions benutzt REST?
- GET - POST - PUT - DELETE - PATCH
32
Wie kann eine REST URL aufgebaut sein?
http: //example.com/user http: //example.com/user/1 Alle betreffend oder spezifisch auf ein Object
33
Was macht die HTTP Action GET?
- GET wird genutzt um alle Objekte/Ressource zu erhalten | - Wirkt sich auf die gesamte Ressource aus (/users)
34
Was macht die HTTP Action POST?
- POST wird genutzt um ein neues Objekt zu erschaffen | - Wirkt sich auf die gesamte Ressource aus (/users)
35
Was macht die HTTP Action PUT?
- PUT wird genutzt um ein bestehendes Objekt zu updaten | - Wirkt sich auf eine einzelne Ressource aus (/users/1)
36
Was macht die HTTP Action DELETE?
- DELETE wird genutzt um ein bestehendes Objekt zu löschen | - Wirkt sich auf eine einzelne Ressource aus (/users/1)
37
Was sind Promises?
-Ein Promis ist ein Versprechen, welche entweder erfüllt oder rejected und damit fehlschlagen kann
38
Wie erstellt man ein JavaScript Promise?
``` let p = new Promise((resolve, reject) => { let a = 1 + 1 //1+2 rejects If (a == 2) { resolve('Success') } else { reject('Failed') } }) ``` ``` // then läuft wenn ein Promise resolved p.then((message) => { console.log("This is then ', message) }).catch((message) => { console.log('This is catched ', message) }) ```
39
Was ist async und await?
-Syntaktischer Zucker um Promises gewrapped | -
40
wie benutzt man async und await?
``` async function doWork() { //Code wartet bis makeRequest fertig ist const response = await makeRequest('Google') } ``` doWork()
41
Was sind die Vorteile von async und await?
-Code ist sehr viel cleaner und schlanker
42
Was sind die Nachteile von async und await?
- Code der async ist muss in try und catch gewrapped werden! | - await keyword muss for jedem async function call genutzt werden
43
Was ist Firebase Firestore?
- Eine documentoriented NoSQL database by Google | - Ist eine Collection von Dokumenten
44
Wie kann man in FireStore eine Applikation in Collections aufteilen?
``` -Projects Collection title content firstname lastName authorID timestamp ``` -Users Collection info about app users Nofications Collection -info about notifications