Recommended Java learning Bibliography

Source: Internet
Author: User

I. Basic
1. Thinking in Java. The first entry is to establish a correct concept.
2. I have not read core Java yet. This book is closer to practice, more API introductions, and more frequent updates.

Ii. Advanced
1. When you are familiar with the syntax and API, you need to know the best practices and traps.
2. Java puzzlers introduces some Side corners that you may not have noticed through puzzles. It is also good for reading interesting books.
3. Deep Dive into the Java Virtual Machine (JVM), which has a general translation but cannot be read. It is best to read it in conjunction with the latest JVM specifications.

Iii. Specific fields
1. network programming:
(1)
O 'Reilly's Java NiO is recommended by many people. It is basically a more detailed instruction document for the API. Many of O 'Reilly's Java series are like this.
(2) I recommend fundamental networking in Java to teach you how to do Java Network Programming and introduce a lot of background knowledge, I even introduced various best practices, network programming models, and differences between Java sockets on different platforms.

2. Concurrent Programming:
(1) Java concurrency in Practic, which must be read in the concurrency field.
(2) Java concurrent programming: design principles and patterns, also works by Doug Lea.
(3) Java threads, getting started.

3. Web programming: I have not been in touch with this project for a long time, so I will not recommend it. If you are interested, you can add it.

Iv. Pattern and Design

1. design pattern, classic of gof.
2. The latest version of design patterns should be available. I personally think it is more suitable for getting started.
3. Head first design patterns for easier entry books.
4. Enterprise Application Architecture Model
5. Analysis Mode-reusable Object Model
6. The pattern-oriented software architecture seems to have translated three volumes in China, which is absolutely classic. Unfortunately, the translation is poor.
7. refactoring-improving existing code design. To write code, you must read it.
8. Reconstruction and Model

V. Methodology
1. Agile Software Development
2. Test-driven development, you do not have to use TDD, but you must learn to do unit testing.
3. agile Java can also be used as an entry point for Java.
4. Fast Software Development
5. Object-Oriented Analysis and Design, required for OO design.
6. Unix programming art opens your eyes.

6. Outside of Java

1. UNIX network programming, learning network programming is essential.
2. Introduction to ace in the upper and lower volumes of C ++ network programming, but the introduction to various modes is very valuable.
3. Joel software, programming Culture
4. Mythical man-month and man-piece
5. A book inspired by "fruitful programmers.
6. programmer Cultivation
7. Construction and interpretation of computer programs
8. Introduction to algorithms, which can be used as reference books
9. in-depth understanding of computer systems
10. Long Shu, compilation principles, explained in Java in the latest version.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.