Bin gerade super happy. Anscheinend kenne ich mich doch besser mit TS aus als ich dachte. 🥳 War nur kurz geschockt, als Golo bei 4:25 mit "Nein" geantwortet hat. Da habe ich schon an mir gezweifelt.... 😂
@thenativeweb
7 ай бұрын
Haha, das war Absicht 😉
@siriusmarz512
7 ай бұрын
Haha eben so 😅
@comedyclub333
7 ай бұрын
Geht mir ebenso, dabei kenne ich wirklich nur die Basics und auch das ist schon 2 Jahre her. Ich dachte, dass TS ein strukturelles Typsystem hat, wäre allseits bekannt...
@marinaegner
7 ай бұрын
Wieder ein tolles Video! 😊 Ich muss gestehen, dass ich mich diesbezüglich auch schon hin und wieder in solche Fallstricke gebracht habe, wobei mir aber durchaus bewusst war, dass es sie gibt. Mittlerweile bin ich da etwas schlauer unterwegs. Unabhängig davon freue ich mich auf die tech:lounge und bin gespannt, was ich da alles mitnehmen kann 😊
@thenativeweb
7 ай бұрын
Vielen lieben Dank 🥰
@FunctionGermany
7 ай бұрын
das letzte problem wird einfach durch zod oder valibot gelöst.
@Copprax
7 ай бұрын
Hallo Golo, bin beim Anschauen des Videos gerade etwas ins Stocken geraten, als du die Aussage getätigt hast, dass das Typsystem von JavaScript ein Duck Typing ist. Ich stell mir da die Frage, ob JavaScript wirklich ein Typsystem hat. Aus dem Bauchgefühl heraus würde ich nämlich sagen: Es gibt kein Typsystem, was alleine schon daran erkennbar ist, dass die Sprache keinerlei Möglichkeiten hat, auf Typen zu prüfen, nichtmal zur Laufzeit. Ja, man kann prüfen, ob auf einem Objekt eine Property definiert ist (oder die Property eine passende Funktion liefert), aber nur weil ich Reflection auf Objekten machen kann, würde ich das noch nicht Typsystem nennen. Nachdem JavaScript eine prototypenbasierte Objektorientierung ist, könnte man die Prototypen als Typsystem ansehen, vor allem, weil das Wort "typ" enthält, aber auch das finde ich schwierig. Meiner Meinung nach hat TypeScript erst ein Typsystem in JavaScript reingebracht, was im Namen der Sprache ja auch sehr deutlich wird. Deinen Schlussfolgerungen auf das Design von TypeScript und die Abwärtskompatibilität stimme ich 100% zu, war eben nur an der Bezeichnung "Typsystem" hängen geblieben.
@thenativeweb
7 ай бұрын
Wenn JavaScript kein Typsystem hätte, gäbe es keinen Unterschied zB zwischen einem string und einer number - und den Typen eines Wertes kann man ja durchaus über typeof ermitteln. Es ist kein statisches Typsystem, sondern ein dynamisches, weil sich die Typen von Variablen zur Laufzeit ändern können (weil der Typ genau genommen nicht an der Variable hängt, sondern am Wert, der in der Variablen gespeichert ist), aber es gibt eins. Die Prototypen haben übrigens nichts mit dem Typsystem zu tun, sondern lediglich mit der Art, wie in JavaScript "Klassen" definiert werden. Die einzige Sprache, die mir abgesehen von esoterischen Sprachen, einfällt, die wirklich _kein_ Typsystem besitzt, ist Assembler.
@Copprax
7 ай бұрын
@@thenativeweb Stimmt, du hast Recht. An die primitiven Typen hatte ich beim Verfassen des Kommentars gar nicht gedacht, ich war zu sehr auf die Objekte fokussiert.
@sinorteka762
7 ай бұрын
Sehr interessant, danke.
@ta2742
7 ай бұрын
Ich wollte mir die für Go buchen. Dann habe ich gesehen dass die für mich leider viel zu teuer sind :(
@Hofer2304
7 ай бұрын
Die Typsysteme werden in Einführungskursen viel zu schlecht erklärt. Man erfährt zwar welche Typen es in der jeweiligen Programmiersprache gibt, aber da geht es nur darum, was darf man mit diesen Typen machen? Was macht man aber, wenn man mehrere unterschiedliche Typen braucht, die aber die gleichen Operationen ausführen können sollen?
@AuftragschilIer
7 ай бұрын
Dann kommen ja Interfaces oder abstrakte Klassen ins Spiel.
@bsdooby
7 ай бұрын
Ich behaupte jetzt mal, dass strukturelle Kompatibilität bei vielen statisch typisierte Funktionalen Programmiersprachen auch so ist (e.g., Records).
@heinrichschiller4673
7 ай бұрын
Ich kann kein TypeScript 🎉
@BenjaminWagener
7 ай бұрын
Argument Achtunddrölfzig warum man ein effektiv auf JavaScript basierendes Ökosystem nur so viel nutzen sollte, wie unbedingt nötig...
@allinvanguard
7 ай бұрын
Eher ein Argument dafür, dass man seine Tools verstehen muss. Jede Sprache hat haufenweise Konstrukte, über die man stolpern kann.
@BenjaminWagener
7 ай бұрын
@@allinvanguard Das mag sein, aber JavaScript ist und bleibt halt ein gefrickeltes Konstrukt das nie für das gemacht war wofür es genutzt wird. Und das sagt der Erschaffer der Sprache selbst. Hoffentlich kann man es irgendwann mal komplett durch WASM ersetzen.
@lufve12
7 ай бұрын
Das Video sollte heißen: wieso sollst du nicht JavaScript lernen. 😅
@valeridause
7 ай бұрын
Liegt eventuell an mir, aber den Witz habe ich nicht verstanden. Denn JavaScript ist so wie es ist und das hat definitiv einige Nachteile, aber auch viele Vorteile, wieso unter anderem so locker mit Types umgegangen worden ist. Daher - wer in der Webentwicklung unterwegs ist, soll auf jeden Fall Javascript lernen. Meine Meinung. Auch, wenn diese Sprache nicht perfekt ist. Danke für das Video an Golo! Trotz, dass ich an den Kursen nicht teilnehmen werde.
@lemetwe3401
7 ай бұрын
@@valeridausewas ist der Vorteil von lockerer Umgang mit Typen? Ich komme aus der Java/Kotlin/Dart Welt und sehe bisher keine Vorteile darin. Nur sehr viele Probleme bei größeren Projekten.
@valeridause
7 ай бұрын
@@lemetwe3401 Ich mag es auch, präzise zu definieren, was ich mit Daten tun will. Aber. Meine Aussage kommt aus der Einfachheit bei vielen Aufgaben, die vor Javascrpt seit Geburt standen. Dass es derzeit eine andere Erwartung sein könnte und viel komplexere Projekte damit gefahren werden - entstand genau aus dieser Einfachheit und Beliebtheit. Daher ohne dieser Lockerheit mit Typen wäre Javascript heute nicht da, wo die Sprache ist. Ihnen steht zu, es nicht zu mögen - aber Sie brauchen diese Sprache, auch, wenn sie nicht perfekt ist.
@lemetwe3401
7 ай бұрын
@@valeridause sobald was im Browser landen soll kommt man leider kaum drum herum.. jap. Wobei mit Dart/Flutter und Angular Dart zumindest alternativen existieren...
@AuftragschilIer
7 ай бұрын
@@lemetwe3401 Vorteile wären z.B. die Flexibilität wenn mit Daten gearbeitet wird, deren Struktur sich ändern kann oder schlichtweg weniger Boilerplate-Code, den man nur dafür benötigt mit Typen umzugehen. Manche sagen auch, sie könnten damit kreativere Problemlösungsansätze realisieren. Aber klar, das meiste sind Nachteile. Ich bevorzuge auch strikte Typisierung.
Пікірлер: 26