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.7 KiB
3.7 KiB
JavaScript
Übersicht
* ähnliche Syntax wie in C
* Vererbung nicht durch Klassen, sondern durch Prototypen (klassenlose Objektorientierung)
* typenlose Programmiersprache
Imperative Programmierung:
* grundlegende Art der Programmierung, bei der Schritt-für-Schritt Anweisungen angegeben werden, um Aufgaben auszuführen
* beispielsweise Verweundung von Schleifen, bedingten Anweisungen und dekleration von Variablen
Funktionale Programmierung
* Funktionen können wie Daten behandelt werden oder als Argumente für andere Funktionen dienen
* hohe Ordnungsfunktion
Objektorierentierung
* JavaScript ist prototypbasiert, erlaubt die Erstellung und Vererbung von Objekten
* Erstellung von Klassen und Objekten
* Hinzufügen von Methoden zu Objekten
Asynchrone Programmierung
* Aufgaben können parallel oder nebenläufig ausgeführt werden, ohne Hauptprogramme zu blockieren
* besonders nützlich für Aufgaben wie das Laden von Daten auf einen Server oder das Verarbeiten von Benutzereingaben
Modulare Programmierung
* JavaScript unterstützt die modulare Programmierung mit ES6 und späteren Versionen
* Erstellen von Modulen und der Import von Modulen wird ermöglicht
* Fördert die Wiederverwendbarkeit
Vorteile
* Universelle Verwendung
* Verwendung von JavaScript im Webbrowser(Frontend) oder auf Serverseiten(Backend)
* Leicht zu erlernen
* große Entwicklungsgemeinschaft und viele Ressourcen für das Lernen
* Interaktive Benutzeroberfläche
* Erstellen von interaktiven und dynamischen Webseiten
* Verbessert die Benutzererfahrug
* Asynchrone Programmierung
* gut für die Handhabung asynchroner Aufgaben
* wichtig für Webanwendungen
Nachteile
* Browser-Kompatiblität
* unterschiede Browser interpretieren JavaScript-Code unterschiedlicdh
* Sicherheitsprobleme
* anfällig für Corss-Site-Scripting und Cross-Site-Request-Forgery, wenn Sicherheitsvorkehrungen nicht richtig getroffen werden
* Typisierungsprobleme
* schwer zu debuggen und Typfehler treten erst während der Laufzeit auf
* Ladezeit
* JavaScript Daten müssen erst vom Browser heruntergeladen und interpretiert werden
* beeinflusst die Ladezeiten von Webseiten
* Begrenzte Serverseitenfähigkeit
* keine gute serverseite Sprache, da es viele Einschränkungen gibt im Vergleich zu spezialisierten severseitigen Sprachen
Go
- Imperativ / OOP (aber keine Klassen/Vererbung)
- Einfach/lesbar
- effizient
- Orientierung an C
- Low-Level
- Statische Typisierung
- Varibalen haben festen Datentyp
- Fehlerfindung frühzeitig
- Standardbibliothek
- Cross Platform Compilation
TypeScript
- Superset von JavaScript
- Starke Typisierung im Gegensatz zu JavaScript
- Statische & Dynamische Dartentypen werden unterstützt
- TypeScript ist objekt-orientiert
- Vererbung
- Schnittstellen
- Funktional (weil auf JavaScript aufbauend)
- Anwendung: große Aplikationen/Frameworks
- bessere Strukturierung
Java
- Imperativ
- Objekt-orientiert
- Klassenbasiert
- Zugriff wird klar definiert
- Vererbung/Polymorphismus
- Ähnlichkeiten
- Standard-Bibliotheken
- Strikt typisiert
- Funktionale Anteile seit neuren Java-Versionen
- Anweundung: Web-Applikationen, Desktop-Anwendungen
C
-
Imperativ
-
Prozedural
-
Typisierte Sprache
-
Anwendung: Hardwarenahme Programmierung
- Direkter Speicherzugriff
-
Nutzung auf so ziemlich allen Systemen
-
Schnell & verbraucht wenig Ressourchen
-
Befehlsatz ist relativ klein
- Kann Vorteil oder Nachteil sein
- Selber schreiben oder einbinden externer Bibliotheken
Python
- basierend auf C
- imperativ und prozedural
- typisierte Sprache
- macht das Programm automatisch (dynamische Typisierung)
- Objektorientierung
- Ersellen von Funktionen
- Kompiler in sich intigriert
- sehr klare Syntax