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.

60 lines
3.2 KiB

  1. Java
  2. - Objektorientierte, typisierte & funktionale (Verfeinerung des deklarativen Paradigmas) Programmierung
  3. - beteiligte Objekte stehen im Fokus
  4. - Verwendung von Klassen und Objekten
  5. - Unterstützt Objekte, Klassen und Vererbung
  6. - Neue Klassen können die Eigenschaften und Verhalten von bereits existierenden Klassen erben
  7. - Kapselung von (Zustands-) Daten und Methoden
  8. - Polymorphie (Behandlung von Objekten basierend auf ihrem Typ)
  9. - Bessere Strukturierung
  10. - Wiederverwendbarkeit von Programmteilen
  11. - Einmal geschriebene Code kann künftig leicht gepflegt und modifiziert werden
  12. - Bessere Testbarkeit
  13. C
  14. - (1) Prozedurale, typisierte Programmierung
  15. (1)
  16. - Erweiterung des imperativen Paradigmas, um Algorithmen in überschaubare Teile zu zerlegen
  17. - Kontrollstrukturen (Sequenz, Schleife, Verzweigung) zur Steuerung der Befehlsausführung
  18. - Datenwerte definiert als benannte Variablen und darüber angesprochen
  19. - Diesen Variablen sind Datentypen zugeordnet -> erlauben nur bestimmte Instruktionen
  20. - Konzept der Abstraktion -> Entstehung von Gruppierungen und Hierarchie
  21. (2)
  22. - Korrekte Verwendung der Objekte
  23. - Sicherstellung, dass auf den Inhalt von Variablen keine Operationen ausgeführt werden, die syntaktisch oder semantische fehlerhaft sind
  24. - Vermeidung von Laufzeitfehlern
  25. Python
  26. - Ist eine universelle Open-Source-Programmiersprache
  27. - Nutzt mehrere Programmierparadigmen, u.a. die objektorientierte, aspektorientierte und die funktionale Programmierung
  28. - Funktionen sind nicht nur definiert und anwendbar, sondern auch wie Daten miteinander verknüpft, als Parameter verwendet und können als Funktionsergebnisse auftreten
  29. - Ermöglicht, auf die in der imperativen Programmierung benötigten, inneren Zustände eines Berechnungsprozesses ebenso zu verzichten, wie auf die zugehörigen Zustandsänderungen
  30. - Verzicht auf Seiteneffekte vereinfacht semantische Analyse eines Computerprogramms
  31. - Möglichkeit zur regelbasierten, algebraischen Programmtransformation und -synthese
  32. - Vereinfacht, Algorithmen ohne Berücksichtigung der Beschaffenheit der bearbeiteten Datenobjekte zu beschreiben und dadurch generischen Programmcode zu schreiben
  33. Go
  34. - Kombinierbare Programmiersprache, die Nebenläufigkeit und automatische Speicherbereinigung unterstützt
  35. - Bereinigung der Compiler-Ineffizienz in C und C++
  36. - Erleichterung von Softwareentwicklung mit Codebasen und Entwicklerteams
  37. - Orientiert sich syntaktisch an der Programmiersprache C
  38. JavaScript
  39. - Typenlose Programmiersprache (Typ von Variablen, Parametern & Rückgabewert wird nicht festgelegt)
  40. - Nur faktische Kompatibilität
  41. - Implizite Konvertierung
  42. - Typenfehler treten erst zur Laufzeit des Programms auf
  43. TypeScript
  44. - Compiler kompilierte Programmiersprache
  45. - Unterstützt Kapseln von Klassen, Interfaces, Funktionen und Variablen in eigene Namensräume
  46. - Bietet, existierenden JavaScript-Code und -Bibliotheken zu verwenden (JavaScript-Code = TypeScript-Code)
  47. Programmierprinzipien
  48. Clean Code > Clever Code
  49. - Vermeidung von komplexem Code in einer Zeile
  50. - Man sollte den Idiome der Sprache Acht geben
  51. Zusammensetzung > Vererbung
  52. - statt Klassen zu erben, neues Verhalten für Objete mit komplexem Verhalten hinzufügen