Abo
  1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Linux-Desktops: Gnome…

Zwischen Genie und Wahnsinn

Anzeige
  1. Thema

Neues Thema Ansicht wechseln


  1. Zwischen Genie und Wahnsinn

    Autor: max2 04.02.13 - 19:12

    Javascript bietet zwar wirklich coole Konzepte. Vieles geht flexibler und eleganter als in C/C++ oder Java. Aber wenn man sich nicht auskennt oder nicht sauber vorgeht, ensteht ebensoschnell ein grausames Machwerk. Und bei den Programmierern, die teilweise herumlaufen, wäre es nur allzuoft wünschenswert, wenn sie von ihrer Programmiersprache etwas mehr an die Leine genommen würden.

  2. Re: Zwischen Genie und Wahnsinn

    Autor: Haxx 04.02.13 - 19:25

    Ich weiß jetzt nicht was eleganter sein soll, außer das man manche Dinge einfacher lösen kann da man dynamische Typisierung hat....

    Ansonsten sehe ich nicht viel Vorteile bei Javascript bis darauf das es wohl leicht wirkt für einen Anfänger.

    Wobei man auch schnell auf seltsame Dinge stößt..
    siehe:
    http://wtfjs.com/

  3. Re: Zwischen Genie und Wahnsinn

    Autor: developer 04.02.13 - 19:46

    Haxx schrieb:
    --------------------------------------------------------------------------------
    > Ich weiß jetzt nicht was eleganter sein soll, außer das man manche Dinge
    > einfacher lösen kann da man dynamische Typisierung hat....

    Javascript ist ja nicht nur dynamische typisierung, das hat ja noch einiges mehr zu bieten.

    >
    > Ansonsten sehe ich nicht viel Vorteile bei Javascript bis darauf das es
    > wohl leicht wirkt für einen Anfänger.

    Ja das mit dem wirken kommt hin.

    >
    > Wobei man auch schnell auf seltsame Dinge stößt..
    > siehe:
    > wtfjs.com

    Du sprichst es ja selbst an ;-).

    Whatever you do, do it with: 5 + (sqrt(1-x^2(y-abs(x))^2))cos(30((1-x^2-(y-abs(x))^2))), x is from -1 to 1, y is from -1 to 1.5, z is from -100 to 4.5

  4. Re: Zwischen Genie und Wahnsinn

    Autor: DrWatson 04.02.13 - 20:23

    Ich halte JS gerade, aber nicht nur für Anfänger, für sehr gefährlich.

    Es gibt im einfach zu viele Anleitungen, die zeigen, wie man es falsch macht, statt wie man es richtig macht. Dazu kommt noch die Java-artige Syntax, die viele falsche Eindrücke entstehen lässt.

    Auf der anderen Seite ist JS eine wirklich schöne Sprache wenn man sie einmal verstanden hat.

    Python wäre evtl doch wünschenswerter gewesen, einfach weil es den Programmierer mehr an die Leine nimmt.

  5. Das ist alles theoretisch interessant

    Autor: yoyoyo 04.02.13 - 20:42

    Fest steht jedoch, Javascript ist die Sprache der seichten Programmierung. Kann man doof finden, sich dagegen wehren, aber letztlich ist jeder Widerstand zwecklos. Es entscheiden kaum abstrakten Qualitäten, sondern vor allem die Verbreitung und die pure Anzahl der Entwickler. In beiden Feldern ist Javascript bei den Oberflächen jeder Alternative um Größenordnungen voraus.

  6. Re: Zwischen Genie und Wahnsinn

    Autor: CrasherAtWeb 04.02.13 - 20:50

    DrWatson schrieb:
    --------------------------------------------------------------------------------
    > Python wäre evtl doch wünschenswerter gewesen, einfach weil es den
    > Programmierer mehr an die Leine nimmt.
    Den Artikel gelesen? Python wird auch weiterhin unterstützt. Man will nur zusätzlich die Entwickler da abholen wo sie gerade am meisten Zuwachs erzielen und das ist nun einmal in der auf JavaScript basierenden Webentwicklung.

  7. Re: Zwischen Genie und Wahnsinn

    Autor: DrWatson 04.02.13 - 21:16

    Ja, ich habe den Artikel gelesen, was aber nichts an meiner Meinung ändert.

    Die Gnome Leute haben natürlich ihre Gründe (http://treitter.livejournal.com/14871.html) Javascript zu unterstützen, die Konzepte von JS gefallen mir eigentlich sehr gut, auch ist JS relativ Ressourcenschonend, was für Mobil/Desktopanwedungen schon wichtig ist. Die Sprache selbst verleitet allerdings zu unschönen Dingen und in dem Sinne hätte mir Python dann doch besser gefallen …und ja, ich weiß dass C, C#, C++, Vala, Python und was auch immer weiterhin unterstützt werden.

  8. So ziemlich jede Hochsprache hat solche Lücken

    Autor: __destruct() 04.02.13 - 21:30

    Ich bin schon viel zu oft zufällig auf welche gestoßen. Das ist jedes Mal blöd, denn der Code ist an sich korrekt, weswegen sich kein Bug finden lässt und das Programm läuft fehlerfrei bis zu einer eigentlich ganz normalen Zeile, die man schon mehrmals überprüft hat und die keinen Fehler aufweist. Dann darf man erst mal herausfinden, woran genau es hakt.

    Mein letzter war, in C# zur Berechnung eines Modulos den Rückgabewert einer Methode zu verwenden. Den Rückgabewert eine Zeile vorher in eine unsinnige Variable zu speichern und den Methodenaufruf durch den Variablennamen zu ersetzen, löste das Problem. -.-

  9. Re: Zwischen Genie und Wahnsinn

    Autor: Thaodan 04.02.13 - 21:33

    Sie werden JS aber bevorzugen, die Frage ist ob die Python Bindings die nötige Zuwendung bekommen.

    Wahrung der Menschenrechte oder Freie fahrt am Wochenende.
    -- Georg Schramm

  10. Re: Zwischen Genie und Wahnsinn

    Autor: CrasherAtWeb 04.02.13 - 22:19

    Du findest Python besser, andere die z.B. gerade mit Node.js arbeiten finden JS bzw. vielleicht CoffeeScript besser. Das ist ein Stück weit persönlicher Geschmack. Mist programmieren den kein Mensch mehr sinnvoll nachvollziehen kann, das kann man in jeder Programmiersprache. Das werden dir die Leute an meiner Uni, welche sich mit Programmen in allen möglichen Sprachen beschäftigen müssen, gerne bestätigen. Da bringt es nichts zu verteufeln. Lieber konstruktiv dafür werben wie man es besser und richtig machen kann. Wenn du schlechte Tutorials für JS kennst dann erkläre warum sie schlecht sind und verweise aus bessere. Ich verweise z.B. gern auf die Codecademy.

  11. Re: Zwischen Genie und Wahnsinn

    Autor: fratze123 05.02.13 - 07:46

    max2 schrieb:
    --------------------------------------------------------------------------------
    > Javascript bietet zwar wirklich coole Konzepte.

    Javascript hat ein Konzept? Deiner Meinung nach sogar mehrere? Na weiß nicht... :)

    > Vieles geht flexibler und
    > eleganter als in C/C++ oder Java.

    Flexibel? Elegant? Ich würde es teilweise eher als planloses Gefrickel bezeichnen. ^^

    > Aber wenn man sich nicht auskennt oder
    > nicht sauber vorgeht, ensteht ebensoschnell ein grausames Machwerk. Und bei
    > den Programmierern, die teilweise herumlaufen, wäre es nur allzuoft
    > wünschenswert, wenn sie von ihrer Programmiersprache etwas mehr an die
    > Leine genommen würden.

    Der große Scheiß an Interpretersprachen ist fehlende Vorabprüfung. Total behindert, wenn ein Tipfehler erst zur Laufzeit Probleme machen kann.

  12. Re: Zwischen Genie und Wahnsinn

    Autor: CrasherAtWeb 05.02.13 - 08:04

    fratze123 schrieb:
    --------------------------------------------------------------------------------
    > Der große Scheiß an Interpretersprachen ist fehlende Vorabprüfung. Total
    > behindert, wenn ein Tipfehler erst zur Laufzeit Probleme machen kann.

    So wirklich konstruktiv kannst du nicht, oder? Was soll das denn heißen, dass der Fehler "erst zur Laufzeit Probleme machen" könne? Das ist doch gerade der Vorteil von Interpretersprachen, dass man sie einfach so mal eben ausführen kann und eben nicht erst die Kompilierung abwarten bis man die Ausgabe testen kann. Sehe da dann nicht den großen Unterschied ob mir dann nun der Debugger zur Laufzeit oder beim Kompilieren den Fehler anzeigt. Klar die Debugger könnten besser sein, aber das zählt sowohl für Laufzeitumgebungen von Interpretersprachen als auch Compiler. Aber wozu konstruktiv auch offen für andere Konzepte sein, wenn man stumpf nur einfach abmotzen kann, was? Aber was genau hat dir das jetzt gebracht? Und was soll es anderen bringen?

  13. Re: Zwischen Genie und Wahnsinn

    Autor: Otto d.O. 05.02.13 - 09:56

    Das Problem mit Programmiersprachen, die erst zur Laufzeit die Fehler zeigen, ist, dass man erst mal alle möglichen Programmzweige durchtesten muss, bis man alle noch so trivialen Tippfehler findet. Wenn man tonnenweise Unit-Tests schreiben muss, nur um doofe Vertipper zu finden, dann geht einigesvon der gewonnenen Produktivität wieder verloren.

    In diesem Zusammenhang ist zu bemerken, dass Groovy, eine zu JavaScript relativ ähnliche Sprache, in der neuen Version 2 ein Feature zur statischen Typprüfung erhalten hat; ein Feature, dass langjährige Groovy-Programmierer wie wir schonsehnsüchtig erwartet haben.


    CrasherAtWeb schrieb:
    --------------------------------------------------------------------------------

    > So wirklich konstruktiv kannst du nicht, oder? Was soll das denn heißen,
    > dass der Fehler "erst zur Laufzeit Probleme machen" könne? Das ist doch
    > gerade der Vorteil von Interpretersprachen, dass man sie einfach so mal
    > eben ausführen kann und eben nicht erst die Kompilierung abwarten bis man
    > die Ausgabe testen kann. Sehe da dann nicht den großen Unterschied ob mir
    > dann nun der Debugger zur Laufzeit oder beim Kompilieren den Fehler
    > anzeigt. Klar die Debugger könnten besser sein, aber das zählt sowohl für
    > Laufzeitumgebungen von Interpretersprachen als auch Compiler. Aber wozu
    > konstruktiv auch offen für andere Konzepte sein, wenn man stumpf nur
    > einfach abmotzen kann, was? Aber was genau hat dir das jetzt gebracht? Und
    > was soll es anderen bringen?

  14. Re: Zwischen Genie und Wahnsinn

    Autor: CrasherAtWeb 05.02.13 - 10:06

    Otto d.O. schrieb:
    --------------------------------------------------------------------------------
    > Das Problem mit Programmiersprachen, die erst zur Laufzeit die Fehler
    > zeigen, ist, dass man erst mal alle möglichen Programmzweige durchtesten
    > muss, bis man alle noch so trivialen Tippfehler findet. Wenn man
    > tonnenweise Unit-Tests schreiben muss, nur um doofe Vertipper zu finden,
    > dann geht einigesvon der gewonnenen Produktivität wieder verloren.

    Ich frag mich ernsthaft was du da für komplizierte Konstrukte zusammen hackst. Mit nem ordentlichen Debugger nebenbei laufend, hatte ich noch nie Probleme etwas derartiges relativ schnell zu finden. Die ist schon klar, dass wir hier von kleinen Frontend-Apps und nicht sonstwas für monolithischen Systemprogrammen reden, oder?

  15. Re: Zwischen Genie und Wahnsinn

    Autor: Haxx 05.02.13 - 10:12

    1. Javascript ist in modernen Browsern nicht mehr interpretiert.
    2. Das es in Javascript keine Typen basierende Fehlererkennung gibt... liegt daran das es keine typisierung gibt. Bsw. Dart wird auch direkt aus sourcode in einer VM ausgeführt und dort hat man eine typenprüfung (bzw. sie ist optional aktivierbar). Man kann durch aus einen Schritt weiter gehen und schon bei der kompilierung Fehler anzeigen.

  16. Re: Zwischen Genie und Wahnsinn

    Autor: tundracomp 09.02.13 - 02:33

    Es gibt keine Python-bindings mehr... nur noch diesen gi.repositry Mist! Damit ist ein großer Vorteil von Python, inline-Dokumentation, für GTK und Co gestorben. :-( Außerdem fühlt sich das ganze immer ein bisschen wie ein Fremdkörper an (z.B. wegen den mit PEP 8 inkonsistente Namensschreibweisen). Aber vermutlich war die Einführung von gi eh nur dafür da um schnell an (schlechte) Bindings für JavaScript zu kommen...

  17. Re: Zwischen Genie und Wahnsinn

    Autor: Thaodan 09.02.13 - 02:59

    Kannst du das ganze mal genauer erklären?

    Wahrung der Menschenrechte oder Freie fahrt am Wochenende.
    -- Georg Schramm

Neues Thema Ansicht wechseln


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

Anzeige
Stellenmarkt
  1. HAVI Logistics, Duisburg
  2. Robert Bosch GmbH, Stuttgart-Vaihingen
  3. TUI Cruises GmbH, Hamburg
  4. ABUS Security-Center GmbH & Co. KG, Affing

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 44,99€
  2. 349,99€


Haben wir etwas übersehen?

E-Mail an news@golem.de


Weltraumforschung: DFKI-Roboter soll auf dem Jupitermond Europa abtauchen
Weltraumforschung
DFKI-Roboter soll auf dem Jupitermond Europa abtauchen
  1. Softrobotik Oktopus-Roboter wird mit Gas angetrieben
  2. Warenzustellung Schweizer Post testet autonome Lieferroboter
  3. Lernroboter-Test Besser Technik lernen mit drei Freunden

OxygenOS vs. Cyanogenmod im Test: Ein Oneplus Three, zwei Systeme
OxygenOS vs. Cyanogenmod im Test
Ein Oneplus Three, zwei Systeme
  1. Android-Smartphone Update soll Software-Probleme beim Oneplus Three beseitigen
  2. Oneplus Three Update soll Speichermanagement verbessern
  3. Android-Smartphone Diskussionen um Speichermanagement beim Oneplus Three

Kritische Infrastrukturen: Wenn die USV Kryptowährungen schürft
Kritische Infrastrukturen
Wenn die USV Kryptowährungen schürft
  1. Ripper Geldautomaten-Malware gibt bis zu 40 Scheine aus
  2. Ransomware Trojaner Fantom gaukelt kritisches Windows-Update vor
  3. Livestreams Ein Schuss, ein Tor, ein Trojaner

  1. Modulares Smartphone: Lenovo bringt Moto Z mit Moto Z Play nach Deutschland
    Modulares Smartphone
    Lenovo bringt Moto Z mit Moto Z Play nach Deutschland

    Ifa 2016 Im September bringt Lenovo nicht nur das Moto Z, sondern auch gleich das Moto Z Play auf den deutschen Markt. Die Play-Ausführung ist auf lange Akkulaufzeit ausgerichtet - beide Smartphones können mit Modulen erweitert werden.

  2. Yoga Book: Lenovos Convertible hat eine Tastatur und doch nicht
    Yoga Book
    Lenovos Convertible hat eine Tastatur und doch nicht

    Ifa 2016 Unter 10 mm dünn und leichter als 700 Gramm: Beim Yoga Book handelt es sich um ein außergewöhnliches Convertible. Es wird mit Stift ausgeliefert, statt einer physischen Tastatur weist es ein riesiges, beleuchtetes Touchpad auf - und günstig ist es auch noch.

  3. Huawei Connect 2016: Telekom will weltweit zu den größten Cloudanbietern gehören
    Huawei Connect 2016
    Telekom will weltweit zu den größten Cloudanbietern gehören

    Die Telekom will zusammen mit ihrem Partner Huawei die führenden Cloud-Anbieter in den USA wie Amazon, Microsoft und Google angreifen. Doch die Konzerne haben noch weitergehende gemeinsame Ziele.


  1. 22:19

  2. 20:31

  3. 19:10

  4. 18:55

  5. 18:16

  6. 18:00

  7. 17:59

  8. 17:13