Heim  >  Artikel  >  Java  >  Wie man ein Top-Java-Programmierer wird

Wie man ein Top-Java-Programmierer wird

巴扎黑
巴扎黑Original
2017-06-26 10:22:391381Durchsuche

Der beste Weg zu lernen ist, Bücher zu lesen

„Der beste Weg zu lernen, ist, Bücher zu lesen“, das ist meine erste Erfahrung, nachdem ich alleine gelernt und einige Erfahrungen gesammelt habe . . Persönlich denke ich, dass das Lesen von Büchern zwei Vorteile hat:

1. Bücher, die veröffentlicht werden können, müssen wiederholt durchdacht, poliert und rezensiert worden sein. Aus professioneller Sicht ist der Wert eines guten Buches daher weit mehr als andere Informationen

2. Es ist praktisch, den Code selbst in das Buch einzugeben

"Der beste Weg, sich nach der Lektüre des Buches wieder zu verbessern, besteht darin, einen verwandten guten Blog zu lesen Beiträge.“ Persönlich denke ich, dass dies der zweite Schritt des Lernens ist, da ein Buch oft Hunderte von Seiten hat. Gute Blog-Beiträge sind einige Zusammenfassungen und Verfeinerungen nach dem Lesen und Studieren. Es ist sehr nützlich, um den Lerninhalt zu sortieren. Natürlich , hier geht es nicht um Ihre eigene Lernmethode, ich werde nicht mehr darüber sprechen.

Viele Programmierer verspüren oft den Drang, Bücher zu lesen, wissen aber nicht, welche Bücher sie lesen sollen. Im Folgenden werde ich Java-Programmierern einige gute Bücher empfehlen (der Autor jedes Buches wird fett und rot hervorgehoben). , darunter die meisten Bücher, die ich normalerweise lese. Es kann als kleine Zusammenfassung und Reflexion der Bücher angesehen werden, die ich normalerweise lese.

Es gibt viele Bücher auf dem Markt, die Designmuster erklären. Obwohl ich zuvor gesagt habe, dass das Lesen von Büchern das Beste ist, empfehle ich diesen Blog für Freunde, die sich für Designmuster interessieren. Die Erklärung von Designmustern durch diesen Blogger ist meiner Meinung nach zu 90 % problemlos und es lohnt sich, sie zu lernen:

1 Erläutern Sie die Definition des Designmusters

2. Erklären Sie die Struktur dieses Designmusters mit Bildern und Texten

3. Schreiben Sie die Implementierung dieses Designmusters in detaillierter Codeform

4. Ergänzungsinhalt

5. Erklären Sie die Vor- und Nachteile des Designmusters

Sind die Wissenspunkte, auf die wir achten und die wir über ein Designmuster erfahren, nicht direkt oben?

Ich möchte die Internetnutzer jedoch daran erinnern, dass es viele Möglichkeiten gibt, dasselbe Designmuster zu schreiben. Dies bedeutet nicht, dass nur eine bestimmte Schreibweise das Designmuster ist. Nehmen wir zum Beispiel das Adaptermuster, wir müssen darauf achten, was das Adaptermuster ist und nicht, wie das Adaptermuster geschrieben wird Zum Adaptermuster ist es nicht das Adaptermuster. Denken Sie daran: Wenn Sie Designmuster lernen, werden Sie auf jeden Fall ein tieferes Verständnis für die im Code verwendeten Designmuster haben.

"Detailliertes Verständnis der Java Virtual Machine: Erweiterte Funktionen und Best Practices von JVM"

Wie man ein Top-Java-Programmierer wirdWenn Sie damit nicht zufrieden sind Ich bin nur ein Java-Programmierer, der schreiben kann, wenn ... sonst ... ich Ihnen ein paar Beispiele geben möchte: </p><p>1. Verstehen Sie den zugrunde liegenden Funktionsmechanismus von Java-Code </p><p> 2. Leistungsprobleme lokalisieren </p><p> 3. Leistungsoptimierung des gesamten Systems </p><p> 4. Verschiedene seltsame Online- und Offline-Probleme lösen </p><p> 5. Fortgeschrittenere Level Ja, maßgeschneiderte a Virtuelle Maschine, die für Ihr Projekt geeignet ist</p><p>Dann ist die Java Virtual Machine eine Technologie, die Sie lernen müssen. Der Autor von „Ausführliches Verständnis der Java Virtual Machine: JVM Advanced Features and Best Practices“ ist Zhou Zhiming. Dieses Buch kann als das beste Buch über Java Virtual Machine bezeichnet werden, das ich in den letzten sechs Monaten geschrieben habe Lesen Sie dieses Buch mindestens 5 Mal. Neben diesem Buch über virtuelle Maschinen in China gibt es tatsächlich noch einige andere Bücher, die ich auch gekauft habe, aber auf den ersten Blick sind viele Inhalte auch im Buch „Vertiefendes Verständnis von Java Virtual Machines“ enthalten. Erweiterte JVM-Funktionen und Best Practices“. </p><p>Erwähnenswert ist auch, dass das Buch „In-Depth Understanding of Java Virtual Machine: JVM Advanced Features and Best Practices“ in elektronischer Form verfügbar ist und durch Online-Suche heruntergeladen werden kann. Interessierten Freunden wird jedoch empfohlen, das Buch zu kaufen und zu lesen. Die heruntergeladene elektronische Version ist im Vergleich zur neuesten überarbeiteten Version von „Ausführliches Verständnis der Java Virtual Machine: Erweiterte Funktionen und Best Practices“ der JVM. Es gibt viele neue Ergänzungen des Autors. Es gibt keinen Wissenspunkt. </p><p><strong>

Wie man ein Top-Java-Programmierer wirdAlle Java Virtual Machines folgen der Java Virtual Machine-Spezifikation. Es gibt Dutzende von Java Virtual Machines Die im Buch „Detailliertes Verständnis von Java Virtual Machines: JVM Advanced Features and Best Practices“ besprochenen virtuellen Maschinen zielen nicht auf eine bestimmte virtuelle Maschine ab, sondern werden aus der Perspektive der Java Virtual Machine-Spezifikationen erläutert. </p><p>Die meisten Java Virtual Machines, die wir täglich und sogar kommerziell nutzen, sind Suns HotSpot. Sie können es sehen, indem Sie die Befehlszeile mit cmd eingeben und den Befehl „java -version“ verwenden. Wenn Sie tiefer verstehen möchten, wie einige Details der virtuellen Maschine basierend auf der Java Virtual Machine-Spezifikation implementiert werden, können Sie das Buch „HotSpot Practice“ von Chen Tao lesen. Da der Quellcode von HotSpot jedoch in C/C++ geschrieben ist, müssen die Leser über sehr gute Kenntnisse in C/C++ verfügen. Wenn Sie mit diesen beiden Sprachen nicht sehr vertraut sind, ist die Lektüre dieses Buches möglicherweise keine große Hilfe Du. </p><p>Abschließend möchten Sie bei Interesse vielleicht zuerst ein openJDK online herunterladen. Der Quellcode von HotSpot ist darin enthalten. </p><p><strong>

Wie man ein Top-Java-Programmierer wirdDieses Buch gehört oft zu den zehn Büchern, die Java-Programmierer unbedingt lesen müssen, aber ich persönlich empfehle dieses Buch nicht sehr. </p><p>Der Autor von „Java Concurrent Programming in Practice“ ist Brian Goetz. Ich habe dieses Buch ungefähr zweimal gelesen: </p><p>1 Weniger Code </p><p> 2. Mehr Erklärungen und weniger Übung </p><p>Ich denke, das könnte das Merkmal von Ausländern sein, die Bücher schreiben, weil Java in nordamerikanischen Ländern (Kanada, USA) entwickelt und gepflegt wird. Daher sind Ausländer mit Java nicht vertraut. Alle Aspekte des theoretischen Wissenssystems werden sehr klar und gründlich beherrscht. Öffnen Sie dieses Buch und lesen Sie, was Multithreading, Deadlock, Wettbewerb, Thread-Sicherheit usw. ist. Alle Aspekte von Wissenspunkten werden in viel Text erklärt, was den Leuten das Gefühl gibt, sehr langweilig und schwer zu verstehen zu sein . Die Leser haben erhebliche Fortschritte gemacht. Ich habe dieses Buch zweimal gelesen und es hat die Bedeutung von zehn Zeilen auf einen Blick. Ich werde mich auf die Orte konzentrieren, die mich interessieren. </p><p>Auf jeden Fall ist es als Buch, das oft zu den zehn Pflichtbüchern für Java-Programmierer gehört, jedem zu empfehlen. </p><p><strong>„Java Multi-Threaded Programming Core Technology“ </strong></p><p><img src=

Wie man ein Top-Java-Programmierer wirdDies ist das einzige Buch, das ich nicht gekauft habe. Ich bin zum ersten Mal in meinem Blog-Beitrag „Java Code Optimization (Langzeit-Update)“ auf dieses Buch gestoßen. Damals sagte ich, dass ich es kaufen wollte, aber ich hatte keine Zeit dafür Ich bin in den letzten zwei Monaten in die Buchhandlung gegangen, schade, ich werde in Zukunft auf jeden Fall Zeit finden, dieses Buch zu kaufen. </p><p>Der Autor von „Effective Java Chinese Edition“ ist Joshua Bloch. Er ist der Chefarchitekt von Google und ein super technischer Experte, haha. Da ich dieses Buch nicht gelesen habe, kann ich nichts dazu sagen, aber gemessen an der Beliebtheit dieses Buches und dem Hintergrund seines Autors (noch eines: Dieses Buch ist auch ein Buch, das von Dr. James Gosling, dem Vater von Java, empfohlen wurde). Ich glaube, das muss ein gutes Buch sein, das es wert ist, gelesen zu werden. </p><p>Guter Code ist das, was jeder Java-Programmierer anstreben sollte. Es ist nicht so, dass das Schreiben eines guten Codes die Leistung verbessert, verglichen mit dem Schreiben eines schlechten Codes. Die Lesbarkeit des Codes kann viele potenzielle und unbekannte Probleme vermeiden und die zeitaufwändige Wartung vermeiden, die durch Probleme verursacht wird, nachdem der Code online ist – dies ist im Hinblick auf Zeitaufwand, Arbeitskosten und Risikokosten sehr hoch. </p><p><strong>

Wie man ein Top-Java-Programmierer wird

Ich kann dieses Buch in einem Wort zusammenfassen: vollständig. Es ist wirklich umfassend, einschließlich HTTP, DNS, CDN, Static, Jetty, Tomcat, Servlet, Spring, MyBatis usw. Es deckt ein breites Wissensspektrum ab, ist aber nicht wie ein Buch, das sich auf ein bestimmtes Thema konzentriert Wissenspunkt Die Erklärung ist sehr ausführlich, und ich denke, dass dieses Buch versucht, einige der Insider-Geschichten der von Java Web verwendeten Technologien kurz zu erklären, damit die Leser ein rationales Verständnis der Technik erhalten Insider-Geschichten zu diesen Wissenspunkten.

Obwohl für jeden Wissenspunkt nicht viel Platz vorhanden ist, werden die wichtigsten Punkte im Wesentlichen abgedeckt. Es ist ein Buch, das wirklich lohnend ist. Wenn Sie mehr über die technischen Details dieser Technologien erfahren möchten, müssen Sie entsprechende Bücher kaufen oder die Informationen selbst online überprüfen. Es fühlt sich an, als würden Sie versuchen, neue Ideen anzuziehen, oder als würde ein Meister Sie hineinführen, und Sie übe es selbst.

"Grundprinzipien und Fallanalyse der technischen Architektur großer Websites"

Wie man ein Top-Java-Programmierer wirdEin Wort, um dieses Buch zu beschreiben, großartig; zwei Worte, um dieses Buch zu beschreiben, sehr großartig; drei Worte, um dieses Buch zu beschreiben, sehr großartig. Haha, okay, wenn ich weiter rede, denken andere vielleicht, dass ich ein Troll bin. </p><p>Der Autor von „Grundprinzipien und Fallanalyse der technischen Architektur großer Websites“ ist Li Zhihui, ein ehemaliger technischer Experte von Alibaba. </p><p>Die meisten Java-Anwendungen werden heutzutage im Web verwendet. Jede größere Webanwendung muss also ein verteiltes System sein. Wie entsteht aus einer kleinen Website eine große Website? Wie halten Sie Ihre Website sicher? Verteilte Systeme nutzen Caches. Welche Caches gibt es? Was ist bei der Verwendung des Caches zu beachten? </p><p>Alle Wissenspunkte zur verteilten Verteilung spiegeln sich in diesem Buch wider. Es ist einfach, es ein- oder zweimal zu lesen und zu verstehen Notizen. Sie wissen, was los ist. Nachdem Sie es noch ein paar Mal gelesen haben, wird sich Ihr Verständnis für den Vertrieb definitiv vertiefen. Und es enthält nicht nur verteiltes Wissen, sondern schreibt auch auf sehr bodenständige Weise, wie man ein guter Architekt wird. Tatsächlich denke ich, dass dies nicht nur für Leser gedacht ist, die Architekten werden möchten, sondern auch, um den Lesern etwas zu vermitteln Vorschläge, wie Sie Ihre Meinung besser äußern, wie Sie andere dazu bringen, Ihrer Stimme mehr Aufmerksamkeit zu schenken, wie Sie die Vorteile anderer erkennen und viel daraus gewinnen. </p><p><strong>

Wie man ein Top-Java-Programmierer wirdZeng Xianjie, Autor von

Ein Teil des Inhalts dieses Buches überschneidet sich mit dem vorherigen Buch „Kernprinzipien und Fallanalyse der technischen Architektur großer Websites“ von Li Zhihui, wie z. B. die Entwicklung verteilter Systeme, CDN, CAP-Theorie und BASE-Theorie. usw. Dies zeigt auch, dass es sich um verteilte Systeme oder den Schwerpunkt einer großen Website handelt. Es ist nicht schlecht, sie erneut zu lernen.

Der wichtigste Punkt, der in diesem Buch hervorgehoben werden soll, ist das Wort Middleware. Seine wichtigste Rolle sollte die Entkopplung und Reduzierung der Abhängigkeit zwischen Modulen sein wird reduziert und jeder kann seine eigenen Funktionen unabhängig entwickeln. Dies kann auch als Ziel und treibende Kraft der Softwareentwicklung bezeichnet werden.

Daher basiert ein Teil des Inhalts dieses Buches auf Middleware und erläutert ausführlich verschiedene Kenntnisse über Middleware und JMS. Es eignet sich für Leser, die mit verteilten Systemen vertraut sind und etwas über Middleware recherchieren möchten. .

„Von Paxos zu ZooKeeper verteilten Konsistenzprinzipien und -praktiken“

Wie man ein Top-Java-Programmierer wird„Von Paxos zu ZooKeeper verteilten Konsistenzprinzipien und -praktiken“, Autor Ni Chao, Alibaba-Ingenieur. </p><p>Dieses Buch ist ein Buch, das ich kürzlich studiert habe. Es gehört zur Kategorie der verteilten Komponenten und ist natürlich etwas ausführlicher ist auch mein persönliches Interesse. Wenn Sie ein hervorragender Website-Architekt, technischer Leiter eines Unternehmens usw. werden möchten, müssen Sie dieses Wissen natürlich beherrschen. </p><p>Dieses Buch beginnt mit der grundlegenden Theorie verteilter Systeme, spricht über den Paxos-Algorithmus und führt ihn schließlich Schritt für Schritt in Zookeeper ein. Natürlich ist es für mich derzeit nicht bequem, weitere Meinungen zu äußern, da ich den Paxos-Algorithmus im zweiten Kapitel dieses Buches noch nicht verstanden habe (der Paxos-Algorithmus ist tatsächlich etwas schwer zu verstehen und nicht leicht zu verstehen). , und die folgenden Kapitel wurden noch nicht gelesen. </p><p>Wenn das Unternehmen, in dem Internetnutzer arbeiten, Zookeeper verwendet und Sie sich für Zookeeper interessieren und seine Prinzipien studieren möchten, ist dieses Buch die beste Wahl. </p><p><strong>„Lernen Sie MySQL 5.6 von Grund auf“ </strong></p><p><img src=

Wie man ein Top-Java-Programmierer wird

Das Spring-Framework ist so gut gemacht und seine Funktionen sind so leistungsstark, dass viele Entwickler nur Spring kennen und nicht wissen, was eine Factory, ein Singleton und ein Agent ist (meine echte Erfahrung in andere interviewen). Dieses leistungsstarke Framework muss über eine sehr komplexe Implementierung verfügen. Dies führt zu Problemen, sobald Ihr Programm Spring verwendet. Es kann ein Fehler sein, es kann eine Ausnahme sein, es kann sein, dass das Ergebnis der Programmausführung nicht Ihren Erwartungen entspricht und so weiter . Manchmal werden Sie verwirrt sein, außer Informationen online zu prüfen oder andere zu fragen.

Das Studium des Quellcodes von Spring ist meiner Meinung nach eine gute Möglichkeit, dies zu lernen:

1. Nachdem Sie die interne Implementierung des Frameworks verstanden haben, können Sie die Initiative ergreifen, um Probleme zu lösen , und Sie müssen sich nicht auf andere verlassen

2. Die interne Implementierung des Spring-Frameworks verwendet viele Designmuster und gute Code-Designideen. Dies wird Ihr Code-Schreiben und Ihr Verständnis von Designmustern erheblich verbessern 🎜>

3. Das Studium des Spring-Frameworks wird Ihre Fähigkeit, Code zu lesen, erheblich verbessern. Ich glaube, dass der Quellcode eines anderen Frameworks für Sie nicht schwierig sein wird, solange Sie klar lernen können, wie Spring intern implementiert ist 🎜>

Alles in allem denke ich, dass die Fähigkeit, Code zu lesen, einer der größten Unterschiede zwischen einem gewöhnlichen Programmierer und einem guten Programmierer ist. Ersterer wird nur das verwenden, was andere geschrieben haben, während letzterer es nicht nur gut verwenden kann , sondern auch genau wissen, wie die unterste Ebene der von anderen geschriebenen Dinge umgesetzt wird, kann Probleme leicht lösen, wenn sie auftreten.

Spring-Quellcode, ich persönlich empfehle das Buch „Eingehende Analyse des Spring-Quellcodes“. Wenn Sie es wirklich gründlich studieren und den Spring-Quellcode klar aufschreiben möchten, befürchte ich, dass es drei oder vier sind Bücher sind nicht genug. Der Autor hat auf fast 400 Seiten sein Bestes gegeben. Es ist nicht einfach, die Implementierung des Spring-Quellcodes zu erklären ihnen ein tieferes Verständnis der Spring-Implementierung.

Postscript

Die oben genannten sind einige gute, lesenswerte Bücher, die ich Java-Entwicklern empfehle. Aber es gibt keine Java-Grundlagen oder Java-Tutorials in diesen Büchern. Es ist nicht so, dass ich es nicht empfehlen würde, aber es ist mehrere Jahre her, seit ich die grundlegende Java-Technologie selbst gelernt habe, also habe ich alles vergessen, was ich gelesen habe Ich empfehle nicht verantwortungslos jedem einige Bücher, die ich selbst nicht gelesen habe.

Achtung Studierende, die Java lernen! ! !

Wenn Sie während des Lernprozesses auf Probleme stoßen oder Lernressourcen erhalten möchten, können Sie gerne der Java-Lernaustauschgruppe beitreten: 299541275 Lassen Sie uns gemeinsam Java lernen !

Das obige ist der detaillierte Inhalt vonWie man ein Top-Java-Programmierer wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn