JavaRush /Java-Blog /Random-DE /Top 10 Programmierbücher für Anfänger
Max Stern
Level 35
Нижний Новгород

Top 10 Programmierbücher für Anfänger

Veröffentlicht in der Gruppe Random-DE
Ich habe einen Kollegen, der viele technische Interviews für zukünftige Javaisten geführt hat. Ich habe ihn einmal gefragt, was die Entscheidung, einen Bewerber ohne wirkliche Erfahrung einzustellen, bei der Auswahl unter Leuten mit annähernd gleichen Sprachkenntnissen beeinflusst. Angesichts der Marktsituation denke ich, dass diese Frage für viele von Ihnen relevant ist. Top 10 Programmierbücher für Anfänger – 1„Leidenschaft für Technologie, die Fähigkeit, die beste Option zur Lösung eines Problems zu wählen, allgemeine IT-Kenntnisse, ein Verständnis dafür, was ihn bei der Arbeit erwartet“ – das war seine Antwort. Ich habe einmal in einem Artikel die Programmierbücher für Anfänger beschrieben, die mir beim Erlernen von Java geholfen haben. In diesem Artikel werde ich mich auf Veröffentlichungen konzentrieren, die einem unerfahrenen Programmierer dabei helfen, genau die IT-Kenntnisse und das Verständnis für zukünftige Arbeiten zu erlangen und auch die Auswahl der besten Lösung zu vereinfachen. Das heißt, einen Job annehmen und dort von Anfang an die bestmögliche Leistung erbringen. Ich habe diese Liste nach meinen eigenen Vorlieben zusammengestellt und kann daher etwas subjektiv sein. Es gibt sowohl klassische Programmierlehrbücher für Studenten als auch Nachschlagewerke für Programmierer aller Generationen.

Code und Produktivität verbessern

Nur Code zu schreiben reicht nicht aus. Es ist wichtig, es gut zu schreiben, es verbessern zu können und auch zu verstehen, wie es im Allgemeinen entwickelt wird. Die folgenden Bücher für Programmieranfänger und andere haben mehr als einer Generation von Spezialisten dabei geholfen, den schwierigen technologischen Prozess der Softwareentwicklung zu bewältigen.

Pragmatischer Programmierer. Vom Gesellen zum Meister (Andrew Hunt, David Thomas)

Originaltitel: „The Programmatic Programmer“ aus „From Journeyman to Master“ von Andrew Hunt und David Thomas. Top 10 Programmierbücher für Anfänger – 2Wenn Sie dieses Buch nicht gelesen haben, sind Sie höchstwahrscheinlich wiederholt in Foren und auf speziellen Ressourcen auf Zitate daraus gestoßen. Das Bild eines pragmatischen Programmierers in diesem Buch ist so klar und idealisiert, dass ... man ihn einen Romantiker nennen kann, egal wie paradox es klingen mag. Dennoch sind die Ratschläge des Buches trotz seines fortgeschrittenen Alters praktisch und relevant. Ich weiß nicht, womit ich „The Pragmatist Programmer“ in der Welt der Programmierbücher vergleichen soll. Die nächsten Analogien dieser Welt sind das „Alte Testament“ oder ein supercooles Kochbuch. In der „Pragmatik“ ist alles sehr konkret und maximal in der Praxis anwendbar. Manchmal kommt es zur Banalität (zum Beispiel enthält der Abschnitt über effektive Kommunikation grundlegende Regeln der Geschäftsetikette), aber manchmal sind die Ratschläge aus dem Buch unersetzlich, insbesondere wenn ein unerfahrener Entwickler keinen geduldigen und aufmerksamen Mentor hat. Dies sind Tipps zur Wiederholbarkeit von Code, zum Prototyping und zur Schätzung. Oder eine Erinnerung an die Unmöglichkeit, ein perfektes Programm zu erstellen. Es gibt auch nützliche technische Punkte, die sich beispielsweise auf das Debuggen von Code, Unit-Tests oder die Geschwindigkeit von Algorithmen beziehen ... kurz gesagt, was Sie brauchen, um sich auf eine Karriere als Programmierer vorzubereiten.

Refactoring zur Verbesserung des vorhandenen Codes (Martin Fowler)

Originaltitel: Refactoring: Improving the Design of Existing Code von Martin Fowler, mit Kent Beck Top 10 Programmierbücher für Anfänger – 3Wenn Sie jemanden bitten, die besten karrierefördernden Programmierbücher aller Zeiten aufzulisten, wird jemand mit Sicherheit „Refactoring“ erwähnen. Jemand könnte sagen, dass dieses Buch veraltet ist, und in gewisser Weise wird er Recht haben. Es wurde zu einer Zeit geschrieben, als Refactoring noch keine universelle Regel war, und einige der darin enthaltenen Wahrheiten sind für angehende Programmierer von heute offensichtlich. Dennoch sind die Refactoring-Techniken darin so gut und ausführlich beschrieben (an manchen Stellen würde ich sogar sagen ausführlich), dass jeder Anfänger etwas Nützliches darin finden wird. Vor ein paar Jahren erschien eine aktualisierte Ausgabe des Buches und es wurden neue Techniken hinzugefügt, was großartig ist. Darüber hinaus sind die Beispiele in diesem Buch in Java geschrieben. Der einzige Nachteil, den ich erwähnen kann, ist die Ausführlichkeit. Dennoch empfehle ich das Buch.

Sauberer Code (Robert Martin)

Originaltitel : Clean Code: A Handbook of Agile Software Craftsmanship von Robert C. Martin. Top 10 Programmierbücher für Anfänger – 4Dieses Buch ist zwar neuer als das vorherige, hat sich aber auch zu einem Klassiker unter den Programmierbüchern entwickelt. „Onkel Bob“, wie Robert Martin in der globalen Programmiergemeinschaft manchmal genannt wird, ist einer der Autoren des Agile-Manifests sowie einiger Prinzipien der modernen „reinen“ Programmierung, zum Beispiel SOLID. Als eines der Hauptleitmotive des Buches kann man in Betracht ziehen... Empathie oder einfach eine gute Einstellung gegenüber allen, die mit Ihrem Code arbeiten müssen (einschließlich Ihnen selbst in der Zukunft). Die meisten „Clean Code“-Regeln basieren auf diesem einfachen Prinzip und dem gesunden Menschenverstand. Die meisten Regeln und Ratschläge scheinen sehr korrekt zu sein, so wie sie einem intuitiv im Kopf herumschwirren, aber es ist nicht einfach, sie klar zu formulieren. Man kann jedoch einigen Gedanken des Autors widersprechen: Er ist manchmal äußerst kategorisch. Er schreibt zum Beispiel, dass guter Code keiner Kommentare bedarf. Dennoch ist das Buch eine Pflichtlektüre.

Effektives Arbeiten mit Legacy-Code (Michael Feathers)

Originaltitel Working Effectively with Legacy Code von Michael Feathers Top 10 Programmierbücher für Anfänger – 5Das Leben hat Sie nicht darauf vorbereitet ... Nein, wirklich: Wenn Sie gerade erst lernen, können Sie sich nicht vorstellen, wie mühsam es ist, mit Legacy-Codebasen zu arbeiten wurden vermutlich vom Großvater von Bill Gates geschrieben. Dieser Code ist oft völlig anders geschrieben, als Sie es gewohnt sind, und so schlecht dokumentiert, dass Sie manchmal seinen Autor und ... finden möchten. Leider ist das Leben eines Java-Programmierers bei großen Projekten sehr oft mit Legacy-Unterstützung verbunden. Dieses Buch kann Ihnen bei den technischen Aspekten der Arbeit mit altem Code helfen, es kann Ihnen aber auch dabei helfen, mit Ihrem Schicksal klarzukommen. Und ja, ich meine es ernst. Dieses Buch wird Ihnen nützlich sein, wenn Sie ein Outsourcing- oder Produktunternehmen mit großen Projekten fest im Visier haben.

Kopf voran. Designmuster (Eric Freeman, Bert Bates, Kathy Sierra, Elizabeth Robson)

Originaltitel „Head First Design Patterns: A Brain-Friendly Guide“ von Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson Top 10 Programmierbücher für Anfänger – 6Designmuster sind die logischen Regeln guter Form, die einem in den Sinn kommen, wenn man sie nicht im Laufe der Zeit studiert ( oder nicht...) und die sich im wahrsten Sinne des Wortes zur Superkraft eines unerfahrenen Programmierers entwickeln, wenn man sich so früh wie möglich damit beschäftigt. Ja, zunächst ist es nützlich, mit einem relativ komplexen persönlichen Projekt herumzuspielen und zu versuchen, es selbst in Teilaufgaben zu zerlegen ... und schließlich das gleiche Muster zu finden. Wenn es um die Arbeit geht, bleibt jedoch nicht immer genügend Zeit für Experimente. Als ich das Praktikum bekam, wusste ich sehr wenig über Muster: Während meines Studiums bei JavaRush habe ich einfach all diese Fabriken, Singletons, Injektionen und Abhängigkeiten durchgeblättert, weil ich dachte, dass ich es bei Bedarf herausfinden würde. Es war jedoch notwendig, es sehr schnell herauszufinden, und es war das Buch „Head First. Design Patterns“ hat mir dabei geholfen. Es ist leicht geschrieben, voller Illustrationen und Humor ... Ich denke, dass die Präsentation zum Thema „Designmuster“ sehr wichtig ist: Sie kann sehr langweilig präsentiert werden, oder sie kann wie in Head First präsentiert werden. Eine tolle Ergänzung zu „Clean Code“ und/oder „Refactoring“!

Computerarchitektur und Allgemeine Informatik

Wie wichtig ist es für einen angehenden Programmierer, die Computerarchitektur zu verstehen, zu wissen, wie Betriebssysteme aufgebaut sind und wie Datenbanken aufgebaut sind? Es ist keine Tatsache, dass Ihnen dieses Wissen bei Ihrer Arbeit von Nutzen sein wird. Aber sie werden Ihnen auf jeden Fall dabei helfen, Ihre Leidenschaft für den IT-Bereich und Ihr IT-Wissen unter Beweis zu stellen. Und das Wichtigste: Wenn Sie wissen, wie alles funktioniert, können Sie Probleme besser lösen. Infos 100%. Hier sind also zwei weitere Bücher, die Ihnen helfen sollen.

Code (Charles Petzold)

Originaltitel Code: The Hidden Language of Computer Hardware and Software von Charles Petzold Top 10 Programmierbücher für Anfänger – 7Die erste Ausgabe von „Code“ erblickte die Welt bereits Anfang der 2000er Jahre, tatsächlich hätte sie aber auch früher oder später erscheinen können – und wäre dennoch relevant gewesen. Tatsache ist, dass in diesem Buch die Funktionsweise eines Computers auf einem sehr, sehr niedrigen Niveau erklärt wird, beginnend mit der Funktionsweise dieser Nullen und Einsen, und das allererste technische Beispiel ist eine Taschenlampenschaltung, die als die einfachste angesehen werden kann -Bit-Computer... Nein, Sie denken nicht, dass alles in dem Buch sehr primitiv ist. Tatsächlich ist es genau das Gegenteil... Es beschreibt Computerschaltkreise mit Befehlen, den Betrieb von Speicher und Betriebssystemen im Wesentlichen. Vielleicht habe ich erst nach der Lektüre verstanden, wie Computer funktionieren. Auch wenn sich die Architektur und der Befehlssatz des Prozessors ändern und die Speicherbandbreite zunimmt, funktionieren Computer im Wesentlichen genauso. Braucht ein Java-Programmierer dieses Wissen? Nur sehr wenige Menschen werden sie direkt bei ihrer Arbeit benötigen. Aber indirekt hat es mir bei meiner Arbeit oft geholfen, dass ich verstanden habe, wie das alles eigentlich funktioniert.

Einführung in die Informatik (Glenn Brookshire, Dennis Brilov)

Originaltitel „Computer Science: An Overview“ von Glen Brookshear und Dennis Brylow. Top 10 Programmierbücher für Anfänger – 8Dieses Buch kam mir zu der Zeit an der Universität in den Sinn, als ich die Grundlagen der Informatik studierte. Nur ich habe eine Übersetzung der sechsten Auflage erhalten, aktuell ist die 13. Auflage aktuell. Das Buch ist ein Grundkurs in Informatik, der seit vielen Jahren an Universitäten in den USA und anderen Ländern gelehrt wird. Die darin enthaltene Materialabdeckung ist sehr breit gefächert: Maschinenarchitektur, Zahlensysteme, Datenverarbeitung, Betriebssysteme, Prinzipien des Datenbankaufbaus, Datenstrukturen, Dateistrukturen und so weiter. Nicht alle Abschnitte des Buches sind gleich gut geschrieben. Die Abschnitte über Entwurfsmethoden und Datenbanken haben mich zum Beispiel einmal sehr verwirrt, aber die Abschnitte über Zahlensysteme, bitweise Berechnungen, PC-Architektur und Datenstrukturen haben mich wirklich beeindruckt. Das Coolste an dem Buch ist die große Anzahl an Übungen mit Tasten. Ein solches Buch wird neben Studenten wohl vor allem Autodidakten ohne technische Ausbildung benötigen, um Lücken zu schließen und sich ein Bild von der Informatik im Allgemeinen zu machen.

Algorithmen und Datenstrukturen. Und schon wieder ein Angriff!

Angesichts des hohen Niveaus der modernen Programmierung haben Kenntnisse über Algorithmen an Bedeutung verloren. Jetzt genügt es, die benötigte Bibliothek zu nutzen und sich nicht den Kopf darüber zu zerbrechen, wie man das Array am besten sortiert. Allerdings müssen Sie sich bei der Arbeit immer noch den Kopf zerbrechen, und zwar mehr als einmal. Erinnern Sie sich an den Punkt „die Fähigkeit, die bestmögliche Lösung auszuwählen“ aus den Anforderungen an einen unerfahrenen Programmierer? Egal, was jemand sagt, ich halte ein gutes Algorithmentraining für eine hervorragende Verbesserung, um optimale Lösungen zu finden. Deshalb geht es in den nächsten beiden Büchern um sie. Über Algorithmen.

Wir rocken die Algorithmen. Ein illustrierter Leitfaden für Programmierer und den neugierigen Aditya Bhargava

Originaltitel: Grokking Algorithms: Ein illustrierter Leitfaden für Programmierer und andere Neugierige von Aditya Y. Bhargava. Top 10 Bücher zum Thema Programmieren für Anfänger – 9Der Autor selbst schreibt zu Beginn des Buches, dass ihm Algorithmen nicht sofort einfielen, und er versuchte, „Grokking Algorithms“ so zu schreiben dass es leicht zu lesen wäre. Es ist für unerfahrene Programmierer gedacht, also für diejenigen, die „Hallo, Welt“ schreiben können und wissen, was Int, String, Loop, Branch und Array sind. Nun, es kann das Array auf dem Bildschirm anzeigen. Die erforderlichen Mathematikkenntnisse liegen in etwa auf dem Niveau der 6.-7. Sekundarschulstufe ohne jeglichen Schnickschnack. Und das ist der erste gravierende Pluspunkt des Buches. Es wird nicht versucht, sich den Leser als Mathematikstudenten vorzustellen, wie es in vielen Veröffentlichungen zu diesem Thema der Fall ist. Das heißt, wenn Sie Angst vor Mathematik und Algorithmen haben, diese bereits versucht haben zu lernen und nichts verstanden haben, ist dieses Buch in Ihren eigenen Augen perfekt für Ihre Rehabilitation. Der zweite positive Punkt ist, dass in dem Buch etwas besprochen wird, das in der Praxis durchaus nützlich sein könnte (dieses Verständnis ist sicherlich richtig). Es beginnt mit einer Erklärung des Wesens der binären Suche und ihrer Effizienz – buchstäblich an den Fingern und mit vielen Bildern. Drittens enthält das Buch viele Fragen und Übungen (Codebeispiele sind in Python, aber das ist nicht so wichtig). Ein Punkt, der für einige positiv, für andere jedoch negativ sein mag: Das Buch erhebt nicht den Anspruch, ein allumfassendes Nachschlagewerk zu sein. Nehmen wir an, von den allgemein akzeptierten Algorithmen zum Lernen gibt es hier nur zwei – den ineffizienten Einfügungsalgorithmus und den effizienten Quicksort-Algorithmus. Ich weiß nicht, warum der Autor nicht auch andere Algorithmen in Betracht ziehen sollte, etwa Blase oder Zusammenführung. Tatsächlich wird der Zusammenführungsalgorithmus im Buch erwähnt, jedoch kurz, ohne Analyse und nur im Vergleich zur Schnellsortierung. Bei anderen Themen ist alles genau gleich. Es gibt Grundlagen, die sehr gut behandelt werden, aber manchmal möchte man wirklich eine tiefergehende Fortsetzung, aber es gibt einfach keine. Mit einem Wort, dies ist ein sehr einfaches Buch, nach dem Sie höchstwahrscheinlich ein Buch finden möchten, in dem alles ernsthafter beschrieben wird. Zum Beispiel das Folgende.

Algorithmen in Java (Robert Sedgwick, Kevin Wayne)

Originaltitel: Algorithms von Robert Sedgewick und Kevin Wayne Top 10 Programmierbücher für Anfänger – 10Tatsächlich kann dieses Buch sowohl bezaubern als auch erschrecken. Es wird Sie zumindest mit seinem Umfang abschrecken... vielen Seiten und einem gewissen akademischen Charakter. Wenn Sie also keine Neigung dazu haben, Akademiker sind oder sich in Mathematik nicht sicher fühlen (Gymnasium, die einfachsten Elemente der höheren Mathematik für Ingenieure), dann ist es besser, nicht mit diesem Buch zu beginnen. Es gibt dort nicht so viele mathematische Begriffe, aber der Ansatz selbst setzt ein solches Denken voraus. Aber nach dem vorherigen Buch – warum nicht. Sie wird Ihnen einen Leitfaden geben. Das erste Kapitel fasst an einigen Stellen Java-Kenntnisse zusammen und definiert einige Datenstrukturen. Es ist besser, es selektiv zu lesen, aber es würde nicht schaden, das zweite und dritte Kapitel ausreichend detailliert zu studieren. Der Rest enthält außerdem viele interessante und ausführliche Informationen zu Diagrammen und Zeichenfolgen. Ich würde sagen, dass solche Dinge SEHR hilfreich sind, um die Programmiermentalität zu formen. Was die Präsentation angeht, hat man das Gefühl, dass der Autor ein Lehrer ist, es aber gewohnt ist, mit Menschen zu arbeiten, die größtenteils interessiert und vorbereitet sind. Seien Sie also geduldig und lesen Sie. Und auch Probleme lösen, davon gibt es hier reichlich. Auf Coursera finden Sie übrigens einen Kurs über Algorithmen, der von den Autoren des Buches erstellt wurde.

Kennen Sie Ihren Rahmen

Und zum Schluss noch ein Buch. Und wieder - nützlich.

Frühling in Aktion (Craig Walls)

Originaltitel: Spring in Action von Craig Walls. Top 10 Programmierbücher für Anfänger – 11Ein sehr berühmtes Buch mit einem ebenso berühmten Cover mit einem „Mann im Rock“, der eigentlich keinen Rock trägt. Ehrlich gesagt ist es eine sehr schwierige Aufgabe, Spring aus nur einem Buch zu lernen, selbst wenn man versucht, alles auf einmal in der Praxis auszuprobieren. Übrigens kann es äußerst schwierig sein, nach der Lektüre dieses oder jenes Kapitels zu verstehen, wie das geht. Ich habe mit diesem Buch gearbeitet, als ich ein Praktikum in einem Unternehmen absolvierte, und wenn es auf diese Weise verwendet wird, hilft es mir sehr. Darüber hinaus komme ich auch heute noch, da ich bereits als Programmierer arbeite, immer wieder darauf zurück. Kurz gesagt, Sie können sich mit seiner Hilfe einen allgemeinen Überblick über das wichtigste Java-Framework verschaffen.
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION