Ist Java noch zeitgemäß in der Hochschullehre?

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

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

  • @Samuel-nt6vk
    @Samuel-nt6vk 6 ปีที่แล้ว +5

    Meiner Meinung nach ist JavaScript nicht geeignet um Programmieren zu lernen. Wie Sie bereits sagten, ist es schließlich das Assembler des Webs. Objektorientierung kann vielleicht gut per TypeScript gelernt werden. Man kann somit schnell Dynamik auf einer Webseite zeigen, als auch "Konsolenanwendungen" mit klassischer Ein- und Ausgabe (node.js Interpreter). Ein Vorteil wäre vielleicht auch, dass offensichtlich ist, dass der TypeScript Kompiler den Code zunächst übersetzen muss. Unschön ist jedoch der untypisierte Zugriff auf den DOM.
    Mir hat es jedoch nicht geschadet, OOP per Processing zu lernen, das war ganz spaßig.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Danke für Ihren Kommentar (und auch den Hinweis, dass Ihnen Processing nicht geschadet hat ;-)

  • @tristanschonhals4416
    @tristanschonhals4416 6 ปีที่แล้ว +6

    Ich finde ganz ehrlich, dass Java alles andere als langweilig ist. Wenn ich mir für den allerersten Anfang ein System.out.println mit Hello World hinschreiben kann, dann hab ich schon was zum zeigen. Ich denke, es könnte etwas schlechtes sein, wenn man gerade am Anfang was "cooles und einfaches" mit den Leuten macht. Denn dann denken ganz viele, hey das ist bestimmt alles so einfach das ist total mein Ding und dann im 2/3 Semester fahren sie volle Kanne gegen die Wand, weil plötzlich ganz viele "langweilige uns schwierige" Sprachen und Konzepte um die Ecke kommen.
    Tl;Dr:
    Ich fand den Einstieg im 1. Semester klasse. Ohne Vorkenntnisse musste man sich schon privat damit beschäftigen, wenn man besser programmieren wolltr, aber dafür studiert man ja auch.

  • @krattewe
    @krattewe 6 ปีที่แล้ว +5

    JavaScript oder generell WebApplikationen als erster Berührungspunkt im Programmieren ist zwar wahrscheinlich für den Sichtbaren Erfolg ein schnelles Mittel, jedoch sehe ich hier mehrere Gefahren.
    1. JavaScript ist eine schreckliche Sprache die man sich erst einmal beibringen muss. Diverse Sprachfeatures sind relativ neu und gibt es erst seit kurzem. Rundum müsste man hier schon um optimal zu agieren seine erste Abhängigkeit erklären auf Babel.
    2. TypeScript erschlägt viele Probleme von JavaScript macht es aber alles andere als verständlicher. TypeScript wird in Javascript gewandelt mittels Transpiler der wieder mit Babel umgewandelt wird. Welcher Erstsemester kommt denn da bitte mit?
    3. NPM und YARN kommen relativ zügig dazu. Dann werden einfach irgendwelche weitere Abhängigkeiten definiert und das Chaos ist groß und niemand versteht eigentlich was er da wirklich tut. Ausbildung sieht meiner Meinung nach anders aus.
    4. React-Native als "Schnelle Lösung" um Mobile Apps zu schreiben ist der komplett falsche Weg. Hier hole ich mir wieder über 550 Abhängigkeiten in mein Projekt. Ich würde gern dann von einem Erstsemester erklärt bekommen was eigentlich das alles macht.
    5. JavaScript ist nicht die WebAssembler Sprache. Das wäre dann eher, wer hätte es gedacht WebAssambler. Man kann auch ganze Internetapplikationen ohne eine Zeile JavaScript schreiben powered by good old java. Gar kein Problem, finde die Idee das überhaupt als "WebAssembler" zu betiteln fraglich.
    Ich als langjähriger Entwickler würde mich über Studienabgänger freuen die wirklich ein wenig von den basics Ahnung haben. Macht das Spaß? Nein natürlich nicht. Aber wenn ich jemanden der einen Master in Informatik habe die basics von der Programmierung erklären zu müssen, brodel ich jedesmal innerlich.
    Meiner Meinung nach entweder bei Java stecken bleiben oder doch gleich ganz bei C. Danach hat man Verständnis für (fast) jede andere Programmiersprache und kennt sich mit den basics aus. Ist die Hürde größer? Na ganz klar!
    Aber Hey das sind Studenten. Die machen das Freiwillig, die haben sich selbst dazu entschieden das zu lernen darum sollte man nicht auf "Hey wir machen coole sachen mit TypeScript und React-Native" beharren um seine Studenten zufrieden zu machen. Das sollte meiner Meinung nach immer noch bei einen selbst liegen ob man das auch nebenher macht (als Student). Man kann evtl. dort als Dozent den Anstoß in die Richtung geben. Jedoch gehört das gute alte Programmieren tatsächlich zu den Grundlagen.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Vielen Dank für die wertvollen Gedanken! Was halten Sie von der Metapher? Erst mal Fliegen lernen, dann die Aerodynamik, wobei man das Fliegen fortsetzt. Statt erst Aerodynamik und dann Fliegen. Ein Erstsemester muss nicht alles gleich verstehen und erklären können, was er oder sie da tut. Oder?

    • @krattewe
      @krattewe 6 ปีที่แล้ว +3

      Trotzdem muss man erstmal die Grundlagen vom Fliegen verstehen. Man setzt sich ja nicht in ein Flugzeug fliegt los. Da muss man auch wissen an welchen Hebeln man ziehen muss. Darum wird auch beim fliegen lernen eher eine "Schrottmühle" genommen, die nicht so viele technische Unterstützungen hat um das fliegen zu lernen.

  • @nadikurt12
    @nadikurt12 6 ปีที่แล้ว +3

    Herr Prof sie verbessern sich von Video zu Video.
    Ich beobachte ihren Unterricht sehr aufmerksam. Sehr interssant nach den Semesterferien geht's endlich weiter

  • @felixjunghans3181
    @felixjunghans3181 6 ปีที่แล้ว +2

    Sehr gutes Video.
    Ich hatte in meine gesamten Studium an der HS Heilbronn keine, von Professoren getriebenen, Berührungspunkte mit JavaScript. Ganz im Gegenteil, war ich immer der, der in Projektarbeiten darum kämpfen musste, mit JavaScript arbeiten zu dürften.
    Und wie sieht es heute nach dem Studium aus? Ich arbeite nur noch mit React oder React Native (da natürlich noch mit Swift und Java) & bei vielen anderen Kommilitonen sieht es nicht anders aus. Auch wenn es da vielleicht Angular oder Ember ist.
    Ich sage nicht, dass man mit JavaScript Programmieren lernen sollte, aber man sollte im Verlauf des Studiums mit der Zeit gehen und da gehört JavaScript einfach dazu.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว +1

      Danke für Ihren netten Kommentar und die Einblicke vom Studium zum Beruf. Das gibt zu denken! Ich tüftel weiter an einer Lösung in Sachen Programmierung, diskutiere das mit allerlei Menschen. Grüße nach Heilbronn!

  • @bilalreffas1270
    @bilalreffas1270 6 ปีที่แล้ว +2

    Sehr gutes Video Herr Herzberg. Ich finde es wirklich gut, dass Sie als Prof da sehr engagiert sind und schauen ,was in der IT Welt so los ist. Ich finde weder ist Javascript noch Typescript als Einsteigersprache wirklich passend. Das Java nicht mehr wirklich zeitgemäß ist, sehe ich auch so. Es ist dennoch wichtig, eine Programmiersprache zu beherrschen, die eine starke Typisierung mit sich bringt und dabei auch noch funktionalen Code zulässt (Haskell, Swift, Rust etc..). Wahrscheinlich führt kein Weg dadran vorbei, erstmal eine Sprache "richtig" zu beherrschen, bevor man etwas entwickelt möchte, was man auch Menschen zeigen will (zumindestens wenn es nachhaltig sein soll). Was ich damit sagen will, wenn es nicht Java ist, dann ist halt eine andere Sprache "langweilig". Es gibt wahrscheinlich keine Universallösung. Jeder muss für sich selbst finden wie er durch die Programmiergrundlagen durch will, um anschließend etwas cooles bauen zu können. Der Anfang ist eventuell hart und langweilig, aber diese Schritte sind sehr wichtig, um alles weitere besser verstehen zu können. Wenn es Java nicht mehr an Hochschulen geben sollte, dann wird es höchstwahrscheinlich einen anderen Buhmann geben. Was ich mir generell mehr wünschen würde wäre, dass das Unternehmertum mehr gefördert wird in Hochschulen. Wir haben in Deutschland so viel Potenzial und könnten viel mehr reißen.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว +1

      Vielen Dank für Ihre Gedanken. Sie haben recht: irgendwie ist jede Programmiersprache schwer, wenn man sie wirklich beherrschen möchte, vermutlich gibt es in der Tat keine echte Alternative oder Lösung. Nur würde ich gerne näher an die Anwendungswelten der Studierenden kommen.

    • @bilalreffas1270
      @bilalreffas1270 6 ปีที่แล้ว +1

      Ich denke die meisten Studierenden wollen mehr Webapp's oder Mobileapp's entwickeln, anstatt Desktop Anwendungen. Das haben Sie schon richtig erkannt. Das liegt wahrscheinlich dadran, dass die Studierenden sich auf diesen Plattformen zuhause fühlen.

    • @tristanschonhals4416
      @tristanschonhals4416 6 ปีที่แล้ว

      Bilal Reffas Ich studiere im Moment im 3. Semester unter anderem bei Herzberg. Ich kann mir nichts schrecklicheres Vorstellen als Webentwicklung und das sieht ein Großteil meiner Kommilitonen ganz ähnlich. Während webbasierte Systeme als Modul bei kaum jemandem guz ankam, gab es viele viele engagierte Leute in Java und C Projekten anderer Module.

    • @bilalreffas1270
      @bilalreffas1270 6 ปีที่แล้ว

      Das mag sein, denn Geschmäcker sind verschieden. Es gibt aber auch Menschen, die die Webentwicklung bevorzugen. Ich persönlich finde fast alles in der Informatik interessant. Ich würde mir, aber mehr im Bereich der KI wünschen zum Beispiel.

    • @tristanschonhals4416
      @tristanschonhals4416 6 ปีที่แล้ว

      Bilal Reffas Ich weiß nicht, wie stark sowas in eventuellen Wahlpflichtmodulen vertreten ist. Generell denke ich aber, dass man für Webentwicklung im Informatik Studiengang auch einfach nicht so richtig ist, schließlich gibt es dafür ja Social Media Systems. Zumindest schien mir der Studiengang sehr stark weborientiert

  • @affenb3rt653
    @affenb3rt653 6 ปีที่แล้ว +3

    Ich denke in den ersten Semestern sollte es nicht wirklich darum gehen, dass man etwas zeigen kann wenn man etwas programmiert hat. Es sollten die Grundlagen vermittelt werden und eine sich z.B. öffnendes Fenster welches mir eine Rückmeldung gibt ist für mich keine Grundlage. Allgemeine Elemente zum kontrollieren des Programmflusses und was der Code den man geschrieben hat eigentlich bedeutet sind für mich eher die Sachen die jemand am Anfang lernen sollte. Es bringt ihm schließlich nichts wenn er die Hälfte der Zeit damit verbracht hat seine Ausgabe grafisch und schön zu machen, aber seinen Ablauf nicht steuern kann oder sich nicht der Bedeutung seines Codes nicht wirklich bewusst ist. Für das allgemeine lernen des Programmierens ist die Sprache meines Erachtens fast egal. Java Script jedoch weniger, da es auf fundamentale Elemente die jemand der neu programmiert verzichtet (Typsystem z.B). Eine Sprache wie Java finde ich fast schon wieder zu überladen für den Anfang (Was ist eine Klasse, was ist System.in / out etc). Sprachen wie C verzichten auf viele Elemente und man kann alles kurz und einfach ohne viel drum herum im Code zeigen auch wenn sie an anderen Stellen wieder Erklärungen benötigt (Pointer - lassen sich ja am Anfang aber vermeiden). Dazu kommt natürlich, dass an der THM mehrere Fachrichtungen zusammen kommen und Java Script sicherlich nicht für Ingenieur-Informatiker oder Bio-Informatiker angemessen ist. Ich denke aber das die Frage welche Sprache an einer Hochschule gelehrt werden sollte nicht für alle entschieden werden kann. Es sollte für jede der Fachrichtungen an der THM eigene Veranstaltungen geben um gezielter Lehren zu können. Denn für Ingenieur-Informatiker war Java noch nie wirklich Zeitgemäß und wird es wohl auch nicht. Und Bio-Informatiker haben ebenfalls ihrer eigenen Exoten welche auf ihre Bedürfnisse zugeschnitten sind.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Danke. Ausgewählte Sprachen und damit getrennter Unterricht für die verschiedenen Studiengänge, das gefällt mir.

  • @cong6678
    @cong6678 4 ปีที่แล้ว

    Ich halte C# für am Besten aufgrund des großen Supports durch Microsoft. Auch Visual Studio ist aus meiner Sicht einfach zu bedienen und bietet einfache Integration von 3 Anbieter Tools. Und mit C# kann man mittlerweile sehr viel machen durch .net core, xamarin und asp.net.

    • @DominikusHerzberg
      @DominikusHerzberg  4 ปีที่แล้ว

      Ohne Frage auch ein Argument. Meine Studis und auch meine Kollegen verlangen Umgebungen, wo problemlos freie Software verwendet werden kann (OpenJDK, Atom.io, etc.).

    • @congtutorials1040
      @congtutorials1040 ปีที่แล้ว

      selber Autor nur mit neuem Account und 2 Jahre später.
      Mittlerweile ist .Net bzw .Net Core open source und mit VS Code hat man direkt einen Open source editor? Mit TypeScript und F# hat man noch mehr Open Source Möglichkeiten im Bereich Web und funktional zu gehen (wobei c# das theoretisch auch kann). Das ganze ohne .Net verlassen zu müssen. Ich finde die MSDN Dokumentation viel einfacher zu lesen als die für Java.

  • @MCFalkenstein
    @MCFalkenstein 6 ปีที่แล้ว +2

    Ja, Javascript ist leicht zu nutzen um mal eben eine schöne Anwendung, natürlich mit Grafik im Browser, im Stiel "zeig mir was" zusammen zu hacken. Das macht es aber meiner Meinung nach nicht zu einer guten Sprache, mit der man Leuten das Programmieren beibringt. Dabei vermisse ich eine starke Typisierung, um zu zeigen, was wirklich passiert. Und dann Typenscript oder ähnliches zu nutzen ist imo keine gute Lösung, es macht es nur nochmal komplizierter.
    Und was bleibt ist der Anwendungsbereich von JS.Nicht alle wollen in die Richtung Appentwicklung gehen - zweifelsfrei ein großer Markt - aber lange nicht alle Seiten der (praktischen) Informatik.
    OO als erstes und alleiniges grundlegendes Konzept kann man finde ich kritisieren, da zur Zeit Funktionale Konzepte immer mehr Fahrt aufnehmen. Ich frage mich, ob man nicht schon früher, vielleicht parallel zu OO, funktionale Sprachen zeigen sollte.
    Java ist sicher keine perfekte Sprache für den Anfang. Aber sie kommt meiner Meinung ganz gut an die meisten Anforderungen ran, die an eine Sprache für Einsteiger gestellt werden.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Sehe ich auch so, das Funktionale hat an Bedeutung gewonnen. Ich glaube, man kann nur gewinnen, wenn man eine Sprache unterrichtet, mit der man offensichtlich das machen kann, was alle beschäftigt: mobile Apps. Was ist mit der Idee, Java in einem höheren Semester einzusetzen?

    • @MCFalkenstein
      @MCFalkenstein 6 ปีที่แล้ว +1

      Natürlich kann man Java in einem höheren Semester einsetzen. Wenn aber mal die Konzepte bekannt sind, kann man auch andere Sprachen nutzen. Diese sind dann vielleicht für das Individuelle Ziel eines Kurses besser geeignet.
      Es klingt für mich nur einfach nicht gut, einem Ingenieur Informatiker mit Javascript zu begrüßen. Da schreibt man sich ein einen Hartware nahen Studiengang ein, und als erstes setzt man sich mit einer Sprache für den Webbrowser auseinander.
      Das meinte ich unter anderem mit "Java ist sicher keine perfekte Sprache für den Anfang. Aber sie kommt meiner Meinung ganz gut an die meisten Anforderungen ran, die an eine Sprache für Einsteiger gestellt werden". Es ist zwar lange nicht perfekt für z.B. einen Ingenieur Informatiker, aber es ist besser verwertbar als JavaScript.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Den Punkt mit JavaScript und der Nicht-Passung für einen Ingenieur-Informatiker kann ich gut nachvollziehen. Danke

  • @karandehghani8660
    @karandehghani8660 6 ปีที่แล้ว

    Super Video. Ich glaube jede Programmiersprache durchläuft einen evolutionären Prozess. Java ist zwar populär, aber ich glaube, dass Java im Moment in eine evolutionäre Sackgasse fährt, ähnlich wie Cobol. Cobol war auch mal populär (schon etwas länger her), aber es gibt heute kaum Weiterentwicklungen. Ein wichtiger Aspekt den eine Programmiersprache ja ausmacht scheinen die fundamentalen Operatoren (Axiome) zu sein. Java hat sich darin gut bewiesen und etabliert. Es scheint aber, dass ein wesentlicher Erfolgsfaktor für die Überlebensfähigkeit einer Programmiersprache darin besteht die Anzahl der Axiome zu reduzieren und darin sind andere Programmiersprachen wie Python oder JavaScript (auch mit all den Libraries und Einsatzmöglichkeiten) schneller in der Evolution. Das mag dem klassischen Programmierer nicht schmecken, aber in der biologischen Evolution hat das ja auch keiner den langsameren gefragt (survival of the fittest not the prettiest:)).

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Interessanter Gedanke, dass die Überlebensfähigkeit einer Sprache davon abhängt, ob es ihr gelingt, die Anzahl der Axiome zu reduzieren. Danke für Deinen Beitrag, Karan!

  • @MrWlet
    @MrWlet 6 ปีที่แล้ว +1

    Warum nicht beides?
    Eine Sprache für Grundlagen und eine für "schnelle Erfolge". Man kann sich dem Thema ja von beiden Seiten nähern. Vom App Frontend in Richung Backend-Server und aus Richtung Grundlagen zum Backend-Server.
    Ich hatte ein ähnliche Erlebnisse im Studium (natürlich Subjektiv): Grundlagen Mathematik (1. Sem) - langweilig; Angewandte Mathematik (5. Sem) - spannend. IT Organisation (in dem Fach gings um UML und BNF Notation, 1. Sem) - langweilig. Compilerbau (5. Sem): spannend.
    Das Problem ist m.E. nicht die Sprache, das Problem ist: Grundlagen und Anwendung liegen zeitlich zu weit auseinander.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      Guter Punkt, dass Grundlagen und Anwendung zusammenrücken. Danke!

  • @dasdom
    @dasdom 6 ปีที่แล้ว +1

    Zu JavaScript gibt es nur ein Video, was man sich ansehen muss. Einfach mal nach "JavaScript Wat" auf DuckDuckGo suchen.
    Ich würde ja eher auf Ruby oder Python gehen. JavaScript halte ich für keine geeignete Sprache, um etwas über Computersprachen zu lernen.

    • @DominikusHerzberg
      @DominikusHerzberg  6 ปีที่แล้ว

      JavaScript als die Assemblersprache des Webs ist sicher nicht ausreichend. Da stimme ich Ihnen zu.

  • @stefanplusplus917
    @stefanplusplus917 5 ปีที่แล้ว +2

    C++ is rocksolid (y)