Re: Java-Rauschen (war: Re: Getter & Setter)



J. Stoever schrieb:
Jochen Theodorou wrote:
J. Stoever schrieb:
HTML ist als Plaintext auch grausam anzusehen. Und ?
aber bei HTML ist nicht so sehr der Source als viel mehr das was im Browser angezeigt wird wichtig. Ausserdem hat HTML alleine nicht

Und Java wird in der IDE angezeigt ;)

also stimmst du mir zu dass Java ohne IDE schlecht nutzbar ist?

wirklich irgendwelche Konrollstrukturen... Kurzum es ist eine beschreibungssprache und als solche etwas völlig anderes als eine allgemeine Programmiersprache. Ich sehe XML zum Beipsiel auch nicht als etwas dass für den menschlichen Leser bestimmt ist, sondern ich bezeichne das als "cross machine language", kurz XML eben ;) Zudem habe ich bei HTML oft nur eine Datei, die ich betrachte.... bei Java hast du nur selten eine Klasse.

Klar, das sind ganz grundverschiedene Dinger. Ich wollte damit auch nur den Punkt machen, dass es nicht viel Sinn macht, Sachen aus einer unrealistischen Perspektive zu betrachten.

das ist schon witzig finde ich... ich meine eine Sprache, die in einer Zeit entworfen wurde in der es die heutigen IDEs noch nicht gab.... welche Perspektive hatten denn die Leute, die Java entworfen haben? Najagut, das muss ja nicht unbedingt eine realistische sein. Aber gehe ich recht in der Annahme dass du dann sagst, dass Java erst durch eine IDE "richtig gut" wird?... also durch ein Element das weder Teil der Sprache, noch der Laufzeitumgebung oder der API ist? Weisst früher hat man von Sprache gesprochen und die Sprache gemeint, nicht die API, nicht die IDE, es sei denn es war von Anfang an als komplettes Konstrukt gedacht.

Wer im Jahre 2008 noch ohne IDE coded, ist imo entweder Totalamateur oder so veraltet dass er vermutlich sowieso nur ANSI-C beherrscht. Oder Assembler.Das heisst nicht das man in ruby weniger produktiv
ehm... finde ich jetzt nicht... man sollte sich eher fragen warum man die IDE überhaupt braucht und für was man die eigentlich braucht. Und

Warum ?

Warum nicht? Nenne es Erforschung des Selbst ;)

Ich finde, eine interessantere Frage ist, warum man ueberhaupt gegen eine IDE ist. Ich sehe jetzt so spontan keine Nachteile (*) die es mir wuenschenswert zu erscheinen lassen, mich von IDEs zu distanzieren.

ich ornde mal ein (*) hier ein, weil es bem Zitieren sonst so schwer wird:

*: Natuerlich gibt es Nachteile bei vielen IDEs, aber das sind alles Sachen, die nicht inherent mit IDEs verbunden sind, sondern nur spezifische Probleme, die man loesen koennte, ohne auf eine IDE zu verzichten (z.B. Feature overload und aehnliches).

Nachteile von IDEs. Nun mal abgesehen dass man APIs nicht mehr lernt, sondern sich einfach auf Codecompletion verlässt und dabei Hilfsklassen vollkommen ignoriert, abgesehen davon dass man sich ständig irgendwelchen Code generieren lässt, abgesehen davon dass die meisten IDEs ware Monster sind (Eclipse läuft bei mir nicht unter 2GB und was weiss ich wie viel permgen) was Speicher und CPU-Last betrifft, abgesehen davon dass die meisten IDEs völlig überladen sind mit features, die niemand braucht, abgesehen davon dass ich ewig warten muss bis die IDE hochgefahren ist wo ich doch nur eine Zeile kurz ändern wollte, abgesehen davon dass viele keine build skripte irgendeiner Art machen, abgesehen davon dass die meisten IDEs in der Bedienung nicht sonderlich einheitlich sind, abgesehen davon dass eine IDE ein ausdrucksschwache Sprache auch nicht wirklich verbessern kann, abgesehen davon dass fehlende Konzepte nciht einfach durch die IDE ergänzt werden können...

nein.. ich habe nicht wirklich etwas gegen IDEs, nur das man so große IDEs braucht um wirklich was mit der Sprache anfangen zu können... ja, gegen diese Kombination habe ich etwas.


dann sollte man sich mal umschauen ob es nicht auch besser geht. Ich behaupte ja nicht, dass man wenn man Ruby benutzt nicht auch irgendwann eine IDE gut brauchen kann... Nur hängt das mit einer bestimmten Menge an Code zusammen und die erreicht man bei Java schneller als bei zum Beispiel Ruby. Schneller nicht im Sinne von Produktivität, sondern man

Java ist ja nun auch generell fuer andere Probleme geeignet als andere Sprachen.

Also das ist mir jetzt ein wenig zu allgemein.

Wenn man ein schnelles kleines 5-Zeilen-Script basteln will, braucht man natuerlich auch keine IDE, aber dann waer' es auch normalerweise nicht sehr sinnvoll, Java dafuer einzusetzen.

Ach? passiert aber oft genug

Ich wuerde mal, ganz pauschal jetzt, und in diesem Zusammenhang, sagen, dass sich Java eher fuer groessere Projekte eignet. Und fuer die ist dann eine IDE sowieso angebracht, egal welche Sprache.

wie gesagt, das orientiert sich IMHO an der Codegrösse und in einer ausdrucksstärkeren Sprache kann man das gleiche in mit weniger Code ausdrücken. Was also ein grosses Projekt in Java ist, ist vielleicht erst ein mittleres in Ruby. Anders ausgedrückt, man braucht die IDE in Java früher als in zum Beispiel Ruby.

es gibt Leute die Argumentieren für Smalltalk gerade wegen der IDE. Aber da ist die IDE indirekt Teil der Sprache und in das System integriert. Da bedeutet auch "seine" IDE zu benutzen, dass man von speziell angepassten Code spricht... nunja, ich will das jetzt nicht auswalzen.

Ja, natuerlich. Sprachen waren schon immer (naja, fast) eng mit den IDEs verbunden. Man denke da nur an das alte Turbo Pascal mit der Borland IDE, oder an die diversen Microsoft-Produkte. Das ist eben bei manchen so, sehe ich jetzt aber nicht wirklich als problematisch.

wenn dann die Sprache steht und fällt mit der IDE sehe ich das durchaus als problematisch....konsequenterweise müsste man ja dann sagen, dass Java für größere Projekte nicht geeignet war in den ersten Jahren.

[...]
Ich habe Java als IDE-driven bezeichnet, weil es ohne IDE grausam ist. Dass heisst nicht das ich Java deswegen nicht mag. Ich sehe es allerdings für eine textbasierte Programmiersprache als Nachteil an, wenn sie aufgrund der "Umständlichkeit" der Sprache ohne IDE kaum nutzbar ist. Bei auf Grafiken basierenden Sprachen kommt man ohne IDE ja

Warum ? Dafuer muesstest Du mir, wie gesagt, erklaeren, warum es Dir wuenschenswert erscheint, Java ohne IDE zu nutzen.

vielleicht weil ich ein diff lesen können möchte ohne hunderte von Zeilen lesen zu müssen obwohl nur ein kleines Feature implementiert wurde? Es sind eben viele kleine Sache, die dazu beitragen, nicht eine spezielle Sache. Ich finde es zum Beispiel durchaus nervig fast 5 Minuten warten zu müssen bis ich in meiner IDE eine Datei ändern kann... wenn ich die IDE denn überhaupt hochfahren kann... mir ist vielleicht gerade der Speicher ausgegangen. Sowas wie Gedit braucht nicht viel Speicher und geht eigentlich immer

Die Krise ist schon längst da, weil man solche Monster-IDEs überhaupt braucht. Man muss auch akzeptieren dass sich Java nicht sonderlich gut für manche Dinge eignet... dazu gehört zum Beispiel Multicoreprogrammierung (und ich meine mehr als 10 Kerne). Sicher... man

Wirklich ? Wieso ? Ich kenn' mich mit solchen Groessenordnungen gar nicht aus, wuerde mich aber trotzdem interessieren.

nunja, überlege dir mal eine Berechnung die sich gut aufteilen lässt und dann stell dir vor du wolltest das auf 10Threads verteilen.. wie machst du das? Und dann überlege dir mal eine Berechnung, die sich weniger gut aufteilen lässt und träume mal davon wie schön es wäre wenn deine Sprache das aufteilen für dich vollautomtisch erledigen würde.

Also eine Sprache, die in komprimierter Form zeigt, was die unkomprimierte Form machen würde... Letztlich ist das aber eine neue Sprache, auch wenn sie auf Java basiert und 1:1 umgesetzt werden kann.

Waer' dann halt ein weiterer Abstraktionslevel.

Oder in anderen Worten ein Hochsprache zur Hochsprache ;) Nenn' es ruhig Level, ich nenne es Sprache.... bzw. *neue* Sprache.. was impliziert dass die alte nicht ausreichend ist in einem bestimmten Aspekt.

Wenn man sich in "alternativen" Kreisen bewegt lernt man vor allem: Nicht alle Programmierer werden deine Auffassung teilen, auch wenn deine Argumente noch so stichhaltig sind. Und: Viele werden sich persönlich oder ihre Lieblingssprache angegriffen sehen, dich als jemanden bezeichnen der alles schlecht machen will (oder schlimmeres), auch wenn es dafür keinen objektiven Grund gibt.

Ja, natuerlich. Nichts koennen Programmierer besser, als sich ueber Nichtigkeiten streiten, am besten jahrelang ;)

stimmt

Das ist keineswegs speziell für Java so. Fang mal in einer Rubygruppe damit an wie toll du Java findest und ein flamewar ist praktisch garantiert.

Meine Jugend hab' ich mit C vs Pascal und Windows vs DOS verschwendet ;)

Windows vs DOS? echt? Habe ich noch nie mitbekommen so eine Diskussion.

Ich will auch nicht sagen X ist besser als Y. Insbesondere Groovy habe ich nie als Sprache gesehen die Java ablösen will, sondern die mit Java zusammenarbeiten will. Allerdings sollte man auch in der Lage sein mal zu versuchen logisch argumentierend zu Diskutieren und mal in Kauf nehmen dass die Lieblingssprache Nachteile hat und dass es andere besser können.

Das "Problem" ist ja nicht wirklich ein Java-Problem. Wie Du selber sagst, da gibt es durchaus noch ein paar mehr Sprachen die aehnlich laut Rauschen. Aber wie gesagt sehe ich noch nicht, dass dieses "Problem" wirklich eins ist, und nicht einfach eine (neutrale) Eigenschaft.

naja, wie neutral kann es denn sein, wenn manche Sprachen das Problem haben und manche nicht? Oder wenn der Grad des Rauschen so unterschiedlich ist? Das Rauschen selbst ist erstmal kein Problem. Wenn du den Fernseher einschaltest und siehst weißes Rauschen, dann ist das auch erstmal kein Problem... wenn du allerdings ein Fernsehprogramm anschauen wolltest und dich nicht vom Rauschen hypnotisieren lassen wolltest, dann ist es ein Problem. Rauschen in der Programmiersprache verdeckt den Blick auf das, was wirklich wichtig ist. Nicht wenige fangen ein Programm an, indem sie erstmal all das "drum-herum" schreiben. Zum Beispiel kenne ich jemanden, der Groovy benutzt hat um einen Bildbearbeitungsalgorithmus zu entwickeln. Ziel war es dabei nicht besonders schnell zu sein, sondern den Algorithmus leicht anpassen zu können und sich nicht vom Rauschen ablenken zu lassen. Nachdem er mit dem Ergebnis zufrieden war, hat er den Algorithmus nach Java portiert um die notwendige Geschwindigkeit zu bekommen. Nach seinen Aussagen hätte er in Java wahrscheinlich doppelt so lange gebraucht.. was ich natürlich nicht selbst beurteilen kann.

Ich will jetzt auch nicht behaupten, dass es sich lohnt ein grosses existierendes Projekt von heute auf morgen nach Groovy um zu stellen... andererseits muss das ja so auch nicht gemacht werden ;)

Gruss theo


.



Relevant Pages

  • Re: Java-Rauschen (war: Re: Getter & Setter)
    ... also stimmst du mir zu dass Java ohne IDE schlecht nutzbar ist? ... Nun mal abgesehen dass man APIs nicht mehr lernt, sondern sich einfach auf Codecompletion verlässt und dabei Hilfsklassen vollkommen ignoriert, ... Oder wenn der Grad des Rauschen so unterschiedlich ist? ...
    (de.comp.lang.java)
  • Java-Rauschen (war: Re: Getter & Setter)
    ... aber bei HTML ist nicht so sehr der Source als viel mehr das was im Browser angezeigt wird wichtig. ... Ich finde, eine interessantere Frage ist, warum man ueberhaupt gegen eine IDE ist. ... Nur hängt das mit einer bestimmten Menge an Code zusammen und die erreicht man bei Java schneller als bei zum Beispiel Ruby. ... Ich sehe es allerdings für eine textbasierte Programmiersprache als Nachteil an, wenn sie aufgrund der "Umständlichkeit" der Sprache ohne IDE kaum nutzbar ist. ...
    (de.comp.lang.java)
  • Re: welche werkzeuge zum programmieren und/oder welche IDE ?
    ... wie z.b. Policy Based Design ... ZB das Leute, fuer die Java soetwas wie ihre Muttersprache ist, lieber ...
    (de.comp.os.unix.programming)
  • Re: Java-Rauschen (war: Re: Getter & Setter)
    ... Programmieren meinst, dass die IDE doch eh die ganze Zeit läuft, dann ... Eclipse ... Wenn du jetzt sagen würdest ich bin Java gegenüber Voreingenommen ... Groovy Java *braucht*, stört dich hingegen nicht. ...
    (de.comp.lang.java)
  • Re: Java Instanz und Objekt frage ?
    ... Ob g jetzt eine Art Liste ist, oder ein assoziativer Speicher, oder sonstwas, ist nicht definiert soweit ich weiss. ... Im übrigen habe ich in Java keine Garantie dass die Position von x im Speicher constant bleibt. ... Ich meine stell es dir so vor wie eine Implementierung einer Programmiersprache, die lokale Varibablen nicht nur nicht abräumt, sondern auch noch im normalen Speicher zu beginn anlegt. ... alle anderen Variablenname, die ich so definiere automatisch auch dort liegen, es also nur einen einzigen Namensraum gibt, dann ist das effektiv gesehen global, aber nicht formell. ...
    (de.comp.lang.java)