In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-02-23 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >
Share
Shulou(Shulou.com)06/02 Report--
Editor to share with you the list of books and websites necessary to learn Java, I believe most people do not know much about it, so share this article for your reference. I hope you will gain a lot after reading this article. Let's learn about it together.
These are the necessary books on your shelf and Web links that should be used frequently. Time is an important resource, and this article helps you avoid distractions and focus your time on the sources of information that are most beneficial to your career as a Java language programmer. Although there are as many programmers as they like, these are the best of the best collected in this article, which come from the private collection on my bookshelf and the recommendations of many Java experts.
I considered two ways to organize this list of references. I could have organized by topic areas, which may be helpful, but the list of topics will soon become impractical. Instead, I chose another approach: organize by type, namely books and Web sites.
Generally speaking, experienced veterans use Web sites to track the trend of the industry. Books, articles and papers help to keep up with the trend, but they are generally more suitable for basic learning. Highly creative books occasionally shake one or two basic things. Such books are also on this list.
One caveat is that there are a large number of books and Web sites that focus on the Java language. Your favorite may not be on this list. That doesn't mean they're bad. They're just not on this list. Maybe it's because I don't know them yet. Or maybe it's because I don't think they can be considered important resources. Not including some references is a matter of judgment, but if not, you may have to spend hours dragging scroll bars and spending thousands of dollars on books. If you, as a professional Java programmer, have some excellent reference materials in common use, be sure to let me know them. This list is being updated all the time, and those you put forward may be included.
Books
Every programmer has books that are worn out because they are often referred to as professional materials. The following books should be necessary for Java language programmers on their bookshelves. Books are very expensive, so I intend to make this list very short, limited to important books.
Thinking in Java (Bruce Eckel)
Thinking in Java, 3rd edition (Bruce Eckel; Prentice Hall PTR,2002 year)
Java programming ideas: 3rd Edition (translated by Chen Haopeng et al., Machinery Industry Press, 2005)
Eckel's book is extremely useful for learning how to make good use of object-oriented technology in the Java language environment. A large number of code examples in the book explain the concepts he introduces. The text comes from a person who doesn't think that Java technology is always the right answer, so it's quite practical. Eckel has a great deal of experience in multiple languages and solid skills in thinking in an object-oriented way. This book puts these skills into a practical Java language environment. He is also working on a new book called Thinking in Enterprise Java.
Effective Java (Joshua Bloch)
Effective Java: Programming Language Guide (Joshua Bloch; Addison-Wesley,2001 year)
Effective Java Chinese version (translated by Pan Aimin; Machinery Industry Press, 2003)
This book is the best book to understand the principles of excellent Java programming. Most of the materials can't be found in other books on Learning Java at all. For example, the chapter on overwriting equals () in Bloch is one of the best references I have ever read. He also includes practical advice in his book: replace abstract classes with interfaces and use exceptions flexibly. Bloch is the architect of the Java platform library at Sun, so he knows the language thoroughly. In fact, he wrote a large number of useful libraries in the language. This book must be read!
The Java Programming Language (Ken Arnold, James Gosling, David Holmes)
The Java Programming Language (Ken Arnold,James Gosling,David Holmes; Addison-Wesley,2000 year)
Java programming language (3rd Edition) (translated by Yu Wanrong et al., China Power Press, 2003)
This is probably the best Java primer available. It is not a standard specification, but a readable book that introduces the features of each language. This book makes a good balance between rigor and education, allowing people who know how to program to be quickly attracted to the Java language (and its rich class libraries).
Concurrent Programming in Java: Design Principles and Patterns (Doug Lea)
Concurrent Programming in Java: Design Principles and Patterns, 2nd edition (Doug Lea; Addison-Wesley,1999 year)
Java concurrent programming-Design principles and patterns (second Edition) (translated by Zhao Yong et al., China Power Press, 2004)
Not every developer needs such a detailed understanding of concurrency, and not every engineer can reach the level of this book, but there is no better overview of concurrency programming than this book. If you are interested in this, please start here. Lea is a professional programmer for SUNY, and his work and ideas on concurrency are included in the JDK 5.0specification (cited from JSR166), so you can rest assured that his advice on the effective use of the Java language is worth listening to. He is a very good communicator.
Expert One-On-One J2EE Design and Development (Rod Johnson)
Expert One-On-One J2EE Design and Development (Rod Johnson)
WROX: a Guide to J2EE Design and Development programming (translated by Wei Haiping, Electronic Industry Press, 2003)
For those who are new to J2EE, this is the only book that truthfully reflects this technology. This book is a collection of years of successes and failures, and unlike many other authors, Johnson is happy to make their failures public. J2EE is often overused. Johnson's book can help you avoid this.
Refactoring (Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts)
Refactoring: Improving the Design of Existing Code (Martin Fowler,Kent Beck,John Brant,William Opdyke,Don Roberts; Addison-Wesley,1999 year)
Refactoring: improving the Design of existing Code (Chinese version) (translated by Hou Jie et al., China Power Press, 2003)
Fowler has written several of the most popular programming books that have been published, including Analysis Patterns. His book on refactoring is the basic book on the subject. Refactoring code is a training ignored by programmers, but it is the programmer's most intuitive idea. Refactoring is to improve the design of existing code without changing the result of the code. This is the best way to keep your code clean, and code designed in this way is always easy to modify. When will the refactoring take place? When the code "smells". Fowler's book is full of examples of Java code. Many Java language integrated development environments (IDE) (including IBM's Eclipse) include Fowler refactoring, each named after his refactoring name, so it is worthwhile to be familiar with refactoring methods such as extract method.
Design Patterns (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)
Design Patterns: Elements of Reusable Object Oriented Software (Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides; Addison-Wesley,1997 year)
Design patterns: the basis of reusable object-oriented software (translated by Li Yingjun et al., Machinery Industry Press, 2005)
This is a more famous book among professional programmers, and based on the author's common nickname, it is known as the Book of the GOF. Patterns are ways that can be reused when thinking about and solving common programming problems. Learning mode is a discipline. Using patterns well (or knowing when not to use patterns) is a skill. It is wrong to ignore the pattern. All the examples in the book are expressed in C++, but the Java language was born there, making it relatively easy for Java language programmers to connect with how to implement these patterns in the Java language. Familiarize yourself with patterns and know how to use them well to make programming easier. This makes it easier to communicate with other programmers, because in general solutions to common problems, patterns are shortcuts to describe a large number of related programming concepts that collaborate with each other in the solution. Some of the more general approaches, such as the factory method, are ubiquitous, even in the Java language itself. For the topic of using patterns wisely, you can also read Joshua Kerievsky's Refactoring to Patterns, which says you can let code tell you when to implement patterns.
Patterns of Enterprise Application Architecture (Martin Fowler)
Patterns of Enterprise Application Architecture (Martin Fowler; Addison-Wesley,2002 year)
Enterprise Application Architecture Model (translated by Wang Huaimin et al., Machinery Industry Press, 2004)
Enterprise development certainly represents a bigger challenge than small, one-off projects. That doesn't mean that all the challenges posed by enterprise development are new. In fact, sometimes this development has been done before. Fowler has done a lot of these projects. His book mentions some general solutions and provides guidance on use, compromise, and options. Fowler includes familiar patterns in the book, such as the Model View Controller (MVC), and he also provides patterns that you may not know, such as the Page Controller pattern for handling specific page requests or behavior requests on Web sites. As you do with most patterns, once you have read many patterns, you will think, "I already know that pattern." Maybe so, but it's helpful to have a general expression for referencing patterns. In large projects with multiple components (developed by different people), this kind of reference is a good help.
UML Distilled (Martin Fowler)
UML Distilled: A Brief Guide to the Standard Object Modeling Language (Martin Fowler; Addison-Wesley 2003)
UML essence: a Concise Guide to Standard object languages (3rd Edition) (translated by Xu Jiafu, Tsinghua University Press, 2005)
UML is an important general visual communication language for professional programmers, but it has been overused and carelessly abused. You don't need to know much about using UML to communicate. Martin's refinement of UML provides you with the core thing. In fact, the front and rear covers provide everything you might use on a regular basis. The code for UML examples in this book is all Java code.
Test-Driven Development: By Example (Kent Beck)
Test-Driven Development: By Example (Kent Beck; Addison-Wesley 2002)
Test-driven Development (Chinese version) (translated by Cui Kai, China Power Press, 2004)
Test-first programming will revolutionize programming and help you become a better programmer. Writing tests before writing code is difficult at first, but it is a powerful skill. By writing tests first, you can make your code simpler and make sure it works from the start. (Beck practices his advocacy of test first, co-writing JUnit, the most popular testing framework in the Java language.) Beck's book is an authoritative reference, and extended Money examples are written in Java. Beck details how to think in terms of test first (which may be the first obstacle many programmers encounter).
The Pragmatic Programmer: From Journeyman to Master (Andy Hunt and Dave Thomas)
The Pragmatic Programmer: From Journeyman to Master (Andrew Hunt and David Thomas; Addison-Wesley 1999)
The way of programmer practice-- from small worker to expert (translated by Ma Vida, Electronic Industry Press, 2004)
Being a pure object-oriented developer has its advantages. In today's complex society, as a Java language developer, there are often compromises to accomplish tasks. Hunt and Thomas discussed how to accomplish a task without compromising what is really important. This is not a book about the Java language, but an important thought book for Java language developers. For example, I don't think a programmer who benefits from the advice of "solve the problem, not pass the buck" can sign his masterpiece like a proud artist.
Peopleware: Productive Projects and Teams (Tom DeMarco and Timothy Lister)
Peopleware: Productive Projects and Teams (Tom DeMarco,Timothy Lister; Dorset House,1999 year)
People (2nd Edition) (translated by UMLChina Translation Group, Tsinghua University Press, 2003)
All the other books on this list are at least somewhat related to technology. This book is not. In a sea of technical jargon and acronyms, sometimes software developers and managers forget that people make software. DeMarco and Lister remind us of this fact, as well as the reasons for this difference. This is not a book about a particular programming language, but it is a book that every Java language programmer should read. There are many other good books about how exhausted programmers make managers counterproductive, but this is the best one.
Web site
There are so many Web sites that if you want to digest the content, it will be difficult for you to visit them all in your lifetime. A detailed list of sites containing some aspect of the Java language can be ridiculously large. The following sites are reliable and real.
Sun's Java technology site
Sun's Java language site
This is the Java language master station of Sun. As a Java language developer, you will find yourself visiting this site frequently. The following links are particularly important, especially for new Java language developers:
New to Java Center
New to Java Center
New to Java Center houses many step-by-step links to Java technology resources. If you are new to the language, this is a good starting point.
Tutorials and code base
Java Tutorial
Here is the famous Java Tutorial, as well as other tutorials on various aspects of the Java language, such as Collection.
IBM developerWorks
DeveloperWorks of IBM
It may be cheeky to sell yourself, but developerWorks is a huge resource with a large number of tutorials and articles on Java language tools and techniques. Its content ranges from beginner's guide to learning the language to advanced concurrency techniques. You can search for content by topic, and then browse by type.
Apache Software Foundation
Apache Software Foundation
The Apache site is the home page for many reusable libraries (common domains) and tools that help Java developers develop. The content here is all open source, so just download what you want! Many of the most popular Java language libraries and tools, such as Struts, Ant, and Tomcat, began with the Apache project. The Jakarta zone brings together most of the emerging Java language materials.
Eclipse.org
Eclipse
There are several good Java language integrated development environments (IDE). Eclipse (from IBM) is one of the newest IDE, and it quickly becomes the primary IDE for Java language development. It's completely open source, which means it's free. This site contains a variety of references for learning how to use Eclipse effectively. There is also information about Standard Widget Toolkit (SWT). SWT is a lighter choice than Swing.
Eclipse plug-in Center and Eclipse plug-in
Eclipse plug-in Center and Eclipse plug-in
Eclipse is based on the plug-in architecture. In fact, plug-ins are the Java language development component of Eclipse. But there are almost thousands of plug-ins, from those developed by Web to those that play games in the Eclipse environment. These two sites list most of the plug-ins that can be searched. They're great resources. If you want to get something new in the Eclipse development environment, luckily there is a plug-in that may have been implemented, and you can find the plug-in you want from these two sites. Both sites allow comment plug-ins so you can know which plug-ins are good and which are worth a try.
JUnit.org
JUnit.org
Junit is a basic unit testing framework in Java language. The site contains the latest and best versions of Junit, plus a large number of other resources related to testing (in Java or other languages) at all levels (for desktop applications, Web applications, J2EE applications, etc.). If you are looking for test resources, this is the best starting point.
TheServerSide.com
TheServerSide.com
If you are (or will be) engaged in server-side Java language development, this site is an important resource. You can find articles on JBoss, J2EE, LDAP, Struts, and a host of other topics here, all of which are fully searchable. These articles are more than simply describing the features or supported libraries of the Java language. They further describe novel uses of libraries (such as using Jakarta Velocity as a rule engine instead of a template engine). They also provide continuous comments on the current state of the Java language (the current article is Java is boring written by Tim Bray). One of the better general features of the site is a matrix comparison of Java language tools and products (application servers, etc.).
Bruce Eckel's MindView, Inc.
Bruce Eckel's MindView, Inc.
Eckel has written several books on the Java language, Python and C++, and his Thinking in Java is especially helpful when I learn the Java language. It is practical and to the point, and is knowledgeable about how to think object-oriented in the Java language environment. You can download electronic versions of all his books free of charge from this site. He also wrote a lot of good articles, and he put links to all of them here (including articles on Jython, Java, and .NET comparisons, etc.).
ONJava.com
ONJava.com
O'Reilley has published some excellent books on programming languages and tools over the years. Their website that focuses on the Java language is also good. It has articles about different areas and different parts of various Java language tools (such as JDOM and Hibernate) and Java platforms (such as J2SE and J2EE). All of them can be retrieved. They have excellent articles and tutorials. The site is arranged by theme. For example, Java and XML, Java Security, Wireless Java and Java SysAdmin. The site also has links to O'Reilley Learning Lab, where you can get online references (Java language related and others). Those are not free, but many are for college certification. So you can learn skills in a convenient way and get some certification.
Java.net
Java.net community
The java.net community has multiple "communities" with topic-specific forums and articles. For example, the Java Desktop community has all kinds of materials related to Java language desktop development. The Java Patterns community, as a portal, may be interested in providing schema resources for the Java language. There is also a Java User Groups (JUG) community where you can find information about creating, joining, and managing a JUG.
The above is all the contents of the article "what is the list of books and websites necessary to learn Java". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.