Abo
  1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Programmiersprache für…

Auf den ersten Blick eher abschreckend

  1. Thema

Neues Thema Ansicht wechseln


  1. Auf den ersten Blick eher abschreckend

    Autor: Schattenwerk 27.09.17 - 12:32

    Ich kannte Kotlin bislang nur mit seinen Meta-Daten: Featured bei Android, von JetBrains, kompatibel zu Java etc.

    Heute habe ich mit diesem Beitrag das erste Mal wirklich etwas von der Sprache gesehen und ich muss sagen: Entweder liegt es explizit an den vorgestellten Snippets oder die Sprache gefällt mir einfach nicht.

    Persönlich denke ich, dass es hauptsächlich an der Syntax und weniger ans der Semantik liegt, wobei ich bei dem Beispiel unter "Mehrfachvererbung" schon einem Moment schlucken musste. Das Beispiel mit "Quadrat.farbe" fand ich schon etwas... naja... ungewohnt.

    Vermutlich muss man sich intensiver mit der Sprache beschäftigen und kommt dann auch gut damit zurecht. Schlecht wird sie in den Grundzügen sicherlich nicht sein. JetBrains macht eigentlich gute Arbeit, Google traue ich es nicht zu eine solche Sprache dann als primäre Sprache für Android zu wählen, wenn sie nix taugt.

    Nach diesem Beitrag bin ich jedoch eher ab- als zugeneigt mir diese Sprache anzusehen ;)



    1 mal bearbeitet, zuletzt am 27.09.17 12:48 durch Schattenwerk.

  2. Re: Auf den ersten Blick eher abschreckend

    Autor: dabbes 27.09.17 - 12:37

    Da soll nochmal jemand über JavaScript herziehen ;-)

  3. Re: Auf den ersten Blick eher abschreckend

    Autor: möller 27.09.17 - 13:09

    Für mich stellt sich eher die frage was extension properties/functions mit Mehrfachvererbung zu tun haben...

    val Quadrat.farbe: String
    get() = this.toUpperCase()

    ist halt das equivalent zu java's

    public static String getFarbe(Quadrat q) { return q.farbe.toUpperCase(); }

    und hat gar nichts mit Vererbung zu tun.
    Und die "Mehrfachvererbung" die Kotlin unterstützt ist dieselbe wie in Java8 Interfaces, also doch nichts besonderes, oder?

    Alles in allem kann ich jedem nur empfehlen die Sprache mal ernsthaft (das heißt über Snippets hinaus) auszuprobieren.
    Es macht - so blöd das klingt - einfach viel mehr Spaß in Kotlin zu programmieren als in Java.



    1 mal bearbeitet, zuletzt am 27.09.17 13:09 durch möller.

  4. Re: Auf den ersten Blick eher abschreckend

    Autor: Kastenbrot 27.09.17 - 13:15

    > Nach diesem Beitrag bin ich jedoch eher ab- als zugeneigt mir diese Sprache
    > anzusehen ;)
    sign.
    Aber wir wissen ja, dank Frau Mortler:

  5. Re: Auf den ersten Blick eher abschreckend

    Autor: schap23 27.09.17 - 14:00

    Das wäre wohl ein Fehler.

    Kotlin ist wesentlich ausdrucksstärker wie Java und durch weniger Code, den man schreiben muß, macht man weniger Fehler. Es hat die guten Features unter anderem von Scala, Groovy und C# übernommen ohne dabei mit Features überladen zu sein.

    Wer die Sprache kennenlernen will, sollte sich mal mit den kotlin-katas beschäftigen, entweder in IntelliJ oder im Browser unter try.kotlinlang.org.

  6. Re: Auf den ersten Blick eher abschreckend

    Autor: Pete Sabacker 27.09.17 - 14:06

    schap23 schrieb:
    --------------------------------------------------------------------------------
    > Das wäre wohl ein Fehler.
    >
    > Kotlin ist wesentlich ausdrucksstärker wie Java und durch weniger Code, den
    > man schreiben muß, macht man weniger Fehler. Es hat die guten Features
    > unter anderem von Scala, Groovy und C# übernommen ohne dabei mit Features
    > überladen zu sein.

    Der größte Vorteil von Java geht dabei aber gleichzeitig flöten. Kotlin erinnert mich da an Swift, mit etlichen Schlüsselwörtern und Sprachkonstrukten.

  7. Re: Auf den ersten Blick eher abschreckend

    Autor: sniner 27.09.17 - 14:10

    Schattenwerk schrieb:
    --------------------------------------------------------------------------------
    > Entweder liegt es explizit an den
    > vorgestellten Snippets oder die Sprache gefällt mir einfach nicht.

    Mir gefällt sie auf den ersten Blick gut. Allerdings habe ich einiges mit Scala gemacht und mag seitdem Java überhaupt nicht mehr. Kotlin hat sehr viel von Scala übernommen, wie es aussieht. Mir fehlt in Kotlin der match-Block - zumindest habe ich keine Entsprechung bei Kotlin gesehen.

  8. Re: Auf den ersten Blick eher abschreckend

    Autor: PiranhA 27.09.17 - 14:55

    Ich verstehe auch nicht, warum man sich oftmals ohne erkenntlichen Grund von der bekannten C-Syntax entfernt.
    Bsp: Warum denn "var x: Int = 0"? Da kann man doch auch wahlweise "Int x = 0" oder gleich "var x = 0" schreiben.
    Dann "fun ggt(x: Int = 0, y: Int = 0): Int" anstatt "Int ggt(Int x = 0, Int y = 0)".
    Sowas macht den Wechsel nur unnötig schwer. Ist ja auch nicht so, als würde jemand von heute auf morgen alle anderen Sprachen links liegen lassen. Das erschwert ja nur den parallelen Betrieb.

  9. Re: Auf den ersten Blick eher abschreckend

    Autor: UP87 27.09.17 - 15:01

    PiranhA schrieb:
    --------------------------------------------------------------------------------
    > Bsp: Warum denn "var x: Int = 0"? Da kann man doch auch wahlweise "Int x =
    > 0" oder gleich "var x = 0" schreiben.

    Du kannst "var x = 0" schreiben, da der Typ in diesem Fall abgeleitet werden kann. Dies ist aber nicht immer möglich. Im Zweifelsfall beschwert sich der Compiler (oder auch schon die IDE).

    Grundsätzlich dient diese Schreibweise meines Erachtens nach hauptsächlich der deutlichen Trennung zwischen "var" und "val". Insgesamt ist diese Schreibweise aber auch durchaus gängig. Siehe Swift oder Scala.



    2 mal bearbeitet, zuletzt am 27.09.17 15:03 durch UP87.

  10. Re: Auf den ersten Blick eher abschreckend

    Autor: Das Osterschnabeltier 27.09.17 - 15:14

    schap23 schrieb:
    --------------------------------------------------------------------------------
    > Das wäre wohl ein Fehler.
    >
    > Kotlin ist wesentlich ausdrucksstärker wie Java und durch weniger Code, den
    > man schreiben muß, macht man weniger Fehler. Es hat die guten Features
    > unter anderem von Scala, Groovy und C# übernommen ohne dabei mit Features
    > überladen zu sein.
    >
    > Wer die Sprache kennenlernen will, sollte sich mal mit den kotlin-katas
    > beschäftigen, entweder in IntelliJ oder im Browser unter
    > try.kotlinlang.org.

    Für gewisse Corner cases, ja. Aber sonst hat Kotlin nur wesentlich mehr Syntactic Sugar. Und es gibt selbst in Java Fälle, in denen man mit weniger Code auskommt, da Kotlin kein inline-if kennt.

    Ich mag Kotlin, finde aber dass das absolute Killer-Feature der Sprache die Nullability ist. Alles drum herum ist in vielen Belangen nur Geschmacksache.

  11. Re: Auf den ersten Blick eher abschreckend

    Autor: UP87 27.09.17 - 15:22

    Das Osterschnabeltier schrieb:
    --------------------------------------------------------------------------------
    > Für gewisse Corner cases, ja. Aber sonst hat Kotlin nur wesentlich mehr
    > Syntactic Sugar. Und es gibt selbst in Java Fälle, in denen man mit weniger
    > Code auskommt, da Kotlin kein inline-if kennt.

    Naja doch... Da if in kotlin eine Expression ist.

    String greeting = de == 0 ? "hallo" : "hello";
    wäre in kotlin
    val greeting = if (de == 0) "hallo" else "hello"

  12. Re: Auf den ersten Blick eher abschreckend

    Autor: polmabri 27.09.17 - 15:41

    UP87 schrieb:
    --------------------------------------------------------------------------------
    > Das Osterschnabeltier schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > Für gewisse Corner cases, ja. Aber sonst hat Kotlin nur wesentlich mehr
    > > Syntactic Sugar. Und es gibt selbst in Java Fälle, in denen man mit
    > weniger
    > > Code auskommt, da Kotlin kein inline-if kennt.
    >
    > Naja doch... Da if in kotlin eine Expression ist.
    >
    > String greeting = de == 0 ? "hallo" : "hello";
    > wäre in kotlin
    > val greeting = if (de == 0) "hallo" else "hello"

    Genau. Und da in Kotlin Vieles eine Expression ist, funktioniert auch sowas:

    val greeting = when(lang) {
    "de" -> "hallo"
    "fr" -> "bonjour"
    else -> "hello"
    }

  13. Re: Auf den ersten Blick eher abschreckend

    Autor: Dino13 27.09.17 - 15:59

    UP87 schrieb:
    --------------------------------------------------------------------------------
    > Grundsätzlich dient diese Schreibweise meines Erachtens nach hauptsächlich
    > der deutlichen Trennung zwischen "var" und "val". Insgesamt ist diese
    > Schreibweise aber auch durchaus gängig. Siehe Swift oder Scala.

    Also bei durchaus gängig lass ich noch gerne das Swift durchgehen aber Scala macht diese Schreibweise sicherlich nicht gängig. Da fehlt es komplett an Verbreitung.

  14. Re: Auf den ersten Blick eher abschreckend

    Autor: TC 27.09.17 - 17:57

    Da setzt man doch eh ne globale Variable lang=xx und lädt ne Liste oder so...

  15. Re: Auf den ersten Blick eher abschreckend

    Autor: tomatentee 28.09.17 - 09:38

    Die Deklarationssyntax ist die gleiche wie bei go. Hier wird erklärt, warum sie das so gemacht haben: https://blog.golang.org/gos-declaration-syntax

  16. Re: Auf den ersten Blick eher abschreckend

    Autor: cyblord 28.09.17 - 09:39

    schap23 schrieb:
    --------------------------------------------------------------------------------
    > Das wäre wohl ein Fehler.
    >
    > Kotlin ist wesentlich ausdrucksstärker wie Java und durch weniger Code, den
    > man schreiben muß,

    Also darum muss man vor jede Funktion ein FUN schreiben? Was soll das sparen?
    Diese Pascal-Artige, geschwätzige und doppelpunktverseuchte Syntax ist von großem Übel.



    2 mal bearbeitet, zuletzt am 28.09.17 09:41 durch cyblord.

  17. Re: Auf den ersten Blick eher abschreckend

    Autor: Trockenobst 28.09.17 - 10:55

    TC schrieb:
    --------------------------------------------------------------------------------
    > Da setzt man doch eh ne globale Variable lang=xx und lädt ne Liste oder
    > so...

    Closures sind ganz hip gerade. Da sehe ich die schlimmsten Sachen wie simple For Schleifen die man lieber mit ganz wirren Konstrukten umsetzt die drei Leute von 100 auf anhieb verstehen.

    Das führt z.B. bei Scala zu solchen Themen
    https://stackoverflow.com/questions/9842476/

    Verständlicher, Wartungsarmer Code ist das Ziel. Deswegen wird sich, sniper on, vor allem Rust nie wirklich durchsetzen ;) Schon Scala nervt nach einiger Zeit. Kotlin sieht mir auch eher nach "Google hat Geld und wir pushen das Ding jetzt" aus, statt dass man mitdenkt.

    Momentan gefällt mir von allen Sprachen Julia am Besten, saubere simple Syntax und versucht nicht auf Hip zu machen.

    Den Boilerplate von Java kriegt man inzwischen mit Tools weg, das stört im Alltag wenig. Wenn ich mir ansehe wie die C# Freunde drüben im anderen Team mit unfertigen Bibliotheken shit nachentwickeln den es bei C++ und Java seit 10 Jahren gibt - das würde mich total anstinken.

  18. Re: Auf den ersten Blick eher abschreckend

    Autor: demonkoryu 04.10.17 - 17:58

    Closures sind nicht "hip" sondern eine nützliche Abstraktion, die in den letzten Jahren insbesondere durch Ruby und Javascript erstmals breitflächig verwendet werden. Man muss wie immer verstehen, wie sie funktionieren.

    Rust ist genau wie C++ nicht mit dem Ziel geschaffen worden, maximal simpel zu sein, sondern möglichst mächtig zu sein und dabei maximal nahe der Hardware zu bleiben.

    Rust stellt ein C++-Upgrade dar, weil es eingebaute, statisch prüfbare Speichersicherheit und Nebenläufigkeit bei ebendieser bietet. Damit werden Dinge trivial, die vorher selbst für die klügsten Köpfe nicht mehr zu überblicken waren.

    Es gibt einfach Nischen, in denen Sprachen wie C++, Rust, Kotlin usw. ihre Stärken haben und von daher erübrigt sich die Diskussion ob sie sich "durchsetzen", da sie auf jeden Fall etwas in die Entwicklung - zumindest von Programmiersprachen - einbringen.

  1. Thema

Neues Thema Ansicht wechseln


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

Stellenmarkt
  1. Schwarz Dienstleistung KG, Raum Neckarsulm
  2. Bibliotheksservice-Zentrum Baden-Württemberg (BSZ), Konstanz
  3. Interhyp Gruppe, München
  4. BAS Kundenservice GmbH & Co. KG, Berlin

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Hardware-Angebote
  1. 229€ (Bestpreis!)


Haben wir etwas übersehen?

E-Mail an news@golem.de


Telekom Smart Speaker im Test: Der smarte Lautsprecher, der mit zwei Zungen spricht
Telekom Smart Speaker im Test
Der smarte Lautsprecher, der mit zwei Zungen spricht

Die Deutsche Telekom bietet derzeit den einzigen smarten Lautsprecher an, mit dem sich parallel zwei digitale Assistenten nutzen lassen. Der Magenta-Assistent lässt einiges zu wünschen übrig, aber die Parallelnutzung von Alexa funktioniert schon fast zu gut.
Ein Test von Ingo Pakalski

  1. Smarte Lautsprecher Amazon liegt nicht nur in Deutschland vor Google
  2. Pure Discovr Schrumpfender Alexa-Lautsprecher mit Akku wird teurer
  3. Bose Portable Home Speaker Lautsprecher mit Akku, Airplay 2, Alexa und Google Assistant

SSD-Kompendium: AHCI, M.2, NVMe, PCIe, Sata, U.2 - ein Überblick
SSD-Kompendium
AHCI, M.2, NVMe, PCIe, Sata, U.2 - ein Überblick

Heutige SSDs gibt es in allerhand Formfaktoren mit diversen Anbindungen und Protokollen, selbst der verwendete Speicher ist längst nicht mehr zwingend NAND-Flash. Wir erläutern die Unterschiede und Gemeinsamkeiten der Solid State Drives.
Von Marc Sauter

  1. PM1733 Samsungs PCIe-Gen4-SSD macht die 8 GByte/s voll
  2. PS5018-E18 Phisons PCIe-Gen4-SSD-Controller liefert 7 GByte/s
  3. Ultrastar SN640 Western Digital bringt SSD mit 31 TByte im E1.L-Ruler-Format

Internetprovider: P(y)ures Chaos
Internetprovider
P(y)ures Chaos

95 Prozent der Kunden des Internetproviders Pyur bewerten die Leistung auf renommierten Bewertungsportalen mit der Schulnote 6. Ein Negativrekord in der Branche. Was steckt hinter der desaströsen Kunden(un)zufriedenheit bei der Marke von Tele Columbus? Ein Selbstversuch.
Ein Erfahrungsbericht von Tarik Ahmia

  1. Bundesnetzagentur Nur 13 Prozent bekommen im Festnetz die volle Datenrate

  1. Indiegames-Rundschau: Killer trifft Gans
    Indiegames-Rundschau
    Killer trifft Gans

    John Wick Hex ist ein gelungenes Spiel zum Film, die böse Gans sorgt in Untitled Goose Game für Begeisterung und in Noita wird jeder Pixel simuliert: Die Indiegames des Monats sind abwechslungsreich und hochwertig wie selten zuvor.

  2. Archer2: Britischer Top-10-Supercomputer nutzt AMDs Epyc
    Archer2
    Britischer Top-10-Supercomputer nutzt AMDs Epyc

    Der Archer2 soll 2020 die höchste CPU-Leistung aller Supercomputer weltweit erreichen und es dank Beschleunigerkarten in die Top Ten schaffen. Im System stecken fast 12.000 Epyc-7002-Chips und Next-Gen-Radeons.

  3. Corsair One: Wakü-Rechner erhalten mehr RAM- und SSD-Kapazität
    Corsair One
    Wakü-Rechner erhalten mehr RAM- und SSD-Kapazität

    Mit dem i182, dem i164 und dem i145 aktualisiert Corsair die One-Serie: Die wassergekühlten Komplett-PCs werden mit doppelt so viel DDR4-Speicher und doppelt so großen SSDs ausgerüstet.


  1. 08:10

  2. 18:25

  3. 17:30

  4. 17:20

  5. 17:12

  6. 17:00

  7. 17:00

  8. 17:00