I. Java programming Basics
Programmers who have no Java programming experience need to get started and read any introductory books at will. At this stage, you need to quickly master the basic java syntax and basic usage. The purpose is to "Never get started ", get familiar with Java first. It takes a short time to quickly go through the Java syntax and write more code by using tokens with guesses ".
1. Java programming ideas
: Http://www.shangxueba.com/share/p2446196.html
After some java programming experience, you need to "know why. At this time, "Java programming ideology" is a good book that gives you a clear understanding of the basic object-oriented knowledge and basic java syntax, the basic class library has a clear explanation, which can help you lay a good foundation for Java programming. The disadvantage of this book is that it is too thick and coarse. It is not suitable for modern people to learn quickly. Therefore, it is not worth reading every chapter in this book, you can focus on it in depth.
2. Chinese version of agile Java
: Http://www.shangxueba.com/share/p2564807.html
This book was handed to me by the publishing house. As soon as I got it, I had no pages on the bookcase, but I did not go over it when I sorted it out two days ago, I found this is definitely a good book! A major feature of this book is unit testing and tdd throughout the book. In the process of teaching you all kinds of important basic knowledge of Java, it has a subtle influence on your Agile programming thinking and moving towards TDD. In addition, this book is quite new. Based on the jdk5.0 syntax, it is also good to learn the new jdk5.0 syntax. This book is also very suitable for the selection of content. After all, the Java language has a huge library and can talk too much about it. The content and content selected in this book are very suitable, it will give you the least time to master the most important knowledge of Java, and cultivate excellent programming ideas by the way. This is really a rare good book.
Although the author positions this book at the entry level, I am not sure if it is a little deep in getting started. I also want to flip this book and learn it when I have time.
Ii. Advanced Java programming
To lay a good Java Foundation, more practical experience is needed. I don't think there is any shortcut. There are two books worth reading at this stage of your programming career, cultivating good programming habits and improving your code quality.
1. refactoring to improve the design of existing code
: Http://www.shangxueba.com/share/p1838195.html
This book is very popular. You don't need to introduce it much. You can flip it over in your spare time and prove it with your own practices. This book has a subtle influence.
2. Test-driven development by example
: Http://www.shangxueba.com/share/p2564819.html
This book is very thin and seems to have no burden. You can find a weekend afternoon to read the book and complete all the examples of this book in one afternoon. The role of this book is to help you cultivate TDD ideas through practice.
Iii. Path to Java architect
At this stage, we should be very skillful at using Java programming and have a good programming idea and habit. However, we may still lack the grasp of the overall architecture of the application software, this is the first step towards architects.
1. Expert one-on-one J2EE design and development
: Http://www.shangxueba.com/share/p2564816.html
This book is a famous book by Rod Johnson and is very classic. springframework was born from the code in this book. But it seems that this book does not have a Chinese translation.
2. Expert one-on-one J2EE development withoutejb
: Http://www.shangxueba.com/share/p2564818.html
This book was translated by gigix, with the participation of many industry experts. Although the signed translator is javaeye, javaeye does not contribute much, but it is truly the name of the translator.
The above two books are the classic masterpiece of rod Johnson, a must-read book for Java architects. Among the books recommended, I have read the most carefully and carefully-read books. At that time, I almost read this book with all my worries, when I was a child, I picked up the lights and went to night to read Jin Yong's martial arts novels. The content in the book and the knowledge of my own experiences confirmed one by one, and I was very incisive. After reading this book, I was able to get through the channels, the feeling of explosive growth in power.
However, after reading some comments from others, it seems that the reading experience is not so high, maybe because of the different knowledge accumulation and experience of each person. At that time, it was just that the accumulation of experience and knowledge was rich enough, but there was no systematic arrangement to form a complete knowledge system.
3. Enterprise Application Architecture Model
: Http://www.shangxueba.com/share/p1838194.html
Another famous book of Martin, but this book is extensive and not carefully read. This book seems more suitable for framework developers. For example, if you plan to write an ORM yourself, this book must be viewed. However, it doesn't matter if you don't look at the application. But if you are free, you should take a look at it carefully to see why the framework is designed like this, such a level can be promoted to the perspective of the Framework designer to think about the problem. Martin's books have always been highly respected, but he has never been as serious as Rod Johnson's books.
4. http://www.shangxueba.com/share/p56689.htmlhttp://www.shangxueba.com/share/p56689.html of agile software development principles, models and practices
: Http://www.shangxueba.com/share/p56689.html
The famous book of Uncle Bob, the classic masterpiece of agility, is quite special. It is not so much a book about the software development process as a book about the software architecture, this book takes a lot of space to talk about various object-oriented software development models. I personally think that after reading this book, you don't have to read gof's design pattern.
4. Software Development Process
Understanding the software development process is not only to improve the good programming habits of individual programmers, but also to enhance the foundation of team collaboration.
1. UML Essence
: Http://www.shangxueba.com/share/p2564824.html
In fact, UML is not necessarily related to the software development process, but it is a tool required for the software team to collaborate and communicate and write software documents. However, there are not many practical diagrams in UML. It is enough to read this book and there is no need to chew on things like the UML user guide. I would like to remind you that the Chinese translation of this book is very bad. You are advised to read the original English version if necessary.
2. Resolve eXtreme Programming to embrace change XP
: Http://www.shangxueba.com/share/p2564834.html
This is the second version of Kent Beck's masterpiece. There is nothing to say. You must read books.
3. unified software development process up
: Http://www.shangxueba.com/share/p2564837.html
In fact, up and agile are not necessarily in conflict. Up also emphasizes iteration and testing, but the document and process-driven by up are not agile. In any case, up is worth reading. After all, there are very few enterprises that really accept agility in China. They still need to arm themselves with up, even if they are wearing up XP.
4. agile modeling AM
: Http://www.shangxueba.com/share/p2564838.html
Scott Ambler's masterpiece, this book is very progmatic, tells how to be agile and up, unify agility and up, and puts forward many progmatic suggestions and practices. We can read three books, resolution eXtreme Programming Embracing Change, unified software development process, and agile modeling, to see the differences between XP and up, let's look at how am unifies XP and up, and integrates these three theories into one furnace to form its own theoretical system. Then you can write a book.
V. Software Project Management
If you are suddenly Promoted to a project manager by a leader without any project management experience, you will be confused, therefore, PMP is definitely far from quenching thirst.
1. Fast Software Development
: Http://www.shangxueba.com/share/p2564839.html
This is also a masterpiece. In this case, if you have a book in hand, you will have a senior project management adviser to give you advice, and you will no longer have to worry about your incompetency. This book is not about management theory. In actual project management, these theories do not solve problems. This book is a bit similar to "software project ideas, I listed the various problems faced by various software projects and the ideas on how to solve the problems. I just need to make some changes and find someone to take the medicine.
Vi. Summary
This list of recommended books does not list popular software framework learning books, such as struts, hibernate, spring, or Ajax books. This is because these books are easy to get out of date, and the life cycle of most of the above books is long enough, so it is worth buying and collecting them.