Besser Programmieren mit Mathematik - Mike Sperber auf dem Karlsruher Entwicklertag

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 พ.ย. 2024

ความคิดเห็น • 13

  • @hansbleuer3346
    @hansbleuer3346 14 ชั่วโมงที่ผ่านมา

    Interessantes Gespräch

  • @mige1334
    @mige1334 11 วันที่ผ่านมา +3

    Geil, sehe ich mal was aus den Überfliegern unseres Abijahrgangs geworden ist ... der Micha/Mike halt ... Chapeau

  • @sequbeats
    @sequbeats 13 วันที่ผ่านมา +1

    Sehr interessantes Video.
    Tatsächlich erkenne ich sehr viel aus meinem Informatikstudium wieder. Auch wenn in meinen praktischen Erfahrungen diese mathematischen Grundlagen bisher leider weniger Anwendung finden, merkt man doch immer wieder, wie die alltäglichen Strukturen der Softwareentwicklung sich daran orientieren.
    Man nehme als super simples Beispiel einfach mal eine equals-Methode als Abbild einer Äquivalenzrelation, mit eben jenen Eigenschaften, die diese Erfüllen sollte (Reflexivität, Symmetrie und Transitivität). :)

  • @xuan-gottfriedyang5094
    @xuan-gottfriedyang5094 วันที่ผ่านมา

    ich versuche mit "monad" (funktional) zu programmieren

  • @waltertanner7982
    @waltertanner7982 13 วันที่ผ่านมา +1

    Klarer, als ich vom Titel her befürchtet hatte.

    • @developers-club
      @developers-club  11 วันที่ผ่านมา +1

      Wir nehmen das mal als Kompliment, danke 😄

  • @christianhorauf9958
    @christianhorauf9958 12 วันที่ผ่านมา +2

    Ich hoffe im vortrag kam auch vor wie wichtig ein neutrales element ist um eine halbgruppe zu definieren. Denn dadurch spart man sich ganz viele if-statements. Konkateniere Ich z.b. strings muss ich nicht kucken ob einer von beiden ein leerer string ist. Ich kann sie einfach so konkatenieren und bekomme halt den einen von beiden strings raus. Gleiches gilt für Listen. Daher sollte man als Informatiker auch immer noch im Hinterkopf haben ob am sich nicht einfach ein neutrales Element dazu definieren kann. Ich würde den Vortrag gerne nochmal sehen. Wann und wo wäre das denn der Fall?

  • @steffenhantschel2016
    @steffenhantschel2016 13 วันที่ผ่านมา +2

    Klar, wenn ich Objekte habe, die sich addieren lassen, kann ich auch Halbgruppe dazu sagen. Ich frage mich nur, wieso das dann besseren Code erzeugen soll. Bei logischen Rätseln, die man Software lösen möchte, könnte ich mir das vorstellen - allerdings hat man das im gewöhnlichen Software Entwicklungsprozess eigentlich nie. Reicht es nicht, dass man dann einfach den "+"-Operator überlädt? Außerdem soll es angeblich auch Softwareentwickler geben, die keine Algebra Vorlesung gehört haben. So richtig überzeugt bin ich nicht. Gibt es ein konkretes Beispiel mit Code, wo man sehen kann, wie Mathematik zu besserem Code führt?

    • @developers-club
      @developers-club  11 วันที่ผ่านมา

      Zunächst denke ich auch, dass sich das sicherlich nicht immer und auf alles anwenden lässt. Ich würde es so sehen, dass man bei einer mathematischen/algebraischen Modellierung eine ganze Menge an Aussagen über diverse Regel- und Randfälle mitgeliefert bekommt, d.h. der Code wird dadurch besser, dass man den Sachverhalt mit wenigen, aber bedeutungsvollen Zeilen Code auf den Punkt bringt. Sicherlich muss ich da ein oder zwei Abstraktionsschritte zurück treten und mir (ggf. kreativ) überlegen, was eine "Addition" in meinem Domänenkontext sein soll (kann ja etwas ganz anderes als das "Plus" aus der Schulmathematik sein).
      LG Peter vom developers club

    • @MichaelSperber
      @MichaelSperber 11 วันที่ผ่านมา

      Zunächst mal kommen oft die Architekt:innen und Entwickler:innen gar nicht auf die Idee, einen "+"-Operator zu definieren. Wenn die Daten komplexer werden, ist es oft auch nicht so einfach - dann bieten die mathematischen Prinzipien eine Leitlinie für dessen Definition, die Überraschungen vermeiden.

    • @steffenhantschel2016
      @steffenhantschel2016 2 วันที่ผ่านมา

      @@MichaelSperber Die Architektinnen und Entwicklerinnen müssen erst gar nicht auf die Idee kommen, einen "+"-Operator zu definieren, weil gebräuchliche Programmiersprachen wie Python dies von Hause aus mitbringen, bspw. __add__. Genauso wie die Vergleichsoperatoren, Mengenoperatoren und viele andere Konzepte, die aus der Mathematik stammen und integraler Bestandteil moderner Programmiersprachen sind. Eventuell wäre es vorteilhaft, dies zu wissen.

  • @distrologic2925
    @distrologic2925 11 วันที่ผ่านมา +1

    Funktionale Programmierung wird in der deutschen Softwareindustrie viel zu wenig anerkannt. Alles ist Java, C++, Javascript, Python und fertig

  • @distrologic2925
    @distrologic2925 11 วันที่ผ่านมา

    Das ist doch das Kommutativgesetz 😅