Core Programming Concepts Flashcards

1
Q

Welche Sprachtypen gibt es?

A
  • Markup Languages (HTML)
  • Styling Languages (CSS)
  • Programming Languages (Python, Java)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was macht eine Programming Languages?

A

-Stellen Funktionalitäten bereit´um die Logik von etwas zu sein, dass etwas bewirkt

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

Was sind Eigenschaften die Programming Languages differenzieren?

A
  • Interpretiert vs Compiliert
  • Runtime Speed (Wie schnell beim Ausführen?)
  • Writetime Speed (Wie lange zum Schreiben?)
  • Strongly Types vs Loosely Typed
  • Type Conversion vs Coversion
  • OOP vs Procederal Programming
  • Inheritance, Intefaces, Objects vs Classes, Composition
  • Code Reuse
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ist wichtig bei der Wahl einer Sprache für ein Projekt?

A
  • Dass die Programming Language den Anforderungen des Projektes entspricht
  • Das man Sprachen agnostisch an die Auswahl herangeht
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was sind Beispiele für Sprachen die sehr schnelle Runtime Speed haben?

A
  • Assembler
  • C C++
  • Java
  • PHP
  • Javascript
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was sind Sprachen die eine sehr schnelle Writetime Speed haben?

A
  • Python

- PHP

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

Sollte man mit Vererbung/Inheritance ehr sparsam umgehen?

A

Ja, man sollte Vererbung nur an benötigten Stellen nutzen

-Ansonsten mit Interfaces und Coimposition arbeiten

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

Was ist Tight vs Loose Coupling von Objekten?

A
  • Objekte sollten einzelne Komponenten sein

- Die Objekte sollten lose gekoppelt sein und sehr unabhängig voneinander arbeiten

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

Was sind gängige Web-Protokolle?

A
  • HTTP
  • FTP
  • SMTP
  • POP3
  • TCP
  • UDP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was bedeutet HTTP?

A

-Hypertext Transfer Protocol

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

Ist das Web stateless?

A

Ja, es ist zustandslos und daher müssen Web Apps besonders entwickelt sein

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

Was sind Programatische Designpatterns?

A
  • Wege Code zu strukturieren

- Devs können miteinander über Probleme und gute Architekturen reden

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

Was ist ein besonder wichtiges Design Pattern in Web Development?

A

-MVC (Model View Controller)

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

Was sind interessante Design Patterns?

A
  • Filter Pattern / Decorator Pattern

- Dependency Injection

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

Warum ist es sinnvoll am Anfang eines Projektes Naming Conventions zu erstellen?

A
  • Alle Variablen nach dem gleichen Schema bennen
  • Variablen und DB mit dem Generellen und dann dem Spezifischen aufgaben z.B: name_first, name_last
  • Klassenattribute z.B. einer Person person_age, person_weight.
  • Macht Variablen intuitiv, besser lesbar und nachvollziehbar
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Warum sollten Methoden oder Funktionen sehr simpel und mit wenig Funktionen gehalten werden?

A
  • Mehr Komplexität führt zur Fehlern, Zeitaufwand und Unwartbarkeit
  • Eine Funktion sollte man besten das machen wonach sie benannt ist und diese Funktionen schmal halten
17
Q

Warum sollte man vor dem Start eines Projektes sich darüber im Internet informieren?

A
  • Evtl gibt es Frameworks die man nutzen kann
  • Evtl gibt es Open Source Projekte die man nutzen kann und nur ganz wenig erweitern muss
  • Evtl gibt es zu viele Konkurrenz
  • Man erfindet das Rad nicht neu