Karl-Rufus Witzel
1 year ago
2 changed files with 170 additions and 14 deletions
@ -0,0 +1,124 @@ |
|||
# 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 |
Write
Preview
Loading…
Cancel
Save
Reference in new issue