Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Anregungen » Java Bereich

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 < [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ]
010
19.11.2006, 23:31 Uhr
Lensflare



Bin neugierig.
Wieso wollt ihr Java nicht als Programmiersprache anerkennen?
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
19.11.2006, 23:49 Uhr
Pablo
Supertux
(Operator)


weil sie keine ist?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
20.11.2006, 09:50 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Schon. Ich bekomm definitiv zuviel Gehalt. Ich arbeite mit Java und bekomm das Gehalt eines "Programmierers". Ich sollte mich beschweren ...
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
22.11.2006, 18:01 Uhr
Lensflare



Ich beschäftige mich gerade mit java und bisher finde ich die Sprache im Vergleich zu C/C++ garnicht so schlecht.

Die Exceptions helfen mögliche Laufzeitfehler zu enttarnen und zu beseitigen.
Die Programme sind halt etwas langsamer als die von C/C++ aber dafür sind die plattformunabhängig.

Ihr könnt mir doch wenigstens sagen was euch an java stört.
Vielleicht schliesse ich mich dann eurer Meinung an.
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
22.11.2006, 18:25 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)



Zitat von Lensflare:
Die Exceptions helfen mögliche Laufzeitfehler zu enttarnen und zu beseitigen.

In wiefern übertreffn sie denn deiner Ansicht nach die Exceptions in C++?

Und um die Frage zu beantworten (und den nächsten Flamewar anzuzetteln ):
- Langsam bei falscher Verwendung (ja, C++ ist auch langsam, wenn man es falsch benutzt. Aber wenn eine Sprache schon in so simple Sachen wie eine String-Klasse Performancefallen einbaut, die nun wirklich überflüssig wären, so dass man mit zigfach verschachtelten StringBuffern o.ä. rumhantieren muss, dann ist das wirklich nicht mehr witzig.)
- Aufgezwungener Garbage Collector
- Pseudosystemübergreifend
- Proprietäre Sprache, wennauch wohl demnächst OpenSource.
- Interpretersprache (auch wenn manche Javaner das immer noch bestreiten)
- Fehlen einiger simpler aber bequemer Features und unverständliche Beschlüsse (z.B. Klasse String als final, da sonst eben wieder die Geschwindigkeit leckt; keine Default-Parameter; keine Pointer u. Referenzen (s. zweiten Punkt) etc.)

Dieser Post wurde am 22.11.2006 um 18:30 Uhr von Reyx editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
22.11.2006, 18:59 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)



Zitat von Reyx:
- Langsam bei falscher Verwendung (ja, C++ ist auch langsam, wenn man es falsch benutzt. Aber wenn eine Sprache schon in so simple Sachen wie eine String-Klasse Performancefallen einbaut, die nun wirklich überflüssig wären, so dass man mit zigfach verschachtelten StringBuffern o.ä. rumhantieren muss, dann ist das wirklich nicht mehr witzig.)


Das macht einen guten Programierer aus, das er weiß, worauf er zu achten hat.

Zitat von Reyx:

- Aufgezwungener Garbage Collector


Besser als gar keiner ...

Zitat von Reyx:

- Pseudosystemübergreifend


Sie arbeiten daran, das ist die Zukunft ... (hoffentlich )

Zitat von Reyx:

- Proprietäre Sprache, wennauch wohl demnächst OpenSource.


Wird wohl nur die mobile Edition OpenSource. Aber man sollte sich von der Sprache überzeugen lassen,nicht vom Hintergrund. Obwohl Sun doch irgendwie ganz gut in die OpenSource gemeinde passt, wenn auch nur "indirekt"

Zitat von Reyx:

- Interpretersprache (auch wenn manche Javaner das immer noch bestreiten)


Stimmt, das wird bestritten - zu recht.
Man muss seid Java seinen Horizont etwas erweitern.Es gibt nicht nur Gut und Böse (Compiler-/Interpretersprachen) sondern neuerdings auch ein zwischending.

Zitat von Reyx:

- Fehlen einiger simpler aber bequemer Features und unverständliche Beschlüsse (z.B. Klasse String als final, da sonst eben wieder die Geschwindigkeit leckt; keine Default-Parameter; keine Pointer u. Referenzen (s. zweiten Punkt) etc.)

Referenzen gibt es wohl, auch wenn sie in Java anderst verwendet werden. Das es keine Pointer gibt ist eher positiv (auch wenn manche "Freaks" auf so etwas nicht mehr verzichten möchten)
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
22.11.2006, 19:28 Uhr
Lensflare




Zitat von Reyx:

In wiefern übertreffn sie denn deiner Ansicht nach die Exceptions in C++?


Gibts etwa in C++ Exceptions? Wenn ja dann erfüllen die wohl nicht den selben Zweck, weil ich noch nie eine gesehen habe.


Zitat von Reyx:

Und um die Frage zu beantworten (und den nächsten Flamewar anzuzetteln ):


Ich hoffe es gibt kein "Flamewar"
Mir geht es um eine sachliche Beurteilung, damit ich besser die Unterschiede, Stärken und Schwächen der Sprachen kenne


Zitat von Reyx:

- Langsam bei falscher Verwendung (ja, C++ ist auch langsam, wenn man es falsch benutzt. Aber wenn eine Sprache schon in so simple Sachen wie eine String-Klasse Performancefallen einbaut, die nun wirklich überflüssig wären, so dass man mit zigfach verschachtelten StringBuffern o.ä. rumhantieren muss, dann ist das wirklich nicht mehr witzig.)


-> dem stime ich zu.


Zitat von Reyx:

- Aufgezwungener Garbage Collector


-> wieso ist das schlecht? Braucht er viel Rechenzeit? bzw bremst er das Programm aus?


Zitat von Reyx:

- Pseudosystemübergreifend


-> Wie will man es denn anders systemübergreifend machen? Wenn es schon systemübergreifend sein soll, dann ist das doch eine gute Lösung oder?


Zitat von Reyx:

- Proprietäre Sprache, wennauch wohl demnächst OpenSource.


-> Hat das denn Auswirkungen auf den Entwickler? Inwieweit ist das ein Nachteil?


Zitat von Reyx:

- Interpretersprache (auch wenn manche Javaner das immer noch bestreiten)


-> Das ist kein Nachteil an sich. Der Nachteil wäre, dass es lanmgsamer ist aber es geht nicht anders, wenn man es systemübergreifend haben will.


Zitat von Reyx:

- Fehlen einiger simpler aber bequemer Features


-> welche zB?


Zitat von Reyx:

keine Default-Parameter;


-> was ist das? Anderes Wort für optionale Parameter? Die gibt es nämlich:
void f(int i=0; int j) { /*...*/ };


Zitat von Reyx:

keine Pointer u. Referenzen (s. zweiten Punkt) etc.)


-> Referenzen sind langsamer als Pointer? Pointer speichern eine Adresse. Ist das bei Referenzen anders?

EDIT:
Mist! Zu langsam
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)

Dieser Post wurde am 22.11.2006 um 19:28 Uhr von Lensflare editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
017
22.11.2006, 22:12 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


Aaalso:

Bezüglich Interpretersprache:
Wenn das Ergebnis einer Datei interpretiert werden muss, dann handelt es sich um eine Interpretersprache. Ob das nun vorher zu einem Zwischending kompiliert wurde oder nicht, ist wurscht. Es wird interpretiert, und somit ist es eine Interpretersprache.

Default Parameter habe ich in Java noch nicht zum Laufen bekommen? Ich bekomme dann eine Meldung à la "Default Parameter not allowed" oder so, muss ich morgen nochmal nachprüfen.

Referenzen u. Pointer sind nicht Allheilmittel. Aber es ist schön, sie benutzen zu können! Gleices gilt wohl für den Garbage Collector: Er ist weder gut noch böse, aber ich hätte gerne die Möglichkeit, ihn bei Bedarf ausstellen zu können. Nimm was du brauchst und lass das, was du nicht brauchst, seine Wege ziehen. Ein Aufgezwungener Garbage Collector mag besser sein, als gar keiner, Ansichtssache, aber ebenso schlechter als einer, auf den der erfahrenere Benutzer bei Bedarf - so er weiß, was er tut - verzichten kann.

Eine proprietäre Sprache hat immer den Nachteil, an eine gewisse monopolistische Firma gebunden zu sein. Auch wenn ich SUN wesentlich sympathischer in der Hinsicht finde, als z.B. Microsoft oder Adobe, bin ich doch der Meinung, dass Offenheit immer ein Pluspunkt ist. Diesen Punkt habe ich in gedachten Klammern angeführt, denn es könnte einmal ein Problem werden

Für mehr Text bin ich jetzt zu müde, bis morgen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
018
22.11.2006, 22:48 Uhr
Lensflare




Zitat von Reyx:

Bezüglich Interpretersprache:
Wenn das Ergebnis einer Datei interpretiert werden muss, dann handelt es sich um eine Interpretersprache. Ob das nun vorher zu einem Zwischending kompiliert wurde oder nicht, ist wurscht. Es wird interpretiert, und somit ist es eine Interpretersprache.


Es wird aber nicht die Java-Datei interpretiert sondern der bytecode.
Die Java-Datei wird in den bytecode übersetzt, genauso wie eine C++ Datei in Maschinencode übersetzt wird.
Den Maschinencode liest der Prozessor und den bytecode liesst die virtual machine.
Wie die virtual machine den bytecode liest und ihn für den Prozessor übersetzt, ist ihre Sache.
Das hat doch nichts mehr mit der Java-Datei zu tun.


Zitat von Reyx:

Referenzen u. Pointer sind nicht Allheilmittel. Aber es ist schön, sie benutzen zu können!


Wie J-jayz-Z bereits gesagt hat, gibt es Referenzen. Jedoch keine Pointer.
Da man so gut wie nie arithmetische Operationen an Pointern durchführen will (dazu sind Arrays da), kann man stattdessen auch Referenzen verwenden.
Sofern sie natürlich nicht langsamer sind oder mehr speicher belegen. Ich weiss nicht wie Referenzen intern aussehen.


Zitat von Reyx:

Gleices gilt wohl für den Garbage Collector: Er ist weder gut noch böse, aber ich hätte gerne die Möglichkeit, ihn bei Bedarf ausstellen zu können.


Wieso willst du ihn abstellen? Ich weiss nicht wie viel Rechenzeit er beansprucht. Wenn es wirklich ganz wenig ist, dann ist es doch nicht nachteilhaft.
Ich denke jedes kleine Progrämmchen, das auf einem PC im Hintergrund läuft müsste viel mehr Rechenzeit beanspruchen und die wird schliesslich auch vernachlässigt.
--
Wenn das Gehirn so einfach wäre, dass wir es verstehen könnten, wären wir so einfach, dass wir es nicht verstehen könnten.
(Emerson Pugh Trost)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
019
23.11.2006, 01:03 Uhr
ao

(Operator)


Zum Garbage Collector: Wenn er gut programmiert ist, arbeitet er nur dann, wenn das System Zeit übrig hat, vorausgesetzt, es ist immer so viel Speicher da, dass jede Anforderung direkt aus dem freien Heap bedient werden kann. Ob dann irgendeine Idle-Schleife läuft oder ob im Hintergrund der GC aufräumt, wen interessierts?

Und wenn der Speicher wirklich mal knapp wird, dann muss der GC eben einmal kurz anspringen und Platz schaffen, na und? In einem Programm ohne GC werden die Speicherblöcke dann freigegeben, wenn der Programmierer meint, sie nicht mehr zu brauchen. Ob das vom Performance-Profil her ein günstiger Zeitpunkt ist, oder ob es besser wäre, den Verwaltungskram auf gleich zu verschieben, weil ein anderer Thread gerade mit Vollgas rechnet oder zeichnet, darüber macht sich doch kaum einer Gedanken, oder? Und bei lose gekoppelten Nebenläufigkeiten ist es auch gar nicht vorherzusagen.

Damit will ich zeigen, dass ein Programm mit GC sogar die bessere Über-alles-Performance haben kann, weil der lästige Betriebskram dann erledigt wird, wenn ein bisschen Luft ist.

Davon abgesehen wird die Programmierung durch den GC erheblich einfacher und sicherer. Keine Speicherlecks mehr, und kein zerschossener Heap durch mehrfache Freigabe, ist doch toll. In C sind Speicherfehler die bei weitem schlimmste Klasse von Fehlern, was die Häufigkeit angeht und die Schwierigkeit, sie zu finden. In C++, mit Containern und Managed Pointern und so, gehts schon besser. Aber nach nem Dreivierteljahr als C#-Entwickler kann ich nur sagen: GarbageCollection ist einfach cool.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 < [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ]     [ Anregungen ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: