Abo
  1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Software-Entwickler…

Golang [KWT]

  1. Thema
  1. 1
  2. 2
  3. 3

Neues Thema Ansicht wechseln


  1. Golang [KWT]

    Autor: eeg 25.09.18 - 15:59

    kwt

  2. Re: Golang [KWT]

    Autor: pythoneer 25.09.18 - 19:49

  3. Re: Golang [KWT]

    Autor: Hello_World 25.09.18 - 20:09

    Go? War das nicht diese Sprache, die es seit Jahren nicht geschissen kriegt, so grundlegende Features wie Sum Types und Generics einzubauen, die es in ML seit 1972 gibt?

    Eine statisch typisierte Sprache, die im Jahr 2018 keine Generics kann, ist schlicht und einfach Bastelscheiß, dafür gibt's heute einfach keine Entschuldigung mehr.

  4. Re: Golang [KWT]

    Autor: TheMasterMaind 25.09.18 - 20:39

    Hello_World schrieb:
    --------------------------------------------------------------------------------
    > Go? War das nicht diese Sprache, die es seit Jahren nicht geschissen
    > kriegt, so grundlegende Features wie Sum Types und Generics einzubauen, die
    > es in ML seit 1972 gibt?
    >
    > Eine statisch typisierte Sprache, die im Jahr 2018 keine Generics kann, ist
    > schlicht und einfach Bastelscheiß, dafür gibt's heute einfach keine
    > Entschuldigung mehr.

    Hä? Seit wann braucht eine Sprache zwingend Generics um kein "Bastelscheiß" zu sein? Siehe auch https://appliedgo.net/generics/

    Oder wie war das noch mit den Generics in Java? https://stackoverflow.com/questions/520527/why-do-some-claim-that-javas-implementation-of-generics-is-bad



    1 mal bearbeitet, zuletzt am 25.09.18 20:40 durch TheMasterMaind.

  5. Re: Golang [KWT]

    Autor: Hello_World 25.09.18 - 21:16

    TheMasterMaind schrieb:
    --------------------------------------------------------------------------------
    > Hä? Seit wann braucht eine Sprache zwingend Generics um kein "Bastelscheiß"
    > zu sein?
    Seit jede ernstzunehmende statisch typisierte Sprache dieses Feature beherrscht: C#, Java, OCaml, Typescript, Rust, Swift, Scala, Kotlin, sogar VB.NET und Delphi!

    > Siehe auch https://appliedgo.net/generics/
    Ehrlich gesagt interessiert es mich wenig, mit welchen Ausreden die Go-Community sich das schönredet. Vor allem dann nicht, wenn sie mit Ratschlägen wie „2. Consider copy & paste“ daherkommen. Ja, es gibt tradeoffs. Nein, das ist keine valide Begründung, in dem Bereich überhaupt nichts zu tun.

    > Oder wie war das noch mit den Generics in Java? stackoverflow.com
    Den wesentlichen Punkt dort hast Du leider übersehen: „It's better than nothing!“.

  6. Re: Golang [KWT]

    Autor: eeg 26.09.18 - 10:51

    Deswegen gibt es auch so viel Software in Go?

    Cloudflare API
    Hetzner Cloud API
    Caddy
    Gitea

    etc.: https://github.com/avelino/awesome-go#server-applications

  7. Re: Golang [KWT]

    Autor: Yo 26.09.18 - 11:26

    Ich entwickle seit Jahren mit Go und ich sehe überhaupt keinen Grund warum es Generics braucht. Und nur weil viele anderen dies anbieten heisst es ja noch lange nicht das es gut sein muss. Nein, das Konzept hinter Go gefällt mir und inzwischen hab ich von Microservices bis hin zu Services für IoT Devices oder den Raspi schon vieles in Go programmiert und die Performance überzeugt.

    Letztendlich entscheidend war für mich, dass es ein geniales Ökosystem an Packages rund um die Standard-Libs um Go gibt und die Entwicklergemeinde toll ist. Natürlich hätte ich einige meiner Projekte auch in einer anderen Sprache entwickeln können, aber die Begeisterung von Go führte eher zum Gegenteil - viele Anwendungen/Services hab ich von Perl oder Phyton zu Go portiert.

  8. Re: Golang [KWT]

    Autor: 0110101111010001 26.09.18 - 12:40

    deswegen gibt es auch so wenige Codegeneratoren für golang :D

    Ich habe ne weile mit golang entwickelt - man findet einen Weg drum herum, aber die Lösungen sind meist alles andere als optimal.
    Sonst ist golang schon eine schöne (einfache!) Sprache, aber keine Generics zu verwenden ist der größte Fehler, der mit der Sprache gemacht worden ist.

  9. Re: Golang [KWT]

    Autor: Hello_World 26.09.18 - 13:59

    Yo schrieb:
    --------------------------------------------------------------------------------
    > Ich entwickle seit Jahren mit Go und ich sehe überhaupt keinen Grund warum
    > es Generics braucht.
    Das sagt mehr über dich aus als über Generics oder Go. Code, der für verschiedene Typen funktioniert, ist Alltag für quasi jeden Entwickler, und wenn keine Generics zur Verfügung stehen, resultiert das nahezu zwangsläufig in Code, der nicht typsicher oder dupliziert ist.

    > Und nur weil viele anderen dies anbieten heisst es ja
    > noch lange nicht das es gut sein muss.
    Nein, es ist nicht gut, weil andere es anbieten, sondern weil es Bugs verhindert, den Code wartbarer macht und Code-Wiederverwendung ermöglicht. Und der Rest der Welt hat das eben erkannt, während die Go-Entwickler offenbar einfach zu verbohrt sind.

  10. Re: Golang [KWT]

    Autor: Hello_World 26.09.18 - 14:07

    eeg schrieb:
    --------------------------------------------------------------------------------
    > Deswegen gibt es auch so viel Software in Go?
    Ja, damit hast Du bewiesen, dass man auch mit veralteten, schlecht designten Programmiersprachen brauchbare Software entwickeln kann. So what? Das wusste jeder, der jemals C- oder PHP-Software eingesetzt hat. Davon wird die Sprache aber nicht besser.

  11. Re: Golang [KWT]

    Autor: GodsBoss 26.09.18 - 18:23

    > > Siehe auch appliedgo.net
    > Ehrlich gesagt interessiert es mich wenig, mit welchen Ausreden die
    > Go-Community sich das schönredet. Vor allem dann nicht, wenn sie mit
    > Ratschlägen wie „2. Consider copy & paste“ daherkommen. Ja, es
    > gibt tradeoffs. Nein, das ist keine valide Begründung, in dem Bereich
    > überhaupt nichts zu tun.

    Zumindest für Go 2 gibt es ja intensive Diskussionen und diverse Vorschläge, ob und wie sich Generics umsetzen lassen, es wird also de facto was getan, ich halte das Fehlen ebenfalls für einen eklatanten Mangel.

    Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.

  12. Re: Golang [KWT]

    Autor: GodsBoss 26.09.18 - 18:40

    > Ich entwickle seit Jahren mit Go und ich sehe überhaupt keinen Grund warum
    > es Generics braucht. Und nur weil viele anderen dies anbieten heisst es ja
    > noch lange nicht das es gut sein muss.

    Das ist ja seltsam, immerhin findet man schon in der Standardbibliothek Beispiele, wo Generics offensichtlich fehlten. So sind sync#Map und sync#Pool nicht typsicher. sort#Slice, sort#SliceIsSorted und sort#SliceStable ebenso nicht.

    Ich will nicht wissen, wie oft ich schon sort.Interface auf eigenen Slice-Typen implementiert habe mit den gleichen Len()- und Swap()- Methoden, wo sich immer nur der Typ unterschied.

    "Brauchen" im Sinne von "Die Sprache braucht das, sonst kann ich Business-Anforderung XYZ nicht umetzen" ist das nicht, aber wenn man nur das betrachtet, unterscheiden sich sehr viele Sprachen nicht voneinander, da man nunmal das meiste in ihnen bauen. Es geht viel mehr um Entwickler-Effizienz, z.B. Vermeidung von Duplikation bei gleichzeitiger Bewahrung von Typsicherheit.

    Und ja, ich stoße regelmäßig auf Situationen, in denen mir Generics das Leben erleichtern würden.

    Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.

  13. Re: Golang [KWT]

    Autor: 0110101111010001 26.09.18 - 19:22

    GodsBoss schrieb:
    --------------------------------------------------------------------------------
    > Es geht viel mehr um
    > Entwickler-Effizienz, z.B. Vermeidung von Duplikation bei gleichzeitiger
    > Bewahrung von Typsicherheit.

    Gibt doch einige Codegeneratoren, mit denen du dann Typsicherheit und DRY hast ;)

  14. Re: Golang [KWT]

    Autor: Hello_World 26.09.18 - 20:11

    Wenn Du mit einem Codegenerator weitere Features dranfrickelst, ist es aber nicht mehr Go, sondern eine andere Sprache. Und die ist dann vielleicht sogar ein kleines bisschen besser als Go, aber im Vergleich mit dem Rest der Welt halt immer noch Gülle.

  15. Re: Golang [KWT]

    Autor: GodsBoss 26.09.18 - 20:30

    > > Es geht viel mehr um
    > > Entwickler-Effizienz, z.B. Vermeidung von Duplikation bei gleichzeitiger
    > > Bewahrung von Typsicherheit.
    >
    > Gibt doch einige Codegeneratoren, mit denen du dann Typsicherheit und DRY
    > hast ;)

    Ja, Code-Generierung ist eine Möglichkeit, aber das sind dann Nicht-Standardtools, die oft schlechteren IDE-Support haben, außerdem muss ich aus meiner Sprache "ausbrechen", weil ich Kommandozeilentools aufrufen muss und/oder statt des eigentlichen Codes Templates o.ä. schreibe. Wenn man eine generische Library schreibt, zwingt man dann auch noch den Nutzer der Library, den Code-Generator nutzen zu müssen.

    Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.

  16. Re: Golang [KWT]

    Autor: fuu-bar 26.09.18 - 20:56

    Mir fehlt in diesem Artikel ebenfalls Go. Tools, welche die Software-Entwicklung und -Auslieferung in den letzten Jahren grundlegend verändert haben, sind in Go programmiert. Allen voran natürlich Docker und Kubernetes. Moderne Software in Form von Microservices kommt nicht mehr ohne diese aus. Google stellt für seine Google Cloud Platform großartige Go-Libraries zu Verfügung. Weitere Software in diesem Bereich wie Prometheus zum Monitoring sind ebenfalls in Go geschrieben. Da zudem die Einstiegshürde sehr gering ist, lohnt es sich auf jeden Fall, die Sprache anzuschauen. Unabhängig von allem Flamewar und unabhängig davon was die Sprache nun kann oder nicht kann.

  17. Re: Golang [KWT]

    Autor: 0110101111010001 26.09.18 - 21:01

    oft hat man doch eh ein Makefile -> einfach den generator hinzufügen. Das Template ist einfach ganz normaler Go-Code der generisch gemacht wird (auch via go -> is einfach eine library). Nix wildes

  18. Re: Golang [KWT]

    Autor: BlackSuit 26.09.18 - 21:12

    0110101111010001 schrieb:
    --------------------------------------------------------------------------------
    > GodsBoss schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > Es geht viel mehr um
    > > Entwickler-Effizienz, z.B. Vermeidung von Duplikation bei gleichzeitiger
    > > Bewahrung von Typsicherheit.
    >
    > Gibt doch einige Codegeneratoren, mit denen du dann Typsicherheit und DRY
    > hast ;)

    Die Existenz der Generatoren straft jeden Lüge der behauptet Go bräuchte keine Generics. Solche Generatoren sollten Teil des Compilers und nicht irgendwie dran gefrickelt sein. Muss ja nicht gleich wie C++ Templates ausarten. Übrigens ist es immer ein Warnsignal wenn eine Sprache Sachen wie Maps im Sprachkern und nicht in den Bibliotheken unterbringt. Zeigt sofort wie wenig mächtig die Sprache selbst ist, wenn solche elementaren Datencontainer nicht selbst mit eleganten Schnittstellen implementiert werden können. Und erzähle mir keiner, niemand bräuchte mehr als eine Map Implementierung. Das beweist nur, das sich derjenige noch nie über seine Datenstrukturen echte Gedanken gemacht hat.
    Übrigens liefen auch in der Java Community viele rum und haben felsenfest behauptet niemand bräuchte Generics. Bis sie dann mit der etwas inkonsequentem Implementierung kamen und keiner will sie mehr missen. Man kann Go aber durchaus vorwerfen nichts aus der Vergangenheit von Java gelernt zu haben. Eine verpasste Chance, die man in Go2 hoffentlich ausbügelt.

  19. Re: Golang [KWT]

    Autor: Hello_World 26.09.18 - 23:12

    0110101111010001 schrieb:
    --------------------------------------------------------------------------------
    > oft hat man doch eh ein Makefile
    Tatsächlich Makefile?? Go steckt noch tiefer in den 70ern fest als ich dachte. Traurig, das.

  20. Re: Golang [KWT]

    Autor: 0110101111010001 27.09.18 - 00:49

    Jetzt bin ich neugierig - was gibt es denn moderneres Al's Makefiles? (Ehrliche Frage - bin gerne offen für neues)

  1. 1
  2. 2
  3. 3

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Zum Login

Stellenmarkt
  1. Kommunale Unfallversicherung Bayern, München
  2. Bosch Gruppe, Abstatt
  3. ENERCON GmbH, Aurich
  4. ORBIT Gesellschaft für Applikations- und Informationssysteme mbH, Bonn

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Top-Angebote
  1. 319€ (aktuell günstigste GTX 1070!)
  2. (aktuell u. a. Enermax T.B.Silence ADV 120 mm für 9,99€ + Versand)
  3. (u. a. Euro Truck Simulator 2 - Beyond the Baltic Sea (DLC) für 8,99€ und Fortnite - Deep Freeze...
  4. 99€ + Versand (Vergleichspreis ca. 116€ + Versand)


Haben wir etwas übersehen?

E-Mail an news@golem.de


Asana-Gründer im Gespräch: Die Konkurrenz wird es schwer haben, zu uns aufzuschließen
Asana-Gründer im Gespräch
"Die Konkurrenz wird es schwer haben, zu uns aufzuschließen"

Asana ist aktuell recht erfolgreich im Bereich Business-Software - zahlreiche große Unternehmen arbeiten mit der Organisationssuite. Für Mitgründer Justin Rosenstein geht es aber nicht nur ums Geld, sondern auch um die Unternehmenskultur - nicht nur bei Asana selbst.
Ein Interview von Tobias Költzsch


    Radeon VII im Test: Die Grafikkarte für Videospeicher-Liebhaber
    Radeon VII im Test
    Die Grafikkarte für Videospeicher-Liebhaber

    Höherer Preis, ähnliche Performance und doppelt so viel Videospeicher wie die Geforce RTX 2080: AMDs Radeon VII ist eine primär technisch spannende Grafikkarte. Bei Energie-Effizienz und Lautheit bleibt sie chancenlos, die 16 GByte Videospeicher sind eher ein Nischen-Bonus.
    Ein Test von Marc Sauter und Sebastian Grüner

    1. Grafikkarte UEFI-Firmware lässt Radeon VII schneller booten
    2. AMD Radeon VII tritt mit PCIe Gen3 und geringer DP-Rate an
    3. Radeon Instinct MI60 AMD hat erste Grafikkarte mit 7 nm und PCIe 4.0

    Mac Mini mit eGPU im Test: Externe Grafik macht den Mini zum Pro
    Mac Mini mit eGPU im Test
    Externe Grafik macht den Mini zum Pro

    Der Mac Mini mit Hexacore-CPU eignet sich zwar gut für Xcode. Wer eine GPU-Beschleunigung braucht, muss aber zum iMac (Pro) greifen - oder eine externe Grafikkarte anschließen. Per eGPU ausgerüstet wird der Mac Mini viel schneller und auch preislich kann sich das lohnen.
    Ein Test von Marc Sauter

    1. Apple Mac Mini (Late 2018) im Test Tolles teures Teil - aber für wen?
    2. Apple Mac Mini wird grau und schnell
    3. Neue Produkte Apple will Mac Mini und Macbook Air neu auflegen

    1. Uploadfilter: EU-Kommission bezeichnet Reformkritiker als "Mob"
      Uploadfilter
      EU-Kommission bezeichnet Reformkritiker als "Mob"

      In der Debatte über die Reform des EU-Urheberrechts verschärft sich der Ton. Während die EU-Kommission Vergleiche mit dem Brexit-Referendum zieht und Unions-Politiker von Fake-Kampagnen sprechen, gehen Tausende Gegner von Uploadfiltern in Köln auf die Straße.

    2. Datenschutz: 18.000 Android-Apps spionieren Nutzer unzulässig aus
      Datenschutz
      18.000 Android-Apps spionieren Nutzer unzulässig aus

      Selbst populäre Apps mit Hunderten Millionen Nutzern verstoßen gegen die Werberichtlinien von Google. Das Unternehmen reagierte monatelang nicht auf die Vorwürfe.

    3. Erneuerbare Energien: Shell übernimmt Heimakku-Hersteller Sonnen
      Erneuerbare Energien
      Shell übernimmt Heimakku-Hersteller Sonnen

      Der Erdölkonzern Shell setzt sein Engagement im Bereich erneuerbare Energien fort. Nun kauft das Unternehmen einen Konkurrenten für Teslas Powerwalls aus dem Allgäu.


    1. 16:51

    2. 13:16

    3. 11:39

    4. 09:02

    5. 19:17

    6. 18:18

    7. 17:45

    8. 16:20