Bücher zu Java?

  • Zitat von JohnFoo

    Ich kann mich nicht erinnern jemals eine Job-Anzeige gesehen zu haben, in der nach Lisp, Haskell, Prolog oder ähnlichem gefragt wurde .. oder wahrscheinlich nicht genug, als dass es hängen geblieben wäre.

    Also ich habe mal EINE gesehen, wo man Lisp können musste, war aber im spektrum der Wissenschaft die Anzeige und auch nur ein Mal, und sonst gibt es da fast nur C++ und "einige" Java Anzeigen...

    Zurück zum Thema: ich fubde für den Anfang das Buch easy Java 2 von Markt und technik gut, und wenn man das schon kann, dann eifnach im Internet googeln was man halt braucht, oder unter http://www.galileocomputing.de/katalog/openbook gibt es total super tolle Bücher, auch Java oder ich habe mir auch einiges mit ner LernDVD gelern (Java bzw. c++ von Video2Brain, die dauern so 10 Stunden, sind Lernvideos und verdammt gut!)

  • Was ist so schlimm an deutschen Büchern? Mir kommt vor es war einmal ein kleiner Mann, der hat gesagt englische Bücher sind besser als deutsche, und alle sagens nach.. Es gibt sehr wohl gute deutsche Bücher. Ich hab einige deutsche Bücher die sehr gut sind.. z.B Visual C++.Net vom Hanser Verlag (Scheibl), 3D-Spiele Programmierung von Markt und Technik (Zerbst) und eben Java ist auch eine Insel. Ich hab qualitativ auch schon schlechte englische Bücher gelesen, letztendlich kommts auf den Autor an.

    640K ought to be enough for anybody. :eek2:

  • Naja, was ich an deutschen Büchern nicht mag ist das entweder krampfhafte übersetzen von englischen Fachbegriffen ins Deutsche, oder die bunte Mischung aus Deutsch mit englischen Begriffen drin. Du hast schon recht das es durchaus gute deutsche Bücher gibt, aber (leider?) ist die Vielzahl der guten Autoren englischsprachig, und die Bücher daher auch - und Übersetzungen können zwar durchaus gut sein, aber da lese ich dann doch viel lieber das Original.

    Das gilt im übrigen nicht nur für Computerbücher, sondern auch für jegliche andere Literatur - ok, da gibt es weitaus mehr brauchbare deutschsprachige Autoren, aber wenn man sich die Übersetzungen ansieht, dann ist das nur furchtbar. Das derzeit vielleicht populärste Beispiel ist wohl "The Da Vinci Code" bzw. "Das Sakrileg" (alleine die Übersetzung des Titels ist furchtbar, wie bei allen Dan Brown Büchern), und der deutsche Schreibstil ist zwar durchaus brauchbarer, aber in Englisch ist es IMHO besser geschrieben. Noch ein Beispiel? Terry Pratchett - das ist in Deutsch zwar durchaus sehr unterhaltsam, aber der Großteil der Wortwitze kommt nicht so gut - wenn überhaupt - rüber.

    Fazit: nichts gegen deutsche Bücher, die sind durchaus brauchbar, aber Übersetzungen erreichen meistens nicht die Qualität des Originals, und insbesondere in der Informatik kann man sich ruhig angewöhnen die Literatur auf Englisch zu lesen - es gibt da auch meistens weitaus mehr - wirklich gute - Standardliteratur (wie z.B. TIJ) als auf Deutsch.

  • Ja die Übersetzungen ins Deutsche sind sicher oft schlecht, aber bei Programmierbüchern hab ich noch nicht gesehen, dass aus einem englischen Buch übersetzt wurde. Zumindest kenn ich keine Quelle von der es übersetzt wurde. Was meinst du mit der bunten Mischung von deutschen und englischen Begriffen? Ein deutscher Autor kann doch nicht alles auf Deutsch schreiben. printf muss er so schreiben und nicht druckf *fg*

    640K ought to be enough for anybody. :eek2:

  • Ne, ich meinte viel langer deutscher Text und dann quasi nach belieben englische Fachausdrücke hineingestreut. Aber du hast da noch einen wunderbaren Punkt gebracht, warum englische Literatur zu bevorzugen ist: dann machen die Namen der ganzen Befehle in den Beispielen erst Sinn. Ich finds zum Beispiel auch grauenhaft einen Code zu haben, wo natürlich englische stdlib-Befehle (oder von mir aus API-Methoden) in deutschnamigen Beispielfunktionen stehen, das ist auch wieder so ein Fall einer bunten Mischung.

    Allerdings muss ich zugeben, das Schlimmste was ich bisher gesehen habe, war Code mit französischen Funktionsnamen und französischen Kommentaren.

  • JohnFoo: Du wirst mit dieser einseitigen Einstellung vielleicht noch mal richtig einfahren.

    Zu glauben, dass Java das Allheilmittel ist, ist einfach nur naiv. Es ist nicht mal eine besonders gute objektorientierte Sprache. Es war nur zur richtigen Zeit verfügbar, wo viele von C++ weg wollten. Java ist weder vom Sprachdesign her noch von seiner Bibliothek besonders innovativ. Ich mein, allein die Implementierung von Generizität ist ein Witz.

    Für die Entwicklung von Algorithmen und höheren Programmen greift man sehr oft auf funktionale Sprachen zurück. In keiner imperativen Sprache ist ein Algorithmus so klar formulierbar. Was ja auch ok ist. Da war doch so die Sache mit dem richtigen Tool für den richtigen Zweck.

    Auch wenn die Wirtschaft hauptsächlich nach populären Sprachen fragt: An der Uni lernt man eben nicht nur für die Wirtschaft (sonst könnte man gleich auf eine FH gehen).

    Dipper dipper dii dipper dii dipper dii duuu

  • Java ist eine ganz nette Programmiersprache, mehr aber auch nicht.
    Auf den Jobbörsen sind meist C#, C++ und Java gefragt, Webentwicklungszeug wie PHP (viel), JSP (weniger) und irgendein SQL-Dialekt kann auch nicht schaden..
    Ob man nur mit Java wirklich gut programmieren lernt, wage ich zu bezweifeln, als Einstieg kanns aber nicht schaden.

    Zurück zum Thema:
    Dieses Buch ist sehr, sehr empfehlenswert als Einstieg:
    http://www.javabuch.de/

  • @deutsche literatur: wenn ich die wahl hatte, habe ich mir zu studienbeginn immer deutsche buecher gekauft, das hat sich aber mitlerweilen geaendert. als negativbeispiel faellt mir zum beispiel die deutsche "verteile systeme" ausgabe ein. uebersetzungen ala "nebenlaeufigkeit" fuer "concurrency" sind doch etwas verwirrend. auszerdem ist es sicher gut sich bald daran zu gewoehnen englisch zu lesen und zu publizieren. in deutsch kann man vielleicht eine bakk.-arbeit schreiben, aber das wars dann auch schon. sonst ist die deutsche community viel zu klein bzw nicht vorhanden, das sagt zumindest dr. kopetz und ich denke er weisz wovon er redet.

    @programmiersprachen: ich denke es laeszt sich keinesfalls so generell sagen welche sprachen man im studium oder beruf braucht. java zu kennen/koennen ist sicher ein vorteil, aber ich frag mich immer wo ich war, wenn es heiszt, man braucht java so dringend wie einen bissen brot im studium. seit eprog hab ich es zum ersten mal im magisterstudium ("echtzeitprogrammiersprachen") wieder gesehen.
    zum blutigen anfangen ist es imho relativ egal womit man beginnt. hier geht es ja wirklich um grundkonzepte wie "if", "for", "was sind klassen", "was sind parameter" und dergleichen. einem anfaenger ist es wohl herzlich egal ob eine sprache jetzt "garbage collection" hat oder nicht. derartige "feinheiten" fallen einem erst auf, wenn man mehr erfahrung hat und dann sucht man sich so und so die sprache(n) seiner wahl. wenn ich eine sprache nennen mueszte, dann wuerd ich auch java zum einsteigen empfehlen. persoenlich verwende ich hauptsaechlich C und perl. was ich aber wichtig finde ist, dass man doch einmal auf "low-level" reingeschnuppert haben sollte (wenn man ein wenig erfahrung hat). erst so erkennt man wie man wirklich programmieren sollte, wie man optimieren kann usw. im beruf wird man schnell mal zu allerlei genoetigt, da ist dann (bei mir) shell-script, php, sql und a bissl VBS auch gefragt.

    Willfähriges Mitglied des Fefe-Zeitbinder-Botnets und der Open Source Tea Party.

  • Naja, das kommt auf das Bakk an - EPROG hast du auf jeden Fall, aber das wird AFAICT auch noch als C(++)-Alternative irgendwo angeboten. Eventuell hast du dann noch OOP, und das ganze ComputerGrafik-Zeug verwendet auch Java (was für mich irgendwie unverständlich ist, aber bitte). Beim bakk. technische Inf. hast du dafür weitaus mehr C: Sysprog, Microcontroller, Embedded Systems Programming.

    In der Software-Entwicklungs-Industrie wird derzeit C(++) etwas mehr gebraucht als Java, im Bereich der Web-Applikationen ist Java eher verbreitet (JBoss und so Zeugs), im Bereich von Webseiten fast nur PHP, ein bisschen Perl, Python, Ruby. Und wenn du was im embedded Bereich machst, wirst du vermutlich nur C und eventuell ein bisschen Shellscripting brauchen.

    Zum Lernen würde auch auch nicht so einfach Java oder C empfehlen. Das kommt darauf an, was du genau lernen willst, und was deine Ziele sind. Wenn du "nur programmieren" lernen willst, nimm C. Wenn du embedded Systems programmieren willst, nimm C. Wenn du Multithreading oder Echtzeitapplikationen programmieren willst, nimm Ada - oder C mit entsprechenden Erweiterungen. Wenn du OOP lernen willst, nimm Smalltalk oder Python. Wenns dir mehr um funktionale Algorithmen geht, nimm Haskell oder ähnliches. Und wenn du Webservices oder Enterprise-Applikationen mit verschiedensten Interfaces machen willst, nimm Java.

    Programmieren lernen kannst du mit jeder dieser Sprachen etwa gleich gut, es kommt eben vor allem aufs Ziel an. Und im Prinzip gehts - wie Kampi schon gesagt hat - ja vor allem um die Grundkonzepte, und da ist die Sprache vollkommen egal. Ob ich 08/15-Übungsbeispiele in C, Java, Pascal, Modula, Ada, oder sonstwas schreibe ist egal, da ist zwar die Syntax zum Teil ein wenig unterschiedlich, aber die Syntax ist ja nicht wirklich das was das Programmieren ausmacht.

  • Wie gesagt, das kommt aufs Ziel an - wenn du in den embedded Bereich willst, kannst du mit C++ nicht viel anfangen (da kannst du sogar mit Java mehr anfangen, mittlerweile gibt es ja Controller mit einer eigenen VM drauf).

    Anderenfalls ist es egal. OOP ist zwar ein nettes Konzept, kann viele Dinge vereinfachen, aber oft kriegst du eine Lösung ohne OOP schneller fertig. Wenn du aber OOP lernen willst, ist es sicher sinnvoller gleich mit einer OOP-Sprache zu beginnen, sonst blockierst du am Anfang das objektorientierte Denken.

  • Zitat von Swoncen

    Wohl eher C++. Sie sollte auf jeden Fall Objektorientiert programmieren.

    imho sollte man aber trotzdem zuerst C lernen, um die besonderheiten dieser sprache kennenzulernen, bevor man sich an C++ heranwagt

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!