You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.3 KiB
3.3 KiB
Programmierparadigmen Übung (07.11.22)
Java
- Objektorientierte, Funktionale (ab Version 8) und typisierte Programmiersprache
- Objektorientiert: Kapselung von (Zustands-) Daten und Methoden
- Vorteil: bessere Strukturierung, bessere Testbarkeit, Wiederverwendbar von Programmteilen
- Funktional: Verfeinerung des deklarativen Paradigmas
- Vorteil: übersichtliche und effiziente Berechnungen
- Nachteile: nur für Berechnungen
- Typisiert: Festlegung Art des Datentyps für Variablen sowie Parameter und Rückgabewerte von Prozeduren
- Vorteil: Vervollständigungsvorschlage durch IDE, fail fast, gesteigerte Sicherheit bereits im Erstellungsprozess von Software
- Nachteil: verwendete Typen müssen zum Programmierzeitpunkt bekannt sein, nachträgliche Änderungen am Typen können bestehenden Code brechen
C
- typisierte Programmiersprache
- Definition: Festlegung Art des Datentyps für Variablen sowie Parameter und Rückgabewerte von Prozeduren
- Vorteil: Vervollständigungsvorschlage durch IDE, fail fast, gesteigerte Sicherheit bereits im Erstellungsprozess von Software
- Nachteil: verwendete Typen müssen zum Programmierzeitpunkt bekannt sein, nachträgliche Änderungen am Typen können bestehenden Code brechen
Phyton
- typisierte Programmiersprache
- Definition: Festlegung Art des Datentyps für Variablen sowie Parameter und Rückgabewerte von Prozeduren
- Vorteil: Vervollständigungsvorschlage durch IDE, fail fast, gesteigerte Sicherheit bereits im Erstellungsprozess von Software
- Nachteil: verwendete Typen müssen zum Programmierzeitpunkt bekannt sein, nachträgliche Änderungen am Typen können bestehenden Code brechen
Go
- typisierte Programmiersprache
- Definition: Festlegung Art des Datentyps für Variablen sowie Parameter und Rückgabewerte von Prozeduren
- Vorteil: Vervollständigungsvorschlage durch IDE, fail fast, gesteigerte Sicherheit bereits im Erstellungsprozess von Software
- Nachteil: verwendete Typen müssen zum Programmierzeitpunkt bekannt sein, nachträgliche Änderungen am Typen können bestehenden Code brechen
JavaScript
- typenlose Programmiersprache
- Definition: Der Typ von Variablen, Parametern und Rückgabewerten wird nicht festgelegt
- Vorteil: nur faktische Kompatibilität, implizite Konvertierung
- Nachteil: Typenfehler treten erst zur Laufzeit des Programms auf
TypeScript
- typisierte Programmiersprache
- Definition: Festlegung Art des Datentyps für Variablen sowie Parameter und Rückgabewerte von Prozeduren
- Vorteil: Vervollständigungsvorschlage durch IDE, fail fast, gesteigerte Sicherheit bereits im Erstellungsprozess von Software
- Nachteil: verwendete Typen müssen zum Programmierzeitpunkt bekannt sein, nachträgliche Änderungen am Typen können bestehenden Code brechen
weitere Programmierprinzipien
- Single Responsibility Prinzip: Kernaussage des Prinzips ist, dass jede Klasse nur genau eine fest definierte Aufgabe zu erfüllen hat
- Continuity: Schreibe den Code so, dass minimale Änderungen auch nur minimale Folgen für den Code haben
- Writability: Verwende ein Programmierwerkzeug/tool, welches dich beim Schreiben des Codes unterstützt
- Customizability: Konstante Werte sollten im Allgemeinen nicht direkt in den Code eingefügt werden, sondern als konstante Werte separat definiert werden