17 Programmiersprachen erklärt (in 17min) Fabian Rappert | Data Science Institute https://www.youtube.com/watch?v=9Gtd6E5R39c Transkript (automatisch erstellt) 0:00 Jede Programmiersprache klärt in 18 Minuten. Wir beginnen mit der Programmiersprache C. C wird oft scherzhaft als die Mutter der 0:07 Programmiersprache bezeichnet, denn sie wurde 1972 entwickelt und ist damit älter als das moderne Internet. Außerdem gibt es viele andere Sprachen, die 0:15 darauf aufbauen. Speicherplatz war damals im Vergleich zu heute sehr begrenzt. Da ist C eine sogenannte Low level Sprache, die nah an der Hardware 0:23 arbeitet und direkten Zugriff auf Speicher ermöglicht. Der Tradeoff ist allerdings, dass man manuelle Speicherverwaltung einsetzen muss, was 0:31 einfach ein höherer Entwicklungsaufwand ist. Also Python Code zu schreiben ist auf jeden Fall viel leichter und auch sonst gibt es im Vergleich zu modernen 0:38 Programmiersprachen eine sehr begrenzte Standardbibliothek. Das bedeutet, dass du viel Codes selbst schreiben musst, wohingegen du bei moderneren 0:45 Programmiersprachen viel Code von Bibliotheken verwenden kannst. Dafür ist C allerdings so minimalistisch und so effizient, dass es sogar auf 0:53 Taschenrechnern verwendet wird. Auch große Teile vom Windows und Mac Betriebssystem und auch das Linux Kernel wurden ins C geschrieben. Heute benutzt 1:01 man es vor allem in eingebitteten Systemen, Microcontrollern und das Internet of Things. Also wenn du z.B. eine moderne Spielmaschine mit Internet 1:09 empfangen hast. Die nächste Sprache ist C++. Der Name ist ein bisschen mit einem Augenzwinggang gemeint. Es bedeutet so viel wie Cur eine Stufe besser, denn C++ 1:18 wurde als Erweiterung von C entwickelt. Eine Sprache, die jetzt auch objektorientierte Programmierung mit Vererbung, Polomphie und Klassen 1:27 unterstützt. C+ hat jetzt auch eine umfangreichere Standardbibliothek mit Funktionen und Datentypen. Viele Computerspiele wie Call of Duty oder 1:35 auch Fortnite sind in C oder C++ geschrieben, um eben sehr viel Performance zu haben. Aber auch Datenbanken wie MySQL und da haben wir 1:43 auch ein Tutorial hier auf dem Kanal oder auch Postcl Datenbanken sind in C++ geschrieben. Außerdem viele Augmented und Virtual Reality Anwendungen sind in 1:52 C++ geschrieben. C und C++ haben aber einen hohen Schwierigkeitsgrad wegen der manuellen Speicherverwaltung und der eher komplexeren Syntax. Einige 2:01 Entwickler bei Google hatten eine ziemliche Abneigung gegen C++ und wollten was Besseres schaffen. Und damit kommen wir zur nächsten 2:08 Programmiersprache. Go. Die Sprache wurde 2009 von Google entwickelt. Go ist von der Syntax ähnlich zu C, ist aber einfacher und lesbarer formatiert. Das 2:18 Ziel ist, dass das Programmieren damit einfacher und weniger fehleranfällig wird. Durch das sogenannte Garbage Collecting kann Go zwar nicht ein 2:27 Biomüll rausbringen, aber es sorgt dafür, dass du dich nicht mehr selbst um die Speicherverwaltung, Speicheraufräumen kümmern musst. 2:33 Außerdem hast du bei Go Routines und Channels, damit Programme auch gleichzeitig ablaufen können. Das nennt sich Parallelisierung und 2:40 Nebenläufigkeit. Go ist damit ideal für Clowndienste und Microservices. Tools wie Docker beispielsweise und Kubernetis sind in Go programmiert und damit kommen 2:50 wir zu Rust. Eine kleine Warnung vorweg, diese Sprache ist für Anfänger eher schwierig. Dafür ist es aber eine sehr leistungsstarke Programmiersprache und 2:59 ist oft vergleichbar mit C und C++. Rust hat einen Fokus auf Typisung, was zwar aufwendiger in der Programmierung ist, aber dementsprechend auch weniger 3:09 Fehleranfällig. Rust wird in vielen Anwendungsbereichen verwendet, von Netzwerkanwendungen bis Blockchain und Game Development. Und damit zu einer 3:18 Sprache, von der du wahrscheinlich schon mal gehört hast, Java. Oder zumindest hast du wahrscheinlich schon mal dieses Logo mit einer Kaffeetasse gesehen, denn 3:26 Java ist eine Insel in Indonesien, wo die berühmte Kaffeesorte kultiviert wird und damit kam es zu diesem Logo. Die Obsession zu Kaffee in der IT habe also 3:35 scheinbar nicht nur ich selbst. Java ist eine highlevel objektorientierte und klassenbasierte Sprache. Sie ist Plattform unabhängig, also nach dem 3:44 Prinzip einmal schreiben, überall benutzen. Java ist außerdem eine General Purpose Programmiersprache. Das heißt, sie hat viele verschiedene 3:52 Anwendungsfälle. Z.B. verbreitet bei mobile und Cloud Applikationen, aber auch bei Computerspielen, die von der Plattform Unabhängigkeit profitieren. 4:01 Z.B. Einiger dieser Computerspiele, die du vielleicht damals im Browser gespielt hast, sind in Java programmiert. Java wird außerdem verwendet, um Spiele für 4:10 Android zu entwickeln, aber auch Walmart benutzt Java, um ihre eigenen Anwendung zu entwickeln. Obwohl Java immer noch weit verbreitet ist, hat diese Sprache 4:19 im Vergleich zu anderen Programmiersprachen im Lauf der Zeit ein bisschen an Popularität verloren. Andere Sprachen, die die sogenannte Java 4:26 Virtual Machine verwenden, haben allerdings an Popularität zugenommen. So z.B. Cotlin. Cotlin nutzt wie gesagt die Virtual Machine von Java und ist damit 4:35 auch Plattform unabhängig. Außerdem können Entwickler ihren Cotlin Code in Java integrieren. Das Ziel dabei ist allerdings eine kürzere und lesbarere 4:44 Syntx zu bieten. Cotlin unterstützt neben objektorientierter Programmierung auch andere funktionale Konzepte wie Lambdas und Higher Order Funktion, um 4:54 das Programmieren noch einfacher zu gestalten. Der Name ist ebenfalls eine Anspielung an Java, denn auch Cotlin ist eine Insel. Die Sprache wurde 2011 von 5:03 Jetrains entwickelt und 2017 von Google die offizielle Sprache für Android Anwendung genannt. Und oft wird Cotlin auch in Kombination mit dem Framework 5:14 Jetpack Composted, dem UI Framework von Google verwendet. Damit kann man einfach Animation und auch Interaktion in Android verwenden. Hauptsächlich wird 5:23 Cotlin für Android Applikationen verwendet wie die Netflix App oder Duingo. Auf der anderen Seite haben wir dann die Sprache Swift. Diese wird 5:32 hauptsächlich verwendet auf den Plattformen iOS, MacOS und anderen Apple Plattform. Der Name Swift soll signalisieren, dass die Sprache einfach 5:40 zu lernen und zu implementieren ist, die Syntax schnell lesbar und sicher ist und so wie Cotlin oft zusammen mit dem Design Framework Jetpack Compose 5:51 verwendet wird, so wird Swift oft zusammen mit Swift UI verwendet, um eben auch hier einheitliche und schöne Benutzeroberflächen zu bauen. Swift 6:01 wurde beispielsweise verwendet für LinkedIn oder Airbnb oder auch die Lift App im App Store. Übrigens kann du Applikation auch entwickeln, dass sie 6:11 Plattformübergreifend verwendet werden können, also nicht nur auf Android oder auf iOS. Dafür benutzt du beispielsweise die Programmiersprache Dart mit dem 6:19 Framework Flatter. Was aber, wenn du nicht Apps, sondern richtige Spiele entwickeln möchtest? Dann gibt es vor allem zwei bekannte Game Engines. Die 6:29 Unreal Engine, für die die Sprache C++ verwendet wird, die hatten wir gerade schon und Unity, für die CS#ARP verwendet wird. C#ARP wurde von 6:38 Microsoft im Jahr 2000 entwickelt und ist Teil vom Netframework, was Plattformübergreifende Entwicklung ermöglicht. Und der Name C#b ist etwas 6:47 irreführend, denn das Hashagsymbol besteht im Prinzip aus 4+, die das Routersymbol dann bilden. Das wäre dann C++++++. Dennoch ist C#ARP nicht eine 6:59 richtige Erweiterung von C oder C++, sondern eine eigenständige Programmiersprache. Sie ist vollständig objektorientiert und ähnelt von den 7:09 Konzepten her C++, aber auch Java. C#ARP unterstützt moderne asynchrone Programmierung. Dank statischer Typisung werden Fehler zudem meist zur Komierzeit 7:20 erkannt, was die Codequalität noch weiter erhöht. Viele Spiele wuren C#ARP entwickelt. So wirbt zumindest Unity auf der eigenen Webseite, dass über 70% der 7:31 1000 besten Mobile Games mit Unity erstellt wurden. Und damit kommen wir weg von der Spielerentwicklung hin zum Internet. Und damit möchte ich dir jetzt 7:39 als Programmiersprachen HTML und CSS vorstellen. Okay, ist ja gut. Die nicht Programmiersprache Hypertext Markup Language HTML wird zusammen mit 7:52 Cascading Style Sheets CSS genutzt, um Dokumente mit Texten, Bildern, Hyperlinks unter anderen Sachen für Webbrowser zur Entwicklung. Also im 8:02 Grunde Webseiten. HTML regelt dabei im Grunde das Gerüst oder Skelett einer Website und CSS die Formatierung. HTML ist dabei Plattform unabhängig und kann 8:13 auf allen Systemen und Browsern laufen. In CSS definieren wir für bestimmte Textklassen oder Elementen IDs eine Farbe, ein Font, das Padding, die Größe 8:23 und viel mehr. Du kannst dir, wie beispielsweise hier, falls du auf einer Website bist, dir den HTML und CSS Code genauer anschauen. Zugegebenermaßen 8:33 werden aber inzwischen für viele Webseiten sogenannte No Code oder Low Code Tools verwendet. Tools wie WordPress, Squarespace oder Wixs, wo man 8:43 per Drag and Drop einfach Webseiten erstellen kann. beispielsweise kann man bei uns ja kostenlose IT- Weiterbildung besuchen und bei unserer Website hat 8:51 sich jetzt auch keiner hingesetzt und einfach selber diese Website gebaut. Wenn die Website jetzt aber nicht nur statisch sein soll, brauchen wir etwas 8:59 anderes. Damit kommen wir zur Programmiersprache JavaScript. 99% der Webseiten benutzen JavaScript für Kleinzeitinaktion im Front-End, womit 9:10 JavaScript also im Grunde sowas ist wie das Gesicht des Webs und damit auch eine der bekanntesten und beliebtesten Programmiersprachen der Welt. Java und 9:20 JavaScript sind aber trotz des ähnlichen Namens komplett andere Programmiersprache. JavaScript ist eine highlevel objektorientierte 9:29 Programmiersprache mit Dynamic Typing und sie wird dieses Jahr 30 Jahre alt. Webbrowser haben eine dedizierte JavaScript Engine, welche unseren Code 9:40 ausführt und uns erlaubt mit diesen Elementen der Seite zu interagieren. Es ist im Grunde genommen schon sehr schwer Seiten zu finden, die kein JavaScript 9:48 nutzen. YouTube, Facebook und Netflix nutzen JavaScript. Die Menschen in der Softwareentwicklung wollten aber eine sicherere und leistungsstärkere Sprache 9:58 haben. Und das bringt uns zur nächsten Programmersprache Typescript. Typescript wird seit Jahren immer und immer beliebter. Sie ist die Weiterentwicklung 10:08 von JavaScript, ein sogenanntes Supperset, welche weitere Funktionalitäten bietet, aber weiterhin JavaScript Code ausführen kann. Im 10:16 Gegensatz zu JavaScript benutzt Typescript statische Typisung und überprüft Datentypen bereits zur Entwicklungszeit. Das hilft Fehler 10:26 frühzeitig zu erkennen und daher auch der Name Typescript. Jeder JavaScript Code ist automatisch auch TypeScript, wodurch Entwickler 10:35 schrittweise auf Typescript umsteigen können. Und die Sprache gewinnt, als sie 2012 von Microsoft entwickelt wurde, immer mehr an Beliebtheit. Ein bekanntes 10:45 Projekt ist hierbei die Apps Lack, die wir hier im Unternehmen verwenden, um Nachrichten hin und her zu schreiben. Und jetzt kommen wir aber auch zur 10:52 Backend Entwicklung. Im Gegensatz zum Frontend ist es das, was nicht sichtbar ist für den Nutzer und was für die Datenverarbeitung und Systemlogik im 11:02 Hintergrund sorgt. Da nutzt man auch häufig JavaScript, was wir ja gerade vorgestellt haben, oder aber auch Python zu der Sprache wir noch kommen, oder 11:10 aber auch z.B. die Sprache Ruby. Auch Ruby gehört zu den bekanntesten Sprachen. Sie ist dynamisch, objektorientiert und Plattform 11:18 unabhängig. Kleiner Fun Fact, Ruby Entwicklerinnen und Entwickler verdienen laut Stackoverflow im Vergleich zu den anderen vorgestellten Sprachen am 11:27 meisten Geld. So ganz allgemein lässt sich das aber nicht sagen, weil es natürlich auf viele verschiedene Faktoren wie die Berufserfahrung, den 11:35 Standort und die Branche ankommt, zumal in der IT natürlich generell sehr gut verdient wird. Ruby erlaubt es uns vor allem große Datenmengen effizient zu 11:45 verarbeiten und ist damit perfekt für dynamische und skalierfähige Webseiten. Echte Projekte gibt's hier unsäelige wie Airbnb und auch GitHub. Unsere nächste 11:55 Sprache PHP hingegen gibt es schon ein wenig länger. Sie ist an sich eine General Purpose Scripting Language und wird häufig für die Webentwicklung 12:04 verwendet. Man schreibt damit Scripte, um Webseiten serverseitig effizienter zu machen, Datenbanktegration zu erstellen und zu sichern und Schnittstellen 12:14 herzustellen zwischen API und Microservices. PHP ist dabei recht sicher und kosteneffizient und wird häufig für WordPress und E-Commerce 12:23 Seiten genutzt. Und damit kommen wir weg vom Internet und gehen hin zu Sprachen für die Datenanalyse, Statistik und Machine Learning. Das ist auch eher mein 12:33 Spezialgebiet, weil wir hier eben IT- Weeiterbildungen machen, die genau diesen Schwerpunkt haben. Und im Grunde gibt's da zwei sehr bekannte Sprachen. 12:40 Die erste ist Python. Python ist auch eine der beliebtesten und meist genutzten Sprachen der ganzen Welt. Hier bei der offiziellen Statistik von GitHub 12:50 für die meist genutzten Programmiersprachen lag Python über Jahre auf dem zweiten Platz dicht hinter JavaScript und 2024 aber erstmalig auf 13:00 Platz 1. Das liegt vermutlich daran, dass sie besonders stark im Bereich Datenanalyse und Machine Learning ist und dieser Bereich mit dem Bereich KI, 13:09 also künstliche Intelligenz einfach stark im Hype ist. Und zum anderen ist die Sprache genauso wie JavaScript einfach sehr intuitiv und super geeignet 13:18 für Anfänger. Wir haben z.B. hier auch auf dem Kanal ein Python 6 Stunden Anfänger Tutorial. Python ist zwar eine Sprache, die besonders viel genutzt wird 13:28 im Daten und Machine Learning Bereich, aber auch eine General Purpose Sprache, also eine Allzweckprogrammiersprache, die in 13:35 vielen verschiedenen Anwendungsgebieten Anwendung findet. beispielsweise für Webapplikation und Automatisierung. Da Python eben so gefragt ist in der IT, 13:45 liegen wir auch in unserer Weiterbildung sehr, sehr starken Fokus drauf. Übrigens sind unsere IT-weiterbildung kostenlos für Leute, die arbeitslos sind, mit 13:53 einem Bildungsgutschein und für manche Leute in Anstellung auch kostenfrei über das Qualifizierungs und Chancengesetzt. Falls du hierzu mehr Infos haben 14:01 möchtest, verlinke ich dir mal unsere Webseite in der Videobeschreibung. Python ist eine dynamisch typisierte Highlevel Programmiersprache. Während 14:08 wir bei C eine sehr komplexe Syntax haben, dafür aber den Speicher sehr effizient nutzen. Eine sogenannte Low levelish Programmiersprache ist dabei 14:17 Python nicht so effizient, dafür aber leichter in der Syntax leichter zu lernen und dementsprechend leichter zu programmieren. Das ist dann eine 14:26 Highlevel Programmiersprache. Python hat eine sehr große Community mit Projekten und Bibliotheken und damit gerade im Machine Learning Bereich super 14:35 aufgestellt. Beispielsweise die Instagram Backend Infrastruktur und aber auch große Teile vom Spotify Service nutzen Python. Netflix oder aber auch 14:45 Google hat sich schon vor einigerer Zeit dazu entschlossen, Python mehr zu verwenden und angeblich kursiert der Satz darum Python where we can C++ where 14:54 we must. Und dann gibt es noch die Programmiersprache R, die ebenfalls häufig im Bereich Datenanalyse verwendet wird, deutlich weniger verbreitet, aber 15:03 gerade im Bereich der Wissenschaft beispielsweise wird er auch häufig eingesetzt und häufig wird es auch in Statistikmodulen von Universitäten 15:11 gelernt und genau dafür ist es auch angelehnt, statistische Berechnung und Visualisierungen. Wir haben hier auf dem Kanal auch ein Video, wo wir noch 15:19 genauer darauf eingehen, ob du dich eher für R oder Python entscheiden solltest. Wir wollen jetzt aber zur letzten Sprache dieses Videos kommen. SQL. SQL 15:28 ist die Sprache, mit der du mit Datenbanken kommunizieren kannst. SQL ist keine General Purpose Programmiersprache wie Python, sondern 15:36 eine Domainspezifische Sprache. Mit dieser kannst du Daten von einer Datenbank abfragen, ändern, hinzufügen oder auch löschen. Es gibt das 15:44 sogenannte relationale Datenbankmodell. Das hat vor einiger Zeit den Umgang mit Daten revolutioniert. Ob erklärt hast du hier beispielsweise zwei Tabellen, eine 15:54 mit Kundinen und Kunden und eine mit Produkten und beide enthalten beispielsweise den Produktnamen und können damit eine Verbindung herstellen. 16:02 In dem Beispiel hier können wir beispielsweise herausfinden, dass Mimi Mustermann 42 € ausgegeben hat. SQL wurde in den 16:10 1970er Jahren entwickelt und eben auf Grundlage von diesem relationalen Datenbankmodell. Mittlerweile können diese Abfragen auch mit General Purpose 16:19 Sprachen gemacht werden, z.B. in Python mit der SQL Alchemy Bibliothek oder aber auch in Front-Endend mit JavaScript. Da SQL aber so lange schon etabliert ist, 16:30 wird sie auch von einer ganzen Menge großer Konzerne genutzt. Es ist eines der gefragtesten Skills in der IT-Welt, also nicht nur für Programmiererinnen 16:38 und Programmierer, sondern ich habe damals auch mit SQL als Dataan Analyst gearbeitet. Daher haben wir hier auf dem Kanal auch ein 3 Stunden Tutorial dazu 16:45 und bringen in unseren IT Weeiterbildung auch SQL bei. Wenn du beispielsweise nach Stellenausschreibung für Dataan Analyst oder Business Intelligence 16:53 Analysten suchst, wird sehr sehr häufig SQL auftauchen. Das waren die wichtigsten Programmiersprachen, aber auch Scriripting und Markup Languages. 17:03 Und damit bis zum nächsten [Musik] Video. Dan statischer Typisung werden Fehler meistens schon zur Kompiliertzeit 17:24 erkannt. H die Codequalität einfach noch ich Codequalität gerade so komisch ausgesprieb was die Code Qualität einfach noch erhöht 17:47 Oh shit.