There is no doubt that Java has held the title of the most popular programming language for many years ( credit stackify , codingdojo and vintaytime ). Even if you agree with the various stats, we can easily come a consensus that Java is one of the top ten most widely used language in the enterprise world and most sought-after job skill for a software developer. I am not here to argue if Java really deserves its current spot but to predict (if I may), how it would evolve in coming years. Ever since Oracle took over the command and control of JDK development since 2009, there has been skepticism over the future of Java. Luckily we had several enhancements to Java in JDK 7 and 8, which restored the confidence we all have put in Java over many years. Java as a language had its flaws and drawbacks, which other languages (old and new) tried to fill in. The real star was always JVM ( the runtime environment on which Java runs and makes it platform ind...
Refactoring is one of the best practices of Extreme programming . Even the most stable project requires occasional modification. The idea is to clean up duplication and smelly code. The principle of software entropy suggests that program starts off in a well-designed state, but as new bits of functionality are tacked on, programs gradually lose their structure. We write a small program that does a specific job well. Later we add new functionality on top of existing program, often in a way that the existing program was not intended to support. In such cases, we can either do a complete redesign or patch some work around. Redesign and rewriting existing code results in extra work, which in most cases we can’t afford. Also, we may miss existing functionality or introduce new bugs. The principle usually followed is: “If it ain’t broke, don’t fix it!”. However, if a code is made complex due to poor design choices and unnecessary constructs then it starts emanating code smell. ...