Julian Flashcards

1
Q

Interface in TS vs Java?

A

Bei TS auf Properties bezogen Bei Java auf Funktion

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

Welchen Vorteil hat TS gegenüber JS?

A

Die Typensicherheit

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

Was passiert zur Laufzeut mit Interfaces?

A

Zur Laufzeit haben wir JS, also wird es ignoriert!

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

Warum kann man bei Java viele Catch Klauseln haben aber in JS nicht?

A

Java hat Typen zur laufzeit, JS aber nicht!

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

Nachteile TS?

A

ich brauche eine TS.config

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

Nennen Sie zwei wesentliche Unterschiede von Basic-Auth und JWT.

A

Mit Basic Auth müssen bei jedem Request die Benutzerkennung im Header mitgeschickt werden, mit JWT nur initial. Bei JWT wird danach ein zeitlich begrenzter Token, anstelle der Benutzerkennung mitgeschickt. JWT Token ist standartmäßig verschlüsselt, Basic Auth nicht.

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

Warum braucht man zusätzlich zu einem Buildsystem wie Gradle noch CI-Software wie zum Beispiel Jenkins/Github Actions?

A

CI-Software automatisiert den Build-Prozess und stellt fertige Artefakte, Berichte und Dokumentation bereit.

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

Eine Verwendung von Observables im Semesterprojekt erläutern

A

OnClick(): Beobachten eines Buttons, ob er geklickt wird.

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

Was wird in Construction-Phase gemacht?

A

Klassendiagramme überarbeitet der Code implementiert die Tests dazu geschrieben.

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

Was wird in der Transition-Phase gemacht?

A

ersten Iteration werden Akzeptanztests durchgeführt und das Projekt abgenommen. In der zweiten Iteration wird das Projekt in Betrieb genommen und evtl. Schulungsmaßnahmen durchgeführt.

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

Wo ist bei RUP (Unified Process) der erste Meilenstein?

A

In der Elaboration-Phase zwischen dem Grobentwurf und Feinentwurf.

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

Was sind Wireframes und in welcher Phase werden sie eingesetzt?

A

Wireframes sind ein grober Designentwurf der essentiellen Komponenten. Diese werden in der Konzeptionsphase eingesetzt.

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

Nenne jeweils drei Unterschiede von Java und JavaScript

A
  • Java ist streng typisiert. JavaScript ist dies nicht. - JavaScript ist eine Skriptsprache. Java ist eine höhere Programmiersprache. - JavaScript wird interpretiert, Java in Bytecode kompiliert. - JavaScript hat keine Typen / ist schwach typisiert (geht beides) - JavaScript kann in html mittels script-Tag eingebunden werden, Java nicht.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wieso werden Testklassen bei RESTful Webservices beim Deployen nicht geladen?

A

Grundsätzlich sollte nur erfolgreich getesteter Code deployed werden.

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

Was ist ein Integrationstest?

A

Der Zweck besteht darin zu testen, ob viele separat entwickelte Module wie erwartet zusammenarbeiten (Martin Fowler).

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

Was versteht man unter Continuous Delivery?

A

Continuous Deliviery ist Continuous Intergration + automatisiertes Deployment in Produktiv- und Testumgebung.

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

Erklären Sie das Observer Pattern?

A

Das Observer Pattern ist ein Entwurfsmuster zur Umsetzung von Ereignis getriebener Software. Objekte können sich bei anderen Objekten registrieren, um über Zustandsänderungen Dieser informiert zu werden.

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

Wofür sind Package Manager

A

Ein Package Manager dient zur Verwaltung von Software (installieren, aktualisieren, löschen) (zb. NPM)

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

Nenne zwei Iterationen der Elaborationsphase. Was könnte dort gemacht werden?

A
  • Grobentwurf: Architektur - Feinentwurf: Use Cases priorisieren, Prototypen, Projektplan
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Was ist der Unterschied zwischen einer Rolle und einer Gruppe?

A

Eine (Benutzer-)Rolle fast eine Menge von Einzel-Rechten zusammen. Eine Gruppe ist eine Menge von Benutzerkennungen.

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

Welches Designpattern spielt bei einer grafischen Oberflächenprogrammierung eine große Rolle?

A

Model View Controller (MVC), Observer Pattern

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

Was versteht man unter dem Proxy Pattern?

A

Der Webserver reagiert stellvertretend als Appserver und gibt die Requests weiter

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

Wofür verwenden wir Interfaces

A

Als Typschablone, die Reihenfolge beim Aufruf ist somit egal

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

Was ist der Unterschied zwischen einem Meilenstein und einem Sprint?

A

Ein Meilenstein orientiert sich an Anforderungen. Ein Sprint orientiert sich an dem relativen Aufwand (Zeit). Die gesetzten Ziele müssen aber nicht zwangsläufig erreicht werden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Wieso werden User Stories nicht in der Inception Phase gemacht?
Da die Anforderungen noch nicht festgelegt sind.
26
Nennen Sie 2 Risiken, die man nach der Inception Phase ausschließen kann
Umsetzbarkeit des Projekts, verfehlen der Zielsetzung
27
Was versteht man unter Mobile First?
Mobile First ist ein Vorgehensmodell, bei dem man von der schmalsten Bildschirmgröße zur breitesten Bildschirmgröße entwickelt.
28
Was sind Architekturpattern und was sind Designpatten
Patterns sind Lösungsansätze für wiederkehrende Probleme. Dabei beziehen sich Design Patterns auf die Implementierung (Singleton, Fassade-Pattern, Observable-Pattern, Factory-Pattern) Architekturpatterns auf den strukturellen Aufbau eines Systems.(Schichtenarchitektur, Monolith, Microservices,)
29
Warum sollte man eher async/await in JavaScript benutzen als Callbacks?
In Asynchronen Funktionen nur das Schlüsselwort await eingefügt werden kann. Dadurch wird die Lesbarkeit gegenüber der Umsetzung mit Callbacks verbessert.
30
Was beschreibt ein Fast-Forward-Merge
Einfaches Zusammenführen von einem Branch mit einem anderen. Dabei wird der Stand des aktuelleren Branchs in den anderen übernommen.
31
Warum können Docker Container eine Voraussetzung für DevOps sein?
Weil mit DevOps das Deployment automatisiert wird und in Docker-Container einfach Docker-Images deployed werden können.
32
Nenne die Zustände die ein Promise haben kann
* Pending * Rejected * Fullfilled
33
Was wird mit Unified Process in der Construction Phase gemacht?
In der Implementierungsphase wird der Entwurf umgesetzt und implementiert. Sie kann in n-Teile afugeteilt werden, jeder Teil ist ein Meilenstein.
34
Was soll bei der Inceptionphase rauskommen?
In der Inceptionsphase sollen eine Soll- und Ist-Analyse, eine Risk-List und Use-Cases entstehen.
35
Was soll in der Elaboration Phase gemacht werden?
Grobentwurf: Klassendiagramm, Architekturpatterns, Feinentwurf: Verfeinerung und genaueres Planen, Klassediagramme
36
Was soll in der Transition Phase gemacht werden
Evtl Schulungen, Implementierung beim Kunden, Dokumentation, Wartung
37
Was kann man mit User Stories machen?
Planungsschätzung
38
Was besagt die 80/20 Regel?
80% des Nutzen einer Software liegt in 20% der Features
39
Was ist der Vorteil von Plant UML?
PlantUML ist direkt in die IDE integrierbar durch Plungins. Außerdem lassen sich UML-Diagramme genererieren und bei Anpassung der java-Dateien werden diese unmittelbar angepasst Kostenlos
40
Was sind Rest Properties?
ermöglicht, die verbleibenden Elemente eines Arrays oder Objekts in einer neuen Variable zusammenzufassen. const [a, b, ...rest] = [1, 2, 3, 4, 5];
41
Warum macht man Meilensteine?
Risikominderung Erfolgserlebnis Vertrauen bei Kunden
42
Wie groß sollte ein Entwicklerteam max. sein?
2-Pizzen Regel: 7-8 Leute
43
Warum implementiert man Web und Appserver nicht in eins?
Weil Skalierbarkeit gefragt ist beim Webserver (variierende Lasten) Beide Server skalieren unterschiedlich Einfacher neuer Technologien zu implementieren
44
Scrum, wie lange sollte ein Sprint gehen?
2-4 Wochen
45
Was wird bei der Scrum Retrospective gemacht?
Dient der Reflexion der Teamarbeit und was man gelernt hat
46
Was sind die 3 Schichten eines Images
Anwendungen Library Betriebsystem
47
welche 2 Datenstrukturen kann man in TS verwenden?
Klassen und Interfaces (Typschablone)
48
Unterschied zwischen Authentifizierung Und Authorisierung?
Authentifizierung= LOGIN (Ist der Nutzer der, der er vorgibt zu sein) Authorisierung=Darf ich, als authentifizierter, etwas oder darf ich es nicht (Admin)
49
Was ist die Basisklasse von TS?
Any
50
Wie wirkt sich ein TS Interface zur Laufzeit aus?
Gar nicht, da wir JS zur Laufzeit haben, hier gibt es dann keine Typen!
51
Wie unterscheiden sich Interfaces in JS und TS?
In JS gibt es keine Interfaces sie werden on TS als Typenschablone verwendet damit keine Tippfehler auftreten (zb. Property vergessen)
52
Wofür ist die asynchronität wichtig?
Für Weboberflächen, um Blockierungen zu verhindern, bessere Ressourcennutzung, verbesserte Performance. da mehrere Ausführungsstränge vorhanden und man so nicht den gesamten Strang blockiert wenn eine Aktion nicht abgeschlossen ist
53
Warum hat Javascript keine Interfaces?
Weil es keine Typen in Javascript gibt!
54
Wie lautet der Hierarchische Namensraumfür windows?
Directory
55
Wie vermeidet man Rundungsfehler in Java?
Mit Big Decimal als Datentyp
56
Wieso muss ein Baum breit sein für das Speichern von Indexen?
Weil Bäume auf dem Massenspeicher abgelegt werden und tiefe Bäume lange brauchen zum suchen.
57
Mit welcher Datenstruktur kann man eine Indexstruktur beschreiben?
Mit einem B+ Baum. Er ist balanciert Daten befinden sich nur in den Blättern. Schlüssel sind in den oberen Knoten
58
Weshalb verwendet man Index / Indizes? (1 Pro, 1 Kontra)
+Zum schnelleren Suchen -Schreiben wird langsamer
59
SQL Statements, was sind DDL?
Data Definition Language zb. Create Table, Alter Table, ...
60
SQL Statements: Was sind DML?
Data Manipulation Language zb. Select *, Insert Into, ...
61
Wie unterscheiden sich MySQL und Oracle beim Schema?
MySQL Schema ist ein Namespace (zum organisieren, gruppieren) Oracle Schema entspricht einem Benutzerkonto und enthält alle DB-Objekte (Tabellen, Indizes,...)
62
Was mache ich wenn ich zu viele Tabellen habe?
neues Schema anlegen, Tabellen zusammen die was zu tun haben, zusammen in ein Schema packen
63
Was kann man bei Verzeichnissen anlegen was bei Schemen nicht geht
Die Hierarchie gbt es nur bei Verzeichnissen
64
Was ist ein Schema?
Ein Namespace/Namensraum gibt vor, wie die Daten in der DB organisiert sind, eine Art Grundstruktur.
65
Unterschied Interface / Abstrakte Klasse?
Eine abstrakte Klasse kann nur von einer Klasse erben. Ein Interface kann nicht von Klassen erben
66
Was sind named Arguments?
Argumente einer Funktion mit Namen als JSON Objekt ohne bestimmte Reihenfolge setColor({red: 255, green: 200})
67
Was macht TypeORM
DB OR Mapping
68
Was bedeutet #
bedeutet eine variable ist private, Zugriff über schreibweise #variable -> direkt ablesbar ob private oder nicht
69
Was beduetet die Schreibweise …variable
Alle restlichen eigenschaften eines JSON objektes die im destrucoring nicht in eigene Variablen gespeichert werden werden in …variable gespeichert
70
Was ist der unknow type
Gegenspieler zum any type. Variable mit unbekanntem Typ, zusaetzliche Sicherheit da Typüberprüfung.
71
Was sind Artefakte in SCRUM
1. Product Backlog mit User Stories 2. Sprint Backlog 3. Definition von "Done"
72
Unterschied User Story und Use Case
User Story: fokussiert sich auf den Nutzwert für den Benutzer ( Wer, Was, Wozu) Use Case: Fokussiert sich auf Systemverhalten aus Akteursicht (Anwendungsfall
73
Was ist mobile First?
Konzentriere dich zuerst auf schmale Geräte in der Entwicklung
74
Was sind Patterns?
Blaupausen zum nachesen wiederverwendbarer Lösungen, NICHT fertig implementierbar
75
Was ist der Uniontype?
ein Wert kann von verschiedenen typen sein: String | int oder String | null -> verhindert Nullpointer Exceptions. Kann als Emulation für Enums verwendet werden
76
Was kann man beim übertragen von JS Dateien weglassen ohne die Funktionalität einzuschränken?
White spaces, Kommentare, kürzen von variablen und funktionsnamen -> minified Dateien