If you are an author of an internal, proprietary Java library or an external open source library, or you are one of those lucky developers who ship Java application by yourself then you should follow these best practices while naming your JAR files. These best practices are a result of the practical experience of using hundreds of Java library and application. Following these best practices will help in better management of JAR files. It's part of my other best practices articles e.g. best practices while naming variable, writing comments, overriding methods, muli-threading, JDBC, and best practices while dealing with passwords. If you are interested in learning more best practices, you can always search those articles on this blog.
In last article, I have shared 5 good data structure and algorithms books, but those were not free. After that article, I received some feedback about how about free data structure and algorithm books? Fair enough, everybody loves free eBooks, don't you? In the past, I have shared a list of free Java programming books, so I had some idea. I did some more research on internet and checked my collection as well. Fortunately, there are a couple of good Data Structure and Algorithm books which are available for free PDF download or for online reading and in this list we will see some of them. Data Structure and Algorithm is one of the most important topics for any programmer, not just for interview point of view but also about writing good programs and problem solving. A good choice of data structure can reduce the complexity of the algorithm and can improve its performance drastically.
In this part of Java programming mistakes, we will take a look at another common pattern, where programmers tend to use "==" operator to compare Objects, similar to comparing primitives. Since equality of object can be very different in the physical and logical sense, and in the case of domain objects it's mostly driven by business rules, comparing objects with "==" operator, introduces subtle bugs, which are hard to find. The difference between equals() and == operator, one of the Java classics is also asked to find out if the developer is familiar with this important concept or not. Using == operator only make sense when comparing primitives like int, or final constants like Enum. Though there is more involved in comparing two Enum, which you learn by following that link.