Java
-
Full-Stack (Front- und Backend)
-
Formulierung von Programmen und Festlegung des Verhaltens, daher ist Java für dynamische Webseiten geeignet
-
Programmiert werden: Webanwendungen, Desktop-Anwendungen und Apps
-
Objektorientierte Programmiersprache
-
Für die Ausführung der Programme wird kein spezielles Betriebssystem benötigt, sondern nur eine Softwareumgebung
-
Sehr große Zielgruppe
-
Java Anwendungen laufen unter Windows, MacOS, Linux- und Unix-Derivaten und im Webbrowser
-
Realisiert wird die Unabhängigkeit durch die Java Virtual Machine (Java VM) und wird jeweils an das Host-Betriebssystem angepasst, ist jedoch immer gleich aufgebaut
-
Nachteil: Durch die Verwendung des VM-Unterbaus ist die Entwicklung von Echtzeitanwendungen nicht geeignet
-
Klassenbasiert: Objekte werden in Klassen und Instanzen unterteilt, bei denen keine Eigenschaften und Methoden dynamisch hinzugefügt werden können
JavaScript
-
Full-Stack (Front- und Backend)
-
Programmierung von dynamischen Webseiten, Erstellung von Spielen oder Mobilen Apps
-
Mit JavaScript bekommt die Website zusätzliche Funktionen
-
Die Scriptsprache ist so konzipiert, dass es in einer Hostumgebung läuft: Es ist ein eigenes Programm aber ein Interpret notwendig, um Java durchzuführen
-
JavaScript (Verhalten) ist nur dann mächtig, wenn man es in Verbindung mit HTML (Struktur und Inhalt) und CSS (Design) verwendet
-
JavaScript ist eine abgespeckte Skriptsprache für Websites, die nicht mit Java verwechselt werden sollte
-
Objektorientiert: Jedes beliebige Objekt kann dynamisch um Eigenschaften und Methoden erweitert werden, es besteht keine Unterscheidung zwischen Typen und Objekten
C
-
Backend
-
System- und Anwendungsprogrammierung (erstellen von Softwarekomponenten, sowie Herstellung und Entwicklung der Software)
-
Steht auf fast allen Computersystemen zur Verfügung und wurde mehrfach standardisiert (Genormte C-Standard Bibliothek)
-
Haupteinsatzgebiet: Systemprogrammierung, insbesondere von eingebetteten Systemen, Treibern und Betriebssystemkernen
C++
-
Full-Stack (Front- and Backend)
-
Erweiterung der Programmiersprache C
-
Systemprogrammierung als auch in der Anwendungsprogrammierung
-
Nachteil: Da C++ auf dem Standard von 1990 aufgebaut ist konnten weitere Erweiterungen keine Berücksichtigung finden
-
Vorteil: Wegen der hohen Geschwindigkeit und geringen Größe ist die Sprache enorm weit verbreitet und es besteht die Möglichkeit komplexe Anwendungen auf minimaler Hardware effizient und stabil auszuführen
C#
-
Full-Stack (Front- and Backend)
-
C# ist eine objektorientierte Programmiersprache, die im Auftrag von Microsoft entwickelt wurde
-
In den meisten Fällen wird sie als Visual C# im Zusammenhang mit dem .NET Framework von Windows genutzt
-
Durch das unabhängige Mono-Framework (Xamarin = Tochtergesellschaft von Windows) können aber auch Anwendungen für Linux, macOS und Android erstellt werden
-
Mit Visual C# und dem Visual Studio lassen sich Anwendungen unterschiedlichen Typs erstellen: Windows-Forms-Anwendungen; Moderne WPF-Anwendungen mit XAML; Datenbankanwendungen; Dynamische Internetanwendungen
-
C# hat seine Wurzeln in der C-Sprachfamilie und ist Programmierern, die mit C, C++, Java und JavaScript arbeiten, sofort vertraut
Visual Basics
-
Frontend
-
Visual Basics ist eine objektorientierte Programmiersprache, die im Zusammenhang mit dem .NET Framework von Microsoft zur Verfügung gestellt wird
-
Man kann sowohl Excel als auch andere Office Programme steuern
-
Automatisierung von regelmäßigen Arbeitsschritten
-
Bau von Excel Tools (z.B. Angebots- & Rechnungsgenerator, Projektmanagementtool usw.)
-
Daten, Tabellen und Diagramme zwischen Excel und den anderen Office Programmen können ausgetauscht werden
PHP
-
Backend (alles was im Hintergrund auf dem Webserver geschieht)
-
PHP steht für „Personal Home Page Tools“ oder auch „Hypertext Preprocessor“
-
Mit PHP lassen sich Webseiten oder Webanwendungen dynamisch gestalten
-
Die Skriptsprache PHP arbeitet serverbasiert, das heißt, dass der Client also nur das Ergebnis der Skriptausführung erhält, ohne zu wissen wie der eigentliche Code aussieht
-
Durch den Aufruf einer Webseite, die PHP-Anweisungen enthält, werden die Anweisungen von dem Computer ausgeführt, auf dem die Webseite gespeichert ist (Webserver); wenn der Webserver die Anweisungen ausgeführt hat, schickt er das Ergebnis an den Computer, der dann die Webseite anzeigt
-
Man verwendet PHP zum Beispiel für ein Kontakt-Formular auf der Webseite; PHP überprüft ob die Eingaben, die ein Webseiten-Besucher macht vollständig sind und versendet dann das Kontakt-Formular als E-Mail
-
Durch große Verbreitung und Beliebtheit ist die Skriptsprache bei fast allen Webhostern verfügbar und es existiert eine große Entwicklergemeinde
Python
-
Full-Stack (Backend wird bevorzugt)
-
Python ist eine universelle, üblicherweise interpretierte (Format der Anweisungen ist vorgegeben), höhere Programmiersprache mit klarer Struktur
-
Einsetzbar für komplexe Softwareprojekte
-
Automatische Speicherverwaltung
-
Multiparadigmensprache (für verschiedene Aufgaben kann jeweils der optimal passende Programmierstil gewählt werden)
Swift
-
Full-Stack
-
Programmiersprache von Apple Inc. für iOS, iPadOS, macOS, tvOS, watchOS und Linux
-
Robuste und intuitive Programmiersprache von Apple zum Entwickeln von Apps für iOS, Mac, Apple TV und Apple Watch
-
Starke, statische Typisierung und optimale Lesbarkeit durch eine aufs Wesentliche reduzierte Syntax
-
Bequemer Einstieg für Anfänger
SQL
-
Frontend
-
Datenbanksprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten und Abfragen von darauf basierenden Datenbeständen
-
Mit SQL-Befehlen lassen sich Daten relativ einfach einfügen, verändern oder löschen
-
SQL verfügt über eine einfach gehaltene Syntax
-
SQL ist standardisiert und kann plattformübergreifend mit vielen Datenbanksystemen genutzt werden
-
Aber: verschiedene SQL-Dialekte, die eine hundertprozentige Komptabilität verhindern
HTML & CSS
-
Frontend
-
Früher wurden Internet¬seiten vollständig in HTML erstellt, dies erwies sich jedoch als zu aufwendig
-
Moderne Layouts lassen sich heute nicht mehr mit reinem HTML umsetzen
-
CSS wurde erfunden, um Web-Designer mit ausreichend Gestaltungsmöglichkeiten auszustatten
-
HTML: Inhalt der Website
-
CSS: Formatierung und Layout
R
-
Frontend
-
R ist eine freie Programmiersprache für statistische Berechnungen und Grafiken
-
Anders als Phyton ist R eine speziell für statische Anwendungen entwickelte Sprache
-
Einsetzbar für statistische Auswertung und die Visualisierung von Daten
-
Der Code und damit die gesamte Software ist frei zugänglich
-
R ist plattformunabhängig und läuft unter den Betriebssystemen Linux, Unix, Windows, und MacOS
Ruby
-
Backend
-
Höhere Programmiersprache
-
Ruby ist eine objektorientierte Programmiersprache auf Open-Source Basis (das heißt der Programmcode ist öffentlich und kann von Dritten gesehen, geändert und genutzt werden)
-
Einfache Syntax, die es für jeden lesbar macht, der mit Programmiersprachen vertraut ist
-
Automatische Speicherung
Wann wird welche Sprache genutzt?
-
Die Basics: Java, C, C++ und C#
-
Moderne Webentwicklungen: JavaScript, PHP und Ruby
-
Datenanalyse und künstliche Intelligenz: Phyton und R
-
Verarbeitung von Datenbanken: SQL
-
Android-App: Java-Welt
-
App für iOS: Objective-C, Swift
-
Desktop Anwendungen für Windows: Visual Studio in C#, C++ oder Visual Basic, Python
-
Spielprogrammierung: C und C++
-
Systemnahe Linux-Programme: C-Sprache, aber es ist auch nahezu jede andere Sprache möglich