Programmierparadigmen: prozedural, objektorientiert, funktional und logisch

Aufzeichnung eines Lehrgesprächs mit meinen Azubis zum/zur Fachinformatiker:in Anwendungsentwicklung als Vorbereitung auf Teil 1 der gestreckten Abschlussprüfung (und AP2 für Anwendungsentwickler:innen). Meine Themenliste zur AP1: it-berufe-podcast.de/GAP1
Es geht um Programmierparadigmen! Wir unterscheiden die Generationen von Programmiersprachen (1GL, 2GL, 3GL, 4GL), unstrukturierte und strukturierte Programmierung, imperative und deklarative Programmierung und die vier Paradigmen prozedural, funktional, objektorientiert und logisch.
Es gibt viiieeele Codebeispiele in Java, C, Elixir, Basic und Prolog, die die Paradigmen verdeutlichen.
Links:
* Oldenburger Computermuseum: fiae.link/OCM
* Go To Statement Considered Harmful: fiae.link/GotoConsideredHarmful
Für eine Vertiefung des Themas empfehle ich das Buch "7 Languages in 7 Weeks": fiae.link/7Languages (Affiliate-Link)
00:00 Einführung
01:20 Generationen von Programmiersprachen
02:20 1GL: Maschinencode
04:13 2GL: Assembler
06:02 3GL: Hochsprachen
07:48 4GL: Domänenspezifische Sprachen
08:49 Vor-/Nachteile der Abstraktion
10:54 Unstrukturierte Programmierung mit GOTO
12:32 GOTO mit Zeilennummern
14:06 GOTO mit Labels
14:35 Das Problem mit GOTO
16:12 GOTO considered harmful
17:23 Strukturierte Programmierung
18:16 Sequenzen, Verzweigungen, Wiederholungen
19:34 Imperativ vs. deklarative Programmierung
22:02 Beispiel für imperative Programmierung
24:01 Beispiel für deklarative Programmierung
26:16 Vergleich imperative/deklarative Lösung
27:12 Prozedurale Programmierung
28:52 Definition einer Funktion in C
30:30 Prozedur vs. Funktion
31:05 Vorteile der prozeduralen Programmierung
31:31 Herleitung der Paradigmen
32:08 Problem der prozeduralen Programmierung
35:39 Objektorientierung
36:08 Kapselung von Daten und Funktionen
37:49 Funktionale Programmierung
38:32 Mathematik als Ursprung von FP
40:00 Definition Programmierparadigma
41:03 FP-Beispiel in Elixir
41:38 Grundsätze funktionaler Programmierung
42:24 Higher Order Functions
42:56 First Class Functions
44:55 Functional Composition
47:29 Immutability
48:42 Liste der Grundsätze von FP
50:16 Functional Purity
51:37 Recursion
53:02 Logische Programmierung
54:36 Prädikatenlogik
55:45 Fakten und Regeln
58:52 Abfragen der Wissensbasis
1:00:45 Grundsätze der logischen Programmierung
1:01:24 Unification
1:01:50 Backtracking
1:05:05 Zusammenfassung

Пікірлер: 39

  • @georgwagner5577
    @georgwagner55775 ай бұрын

    Meine Güte, sind Sie sympathisch :) Das Video selbstverständlich auch.

  • @StefanMacke

    @StefanMacke

    5 ай бұрын

    Hehe 😄 Das freut mich.

  • @Florian_Kah
    @Florian_Kah2 ай бұрын

    Sauber Stefan und danke für dieses informative Video. Grüße aus Oldenburg ;)

  • @StefanMacke

    @StefanMacke

    2 ай бұрын

    Danke für das Feedback und lieben Gruß zurück! :-)

  • @Lilly_92
    @Lilly_92Ай бұрын

    Vielen lieben Dank für deine tollen und super verständlichen Videos! 🙏

  • @StefanMacke

    @StefanMacke

    Ай бұрын

    Gern geschehen! :-)

  • @Ohykha
    @Ohykha5 ай бұрын

    Das jetzt mein Lieblingspodcast, super interessant!

  • @StefanMacke

    @StefanMacke

    5 ай бұрын

    Danke für das positive Feedback! 😊

  • @Ilijan99
    @Ilijan994 ай бұрын

    Top Podcast und sehr geile Prüfungsvorbereitung^^

  • @StefanMacke

    @StefanMacke

    4 ай бұрын

    Danke, das freut mich! 😊

  • @cloudnexu5854
    @cloudnexu58544 ай бұрын

    Sehr Gute und verständliche Videos ! Danke für die Mühe!

  • @StefanMacke

    @StefanMacke

    4 ай бұрын

    Sehr gerne!

  • @gamingsoccer1399
    @gamingsoccer13998 ай бұрын

    Danke, sehr Intensives Video und man wird richtig eingeführt

  • @StefanMacke

    @StefanMacke

    8 ай бұрын

    Danke, das freut mich! 😊

  • @Kahg12
    @Kahg1220 күн бұрын

    Sehr hilfreich, Dankeschön

  • @StefanMacke

    @StefanMacke

    20 күн бұрын

    Danke für das Feedback. Freut mich, wenn ich helfen kann.

  • @abdellatifessamir8121
    @abdellatifessamir81214 ай бұрын

    danke sehr ich lerne jedes mal etwas neues :

  • @StefanMacke

    @StefanMacke

    4 ай бұрын

    Das freut mich! 😊

  • @kocmus-ro4ik
    @kocmus-ro4ik8 ай бұрын

    Danke für dieses Video

  • @StefanMacke

    @StefanMacke

    8 ай бұрын

    Gern geschehen! 😊

  • @Asmodeus_death
    @Asmodeus_death3 ай бұрын

    Du bist mein Messias 🙏🏻🖤 bei mir ist es am 16.04 also Dienstag soweit mit der Ap1 und mir geht der Popo auf Grundeis da sind deine gut verständlichen und gut strukturierten Videos ein Segen 🔥 Dankeschön

  • @StefanMacke

    @StefanMacke

    2 ай бұрын

    Gern geschehen! Freut mich, wenn ich helfen kann.

  • @Sinan97082

    @Sinan97082

    2 ай бұрын

    WBS? :))))

  • @StefanMacke

    @StefanMacke

    2 ай бұрын

    @@Sinan97082 WBS!?

  • @Sinan97082

    @Sinan97082

    2 ай бұрын

    @@StefanMacke Tut mir leid, sollte an @Asmodeus_death gehen. WBS ist ein Bildungsträger, über die ich meine Umschulung (+ 1 Jahr Prakitkum) absolviere.

  • @wanjaclodt-cy1vk
    @wanjaclodt-cy1vk3 ай бұрын

    Deine Videos helfen mir sehr bei der Prüfungsvorbereitung! Kannst du ein Video zu den Programmieranforderungen der AP2 erstellen? Die üblichen Beispielaufgaben aus Klausuren (z.B. Bubblesort etc.) und Erklärungen zu Objektorientierung und Pseudocode wären sehr hilfreich.

  • @StefanMacke

    @StefanMacke

    3 ай бұрын

    Weitere Videos sind in Arbeit. Aber ich kann noch nichts versprechen...

  • @derNetZwerg
    @derNetZwerg3 ай бұрын

    Vielen Dank! Super zusammen- und vorgetragen. Bezüglich deiner Aussage, dass MS-DOS in BASIC geschrieben wurde, muss ich dir leider widersprechen. Meine Recherchen haben ergeben, dass MS-DOS in Assembler geschrieben wurde. Allerdings konnte ich das nicht genau für den Initator QDOS herausfinden.

  • @StefanMacke

    @StefanMacke

    3 ай бұрын

    Das scheint zu stimmen! :-) Danke für die Korrektur.

  • @cloudnexu5854
    @cloudnexu58544 ай бұрын

    kann man nicht eig sagen das C#, C++ und co Sprache der 4G sind da die abgeleitet von C sind ?

  • @StefanMacke

    @StefanMacke

    4 ай бұрын

    Nein, da sie keine weitere Abstraktion gegenüber C darstellen.

  • @theTrigant
    @theTrigant8 ай бұрын

    Edit: Hat sich geklärt, danke vielmals

  • @StefanMacke

    @StefanMacke

    8 ай бұрын

    Wie genau kommst du zu dieser Annahme? Ich gebe mir Mühe, alle Zuschauergruppen zu inkludieren.

  • @theTrigant

    @theTrigant

    8 ай бұрын

    @@StefanMacke 55:56 "Jetzt ist ein Mensch entweder ein Mann oder eine Frau" Sehr löblich, dass du dich sonst bemühst, da ist das wohl rausgerutscht, keine Ahnung.

  • @StefanMacke

    @StefanMacke

    8 ай бұрын

    @@theTrigant Ok, du meinst das Prolog-*Beispiel*. Das ist bewusst gekürzt für das Video und erhebt keinen Anspruch auf die Abbildung der Realität. Ich habe ja auch nicht alle Figuren der Simpsons aufgeführt, die es gibt. 🙄 Da hast du jetzt aber nach dem Haar in der Suppe gesucht...

  • @StefanMacke

    @StefanMacke

    8 ай бұрын

    @theTrigant Um das zu ergänzen: die Simpsons-Charaktere böten genug Möglichkeiten, auch andere Daten für meine Faktenbasis zu definieren außer frau() und mann(). Siehe: simpsons.fandom.com/wiki/LGBT_characters 😊

  • @theTrigant

    @theTrigant

    8 ай бұрын

    @@StefanMacke mir ist es entgegengesprungen. Gesucht hab ich da nix. Für das von mir o.g. Zitat kann ich ja jetzt nix. Zudem falls es dir in dieser Situation bewusst gewesen wäre, hättest du das natürlich, da du das ja sonst auch tust, mit einem Nebensatz alle anderen Beteiligten, die sich nicht in deinem Beispiel befänden, eingeschlossen. Danke für die Mühe sonst