ubuntuusers.de

Fragen zu Java

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

hirschen

Anmeldungsdatum:
11. August 2005

Beiträge: 553

Hallo,

ich will mal wissen wozu Java gut ist und was man damit machen kann. Ich mache einen Selbststudium in C und lese grade das Java syntaktisch C ziemlich ähnelt. Was ich von Java oder C noch erwarte weiß ich nicht so genau, ich durchlebe gerade eine Neugier Phase. C gefällt mir weil es unter allen Plattformen zu finden ist, Java ebenso, doch Java soll nicht so schnell sein wie C. Wenn ich das Java pdf durchlese so schreiben die Autoren wie gut es gegenüber C doch ist, mit sauberem (bzw. perfektem) Coding, keine schmutzigen Tricks usw.

Eigentlich wenn ich es lese so stelle ich mir vor die C und Java programmierer stehen im Klinch zu einander, das ist so als ob sich Linuxer gegen Windowser bekriegen was nun besser ist. Scho verrückt...

Ich will mich mit GTK auseinander setzen und grafische Software schreiben und auch für die Konsole.
Geht das mit Java???

Ich habe mir Eclipse grade installiert um die Codes aus dem Buch zu testen und finde die IDE gradezu als absoluter Hammer, Tutorials, Sdk's was das Ding mir alles bietet, hat mich dazu veranlasst diese Zeilen zu schreiben.

Noch ne Frage, kann man mit Eclipse C Software schreiben???

Vielen Dank
winuser

dahane Team-Icon

Avatar von dahane

Anmeldungsdatum:
23. Oktober 2004

Beiträge: 326

Wohnort: Hamburg

Zum Unterschied java <> C kann ich nicht viel sagen, da ich bisher nichts mit java zu tun hatte.

Java und GTK geht Link

Mit Eclipse geht auch C. Dazu brauchst du dann die CDT
Für die Oberflächenerstellung ist Glade ganz gut und das kombiniert mit Anjuta ist dann auch ziemlich praktisch.

hirschen

(Themenstarter)

Anmeldungsdatum:
11. August 2005

Beiträge: 553

Naja, ich gucke es mir trotzdem mal an, ein Java Buch habe ich ja schon. Ich kann sowieso nur Konsolen Progs.
schreiben. C und Java sind sich ziemlich ähnlich so das ich es zusammen kombinieren kann, von der Syntax her und so.

mfg winuser

haraldkl

Avatar von haraldkl

Anmeldungsdatum:
21. Juli 2005

Beiträge: 1903

Wohnort: Würselen

Hi,
der Hauptunterschied zwischen C und Java ist die Objektorientierung unter Java, würde ich jetzt mal so behaupten. Außerdem schützt dich Java sehr viel mehr vor Fehlern!
Ansonsten würde ich mal sagen, das die meisten Sprachen nicht so wahnsinnig verschieden sind. Die Grundkonzepte kann man recht schnell von einer in die andere übertragen. Wenn du nur C und nicht C++ anschaust, entgehen dir allerdings die Objekte.
Die Sprache, die mir am Besten gefällt ist Ada 😳
Meine größeren Projekte musst ich aber bislang immer unter C und Fortran schreiben...
Um Geschwindigkeitseinbußen würde ich mir unter Java keine allzugroßen Sorgen machen, sicher man "kann" unter C schnelleren Code schreiben, allerdings muss man dafür in der Trickkiste kramen, und es lohnt sich nur selten. Man kann auch in Assembler noch schnelleren Code schreiben alles eine Frage des Aufwandes, den man betreiben will, und natürlich leidet darunter in der Regel die Portabilität.
Auf jedenfall wünsche ich dir viel Spass beim lernen 😉

BartLBe

Anmeldungsdatum:
14. Oktober 2005

Beiträge: 5

Hallo,

Java ist das Schlechteste aus C und Smalltalk: die Syntax von C und interpretiert (Entschuldigt just in time kompiliert) wie Smalltalk.
Nett an Java finde ich ist das Dokumentationssystem (javadoc), da findet man alles Recht schnell zurecht und braucht sich nicht erst ewig in neue Bibliotheken einarbeiten.
Wie oben schon erwähnt ist Java objektorientiert und das ist schon ein anderer Ansatz als C (Prozedur- evtl Modulorientiert). Ich habe schon ne weile gebraucht bis ich die C-Denke los war.
Wenn du Fenstern willst mit Java ist Swing eigentlich ganz ok. Brauchste du nicht dieses zweimal übersetzen wie bei GTK (ist das immer noch so ?).
Eclipse rocks!!!

PS Was mir noch einfällt das beste von C und Smalltalk hat Sun bei Java weggelassen. In C kommt man an die register ran (Java an die Virtuelle Maschiene). Smalltalk ist wirklich rein objektorientiert, Java hat diese Grunddatentypen wie int, byte, ...

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17621

Wohnort: Berlin

Java hat keine Zeigerarithmetik (das ist fast immer ein Vorteil) und eine Garbagecollection (auch das ein Vorteil) und Exceptionhandling (noch einer).

Es gibt eine sehr große und aktzeptierte Bibliothek mit Funktionen - nicht den Wildwuchs, den man bei Smalltalk, C und C++ sieht, und jede Menge weiterer, freier Bibliotheken.

Und der JIT-Compiler kann den einmal kompilierten Code für die Maschine optimieren, auf der der Code läuft, und kann dabei die tatsächliche Nutzung des Programms berücksichtigen. So kommt es, daß Java-Programme u. U. schneller laufen als C-Programme.

Für Treiberprogrammierung bleibt man auf C++ und C angewiesen.

hirschen

(Themenstarter)

Anmeldungsdatum:
11. August 2005

Beiträge: 553

Hallo!,

Danke für die Antworten, also ist doch wirklich interessant. Ich werde es mir genauer anschauen, den momentanen Vorteil den ich grad aus diesen Sprachen ziehe ist, das sie sich ziemlich ähnlich sind, so das ich mein C nicht zu vernachlässigen brauch und beide lernen kann ☺.

Später kann ich dan meinen Liebling dann auch rausziehen.

Vielen Dank.

mfg winuser

Antworten |