Monday, December 31, 2018

Top 10 Pluralsight Courses For Java and Web Developers to Learn in 2019 - Best of Lot

Since last week, I have been sharing about my 2019 learning goals and what Java programmers should learn in 2019 but I haven't shared with you how will I learn those new technologies e.g. Git, Angular JS, React JS, Spark, and Machine learning etc. Well, there are many ways to learn a new technology or programming language, 10 of them I have shared in my earlier post about how to learn new technologies but two of the best ways to learn any new technology is by using online courses and reading books. I have been learning from books since my childhood but ever since I have tried learning from online courses, I found them more interactive and useful.

Saturday, December 29, 2018

Does Standard Column Width of 80 On Coding Make Sense in 2019?

One of the oldest coding practice is to keep line width 80, and many of us follow it blindly but have you ever thought why we have this practice in first place? I believe it was to make your code more readable in the age of small monitors so that whole content can fit in the screen, or it might have originated from the age of punch card, which was used to be 80 column wide. This sounds reasonable when we think about those old days but do you think this rule makes sense in 2019? We are now living in the age where most of the developers have got large monitors, which can show up-to 180 characters, doesn't this is wastage of precious monitor space? It also makes your code unnecessary long, then it actually is.

Thursday, December 27, 2018

Top 5 Big Data and Apache Spark Courses for Java Developers to Learn Online in 2019

Slowing economy and the recent trend of job cuts in India and elsewhere have made many programmers anxious about their job security. I receive a lot of emails and Facebook chats about suggestions to improve IT skills to remain competitive and marketable. So, if you are in the same boat, you can learn Big Data and IT Automation to remain marketable. These two skills are in great demand and will generate a lot of jobs in future. I have suggested many Java developers around the world to learn Big Data Technologies e.g. Apache Spark to give their CV a new boost. Since it's not easy to learn a new technology and at a certain age, you feel a lot of restriction and resistance from both your body and mind. In order to overcome that I found a combination of books and online courses works great.

Monday, December 24, 2018

10 Things Java Programmers Should Learn in 2019

It's 24th December now and only a few days have left in the year 2018. It's a good time to look back and retrospect what you have achieved in 2018 and what you could have done better. This will help you to create your goals for 2019. As a programmer, our biggest challenge is to keep ourselves up-to-date. Technology changes very fast and you will see a new version of programming language and framework coming to every couple of year. This year has plentiful changes with keeping up-to-date with new Java version every 6 months, Spring 5, Spring Security 5 and Spring Boot 2, it's probably the busiest year in terms of changes for Java developers.

10 Tools Every Software Developer/Programmer should know

Every trade has their tools and software development is no different. A good programmer or software developer generally know their tools better than others and also have access to more powerful and advanced tools than a average programmer, but there are certain tools which you expect every software developer should know and this list is all about such tools. In this list, I am going to share 10 essential tools, which I believe every programmer or software developer should know and know well.

Saturday, December 1, 2018

Top 5 Free Java Courses for Beginners to Learn Online - Best of Lot

We all love free resources, don't you? There was a time when I buy a lot of books when I was preparing for my engineering entrance exam but I only ended up buying books not reading them. Afte that I changed my habit to first try to read a book on loan or trying free resource and only buying when I really need. When I started my programming journey, mostly I learn from free resources e.g. free courses and books and there I developed the passion to collect free resources as well.  I agree that paid resources are often better than free resources e.g. books and courses but if you are just starting your journey, it's the free resource which you should try first. Once you have some background and interest, you should consider buying a proper book or courses for comprehensive learning.

Wednesday, November 28, 2018

Top 5 books to learn Agile and Scrum for Programmers - Best of lot, Must Read

When I started my career, it was all waterfall model. You try, fail, and then with every version you get an improved version of a software. I pretty much used to this model of software development until I was introduced to Agile development methodologies in my next company. I was confused about Agile as some people say its Scrum and Sprint, other ways its XP and Kanban etc. The confusion lasted for a long time because I was afraid of asking questions (afraid of being perceived as dumb and someone who wastes time on meetings) and only getting information in bits and pieces and I wasn't good at searching books at that time. From that experience, I learned that, when you have confusion and want to learn more about a new technology, nothing is better than a book or online training courses to start with.

Tuesday, November 20, 2018

How to convert float to long or int data type in Java?

Yesterday one of the new joiner Java Trainee Engineer from our team came to me and asked about how do you I convert a float variable into long or int data type? He was storing some values coming from another system in the database and only wanted to store value before the decimal point e.g. he was getting "3.144" and he wants to convert it to "3" to store into database. The good thing was that API was returning a float primitive value and you don't need to convert a String to float etc. I asked him whether he needs routing or not, which he wasn't sure but it turns out that he didn't need that. I explained to him how to do that and that's what you will find in this article as well. In short, there are 3 ways to convert a float value into long or int in Java, but we will only focus on long data type part.

Sunday, November 4, 2018

How to Remove Leading/Trailing White Space from a String in SQL Server? LTRIM, RTRIM Example

Unlike Java, Microsoft SQL Server 2008, 2012, 2014,  and even the latest version don't have a built-in trim() function, which can remove both leading and trailing space from the given String. But, SQL Server does have two built-in functions LTRIM() and RTRIM() to remove leading and trailing space. The LTRIM() function removes space from the left side of String so you can use it to get rid of leading space, while RTRIM() removes white-space from the right side of String so you can use it to delete trailing space. You can even combine these two methods to create your own TRIM() method in SQL SERVER e.g. LTRIM(RTRIM(column)) will act as a TRIM() method because it removes both leading and trailing space.

Saturday, November 3, 2018

The best Course to Learn Spring Security 5 for Experienced Java Developers

If you are a Java Spring developer and working with Spring Security then you may be familiar with the "Learn Spring Security" course by Eugen Paraschiv of Baeldung.com. It is one of the most advanced and comprehensive courses on Spring Security and the best part of this course is that Eugen always keeps it up-to-date with new Spring Security release. Now that version Spring Security 5 is out - he has updated his course to use new features of Spring Security 5. Btw, there is some really cool new functionality coming in Spring Security 5 for the reactive programming model, and many other improvements and new features. But, the most important one is the release of OAuth2.

Tuesday, October 23, 2018

How to do group by in Excel - COINTIF function example

The Microsoft Excel is one of the best tools to analyze data and I think every programmer should be familiar with this tool. There are a couple of genuine reasons for why I am asking you to learn and master Excel. Since most of us work in Windows and Excel is almost always available, knowing how you can use it for your data analysis and reporting can really make a difference. Managers, Directors, Clients, and People at a higher level just love reports and once your experience grows, your responsibility also grows and you need to create many reports or work on Excel sheet generated by others. It automatically becomes part of your life, especially if you are progressing on project management space.

Friday, October 12, 2018

How to use jQuery Class and Id Selector to find DOM elements

One of the best things about jQuery is there selectors, which gives the jQuery enormous power to find and select DOM elements so easily. If you are coming from JavaScript background then you might love those classical methods to find DOM elements like getElementById() and getElementByName(). They have served very well in the old days of JavaScript coding,  but once you start using jQuery selector, which is quite similar to CSS selector, I am sure you will forget them. Searching and finding HTML elements using jQuery selectors are natural, intuitive and super easy and that's why I love them.

Friday, October 5, 2018

How to deal with ConcurrentModificationException in Java? Beware while removing elements from ArrayList in loop

One of the common problem while removing elements from an ArrayList in Java is the ConcurrentModificationException. If you use classical for loop with the index or enhanced for loop and try to remove an element from the ArrayList using remove() method, you will get the ConcurrentModificationException but if you use Iterator's remove method or ListIterator's remove() method, then you won't get this error and be able to remove the element. It's an unwritten rule in Java that while looping through the list, you should not add() or remove() elements until the collection supports fail-safe Iterator e.g. CopyOnWriteArrayList, which operate on a copy of list rather than the original list.

Wednesday, October 3, 2018

Top 5 Free Data Structure and Algorithm Courses for Java and C Programmers

Data Structure and Algorithm is one of the essential topics for programmers, both to get a job and do well on Job. A good knowledge of data structure and algorithm is the foundation of writing good code. If you are familiar with essential data structures e.g. array, string, linked list, tree, map and advanced data structure e.g. tries, AVL trees etc and know when to use which data structure and compute the CPU and memory cost of your code in terms  Even though you don't need to write your own array, linked list or hashtable, given every major programming SKD provides them e.g. JDK or C++ STL library, you will need to understand them so that you can use them in right place. Using a right data structure can drastically improve the performance of an algorithm.

Book Review - Clean Architecture by Uncle Bob Martin - Must read for Programmers

Hello Guys, today, I am very excited to talk about a new book (Clean Architecture: A Craftsman's Guide to Software Structure and Design) from one of my favorite author of programming books, you guessed it right, Uncle Bob. The same Uncle Bob (aka Robert Martin) who brought you the Clean Code and Clean Coder has been at it again. It's been a long time since I last read an Uncle Bob and somehow I wasn't aware of this book. It comes to me as a surprise yesterday when one of the colleagues mentioned it and I didn't take time to realize that I need to buy and read this book. I just cursed myself that why I didn't know about this book before, it is still new but given I love to read his books, it's just a miss for me.

Friday, September 28, 2018

Top 4 Books to learn Oracle PL/SQL Programming - Best, Must Read

In last summer, I had to work on a Java project which was using Oracle database at their backend. The project was a mix of Java code with Oracle PL/SQL stored procedures, where Stored procedures were quite big and complex to read. I had not worked on Oracle for a couple of years and almost forget whatever I knew before. So, to revise, update and re-learn and I looked over some of the books and online courses like The Complete Oracle SQL Certification Course which helped me a lot. In my quest to revise and re-learn Oracle SQL, I also find lots of their used books on Oracle PL/SQL which are both interesting to read as well as provides a great wealth of information to any programmer.

Wednesday, September 26, 2018

How to Remove all Unused imports in a Java file - Eclipse Shortcut

How to remove all unused imports in Eclipse
Eclipse IDE gives warning "The import XXX is never used" whenever it detects unused import in a Java source file and shows a yellow underline. Though unused import in Java file does not create any harm, it's unnecessary increase length and size of Java source file and if you have too many unused imports in your Java source file, those yellow underline and Eclipse warning affect readability and working. In my last post on Eclipse, we have seen some Java debugging tips on Eclipse and in this post, we will see Eclipse shortcut to remove all unused imports in Eclipse. There are many options to tackle this problem e.g. you can collapse import section of code in Eclipse or you can altogether remove all unused imports from Java file, and we'll see them in this short tutorial.

How to find Length of String in SQL Server? LEN() Function Example

One of the most common task while writing SQL queries or stored procedure is to find the length of String. Since most of the columns are VARCHAR, you often need to find the length before taking any action. In Java, you can find the length of String by using the length() method but how about SQL Server? How will you find the length of String in Microsoft SQL Server in general and Microsoft SQL Server 2016 in particular? Well, you can use the LEN() function to find the length of a String value in SQL Server, for example, LEN(emp_name) will give you the length of values stored in the column emp_name. This method exists from SQL Server 2008 onwards which means you can use this function in SQL Server 2012, 2014, 2016 and latest version of Microsoft SQL Server i.e. SQL Server 2017.

Tuesday, September 25, 2018

How to Solve UnrecognizedPropertyException: Unrecognized field, not marked as ignorable - JSON Parsing Error using Jackson

While parsing JSON string received from one of our RESTful web services, I was getting this error "Exception in thread "main" com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "person" (class Hello$Person), not marked as ignorable". After some research, I found that this is one of the common error while parsing JSON document using Jackson open source library in Java application. The error messages say that it is not able to find a suitable property name called "person" in our case, let's first take a look at the JSON we are trying to parse, the class we are using to represent the JSON document and the error message itself.

Error Message:
Exception in thread "main" com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "person" (class Hello$Person), not marked as ignorable (4 known properties: , "id", "city", "name", "phone"])

Sunday, September 23, 2018

Top 5 Database design and Modelling Books for Programmers and DBAs of All level

The database design and modeling are one of those topics which rarely gets the attention they deserve, especially at the start of the project, but once things have gone out of hand then everybody talks about that. Comments like - this database are designed poorly, it is not performing well, you cannot add a new column easily etc becomes very common. The most problem with database design is that it is mainly done by application developers e.g. Java or C++ developer who knows SQL but they are not the expert of how to design tables and schema. The Database admins or DBAs know database and SQL better than application programmers but they focus on the admin part of the database rather on application part e.g. designing tables and relations between them, which is left to the application developer.

Saturday, September 22, 2018

JUnit Testing Tips - Constructor is Called Before Executing Test Methods

Even though almost all Java programmers either use JUnit or TestNG for there unit testing need along with some mock object generation libraries e.g. Mockito, but not everyone spends time and effort to learn subtle details of these testing libraries, at least not in proportion of any popular framework like Spring or Hibernate. In this blog post, I am sharing one of such detail, which has puzzled me a couple of years ago. At that time, though I had been using JUnit for a significant time, I wasn't aware that code written inside the constructor of Test class is executed before each test method.  This behavior of JUnit has caused, some of my test to failed and putting hours of investigation in my code, without realizing that this is happening because of JUnit is initializing the object by calling constructor before executing test method annotated with @Test annotation.

Saturday, September 15, 2018

Top 5 Java SE 8 Certification Books - Best of Lot Must Read

If you are preparing for Oracle Certified Associate, Java SE 8 Programmer, also known as Java SE 8 Programmer I or OCAJP8 exam and looking for some good resources e.g. books, study notes, and mock exams then you have come to right place. I have been sharing some of the most useful resources for Java 8 certification aspirants ever since the exam was launched. You can find a lot of this exam and essential resources in this blog. To continue that tradition, I am going to share some of the best books to crack the Java SE certification i.e. OCAJP 8 (1Z0-808)  and OCPJP 8 (1Z0-89). Yes, you need to pass two exams to become Java 8 certified professional. The OCAJP is also a prerequisite for OCPJP exam, which is a professional level exam. Alternatively, if you already hold a Java certification e.g. Java SE 6 or before then you can take one of the upgrade exams e.g. 1Z0-810 to become Java SE 8 certified professional.

Wednesday, August 15, 2018

20 Java and Programming Quotes to Motivate Yourself

I always have a strong interest in knowing great peoples of my field like software development and programming. Knowing about them, following them, and reading about them not only gives you immense knowledge but also the motivation ,you need to excel in whatever you are doing. It's the motivation, not knowledge that will propel your career. Knowledge is almost useless without motivation because just knowing is not enough, you need to apply that knowledge, and without motivation, you just can't do that. There are times when programmers also feeling tired and bored. These are the times when you spent hours constantly looking at the computer screen, clicking here and there, surfing the net without doing anything.

Sunday, July 29, 2018

Top 5 Java Performance Tuning Books for Experienced Programmers - Best of Lot, Must read

You might be thinking, why should a Java developer read a book on Performance tuning? When I first faced this question a long time back, I thought I will do it later, but I never got back to that for a long time. I realize my mistake of having a lack of knowledge on memory measurement, JVM tuning, and finding bottleneck only when I faced serious performance and scalability issues on our mission-critical, server-side financial application written in Java. It's true that when you really need it you learn most, but those times are not the best time to learn fundamentals, in fact, those times are to apply and correct your misunderstanding.

Friday, July 27, 2018

Does Oracle's Java Certifications like OCAJP, OCEJWCD, or OCPJP helps in Job and Career?

Being the author of a Java blog and a certified Java programmer, I receive lots of questions about the usefulness of Java certifications like SCJP, now known as OCJP or OCPJP. Questions like, does getting a Java Certification helps to land a job, or does certified Java developer earn more or gets better offers, are quite common to Java developers, especially freshers. In this post, I will try to answer a few of these question based on my own experience as a Java blogger and a certified Java developer. Well, I did my first Java Certification, SCJP (Sun Certification for Java Programmers) along back when SCJP 1.4 was hot and after scoring 100% on that I did two more Java certifications i.e. my SCWCD (Sun Certification for Web Component Developer) and SCMAD (Sun Certified Mobile Application Developer). 

Thursday, July 26, 2018

How to do Pagination in Oracle Database - SQL Query With Example

Many time we need SQL query which returns data page by page i.e. 30 or 40 records at a time, which can be specified as page size. In fact, Database pagination is a common requirement of Java web developers, especially dealing with the largest data sets.  In this article, we will see how to query Oracle 10g database for pagination or how to retrieve data using paging from Oracle. Many Java programmer also uses display tag for paging in JSP which supports both internal and external paging. In case of internal paging, all data is loaded into memory in one shot and display tag handles pagination based upon page size but it only suitable for small data where you can afford those many objects in memory.

Wednesday, July 25, 2018

2 Books to Prepare Oracle Java Certification Exams - OCA and OCP Java SE 6,7, 8 OCPJP 8

There was a time when Sun Certification was very hot and programmers feel proud of being Sun Certified Java Professional(SCJP). After Oracle took over Sun in early 2010, it changed names of all the examination from SCJP to OCPJP or OCJP, and now OCA and OCP for Java SE 7 and Java SE 8. I see there is a lot of confusion among certification nowadays, but essentially they are of the same level at previous SCJP. Since Java gets new language feature with every new release, subsequently a new certification title is introduced. I am not agreed with upgrading your Java certification with every release, it doesn't make much sense to me, but many programmers prefer to get certified and keep it updated.

Sunday, July 22, 2018

How to setup JNDI Database Connection pool in Tomcat - Spring Tutorial Example

Setting the JNDI Database Connection pool in Spring and Tomcat is pretty easy. Tomcat server documentation gives enough information on how to setup connection pool in Tomcat 5, 6 or 7. Here we will use Tomcat 7 along with spring framework for creating a connection pool in Tomcat server and accessing them in Spring using JNDI code. In our last article, we have seen how to setup database connection pool in Spring for core Java application which doesn't run on a web server or application server and doesn't have managed J2EE container. but if you are developing a web application than its better to use server managed connection pool and access them using JNDI. Spring configuration will be generic and just based on JNDI name of Datasource so it will work on any J2EE Server e.g. Glassfish, WebLogic, JBoss or WebSphere until JNDI name is same. 

Monday, July 2, 2018

Which Programming Books Would You Buy if 100$ is Given to Spend?

Hello Guys, it's time to take a hypothetical question in Javarevisited. I love books and I have so many in my library and on my phone but this time, I am asking for your recommendations. Which programming book, would you love to buy, if you are given 100$ to spend? I know, when it comes to buying, people want to the worth of their money, and that's why I am posting this question to you guys. Suppose you are looking some books in a bookstore and suddenly salesman comes and say, at this particular minute, we are giving you 100$ FREE to buy any programming book. Now you just have 10 minutes to complete your purchase and take away those awesome Java books absolutely for FREE, what are the books you are going to buy?

Saturday, June 30, 2018

Top 8 Free Java Programming Books, EBooks and PDF for Beginners and Experienced Programmers

Who doesn't like free stuff? Well, I do like and many Java programmers like me simply love free Java books, eBooks, and PDFs. Fortunately, the Internet is full of free books and eBooks but unfortunately, many of them are of not good quality. Most of the eBooks which are freely available either are sample chapters of popular Java programming books or they are simply old and out-of-date. In my last article, I have shared a lot of such books and the feedback was that most of them, even though they are good in the past, have simply not up to the mark. The search goes on and while browsing the net a couple of days back I hit the Jackpot when I found these free Java books from OReilly.

Friday, June 29, 2018

Google Dart Hello World Example - A Java Like Programming Language to Create Web, Android, and iOS Applications

Google Datt is a general-purpose programming language from Google and used to build web applications, mobile applications, and the Internet of Things (IOT).  It's most popular application is in Flutter framework, which is Google's mobile app SDK for crafting high-quality native interfaces on iOS and Android in record time. If you haven't tried it yet then it's a good time to try it and see how much it offers to a programmer and whether it is suitable language to replace JavaScript or not. As a Java Programmer, my first impression of Google dart is great. It looks quite familiar with Java my favorite programming language and this motivates me to write this hello-world example in Google Dart and execute it, run it and see how it works.

Thursday, June 28, 2018

How to Map a Network Drive to Windows Machine - net use Command Example

Mapping network drive in Windows 10 or other versions of Windows operating system e.g. Windows 7  or Windows 8 is much easier and faster by using the command line than by doing it on Windows Explorer. If you have been working in Windows environment with a bunch of Windows Server 2016 or 2012  servers and your job requires frequent access, copy or paste from the local machine to those remote machines than mapping them as a network drive is the best option. You can use mapped network drive as any other folder which makes the job of copy paste very simple. Though windows provide multiple ways to map a network drive, I prefer to use command line i.e. "net use" command to map my windows network drives.

Saturday, June 23, 2018

How to delete a key value pair from a HashMap during Iteration in Java - Example tutorial

Suppose you have a Map or Dictionaries like HashMap or Hashtable, which contains key-value pairs like books and their prices, and you want to delete all books whose prices are greater than 40 USD, how do you that in Java? This is one of the most common scenarios while developing Java application and many Java programmer, will say that they will iterate over Map and check each entry and then use the remove(Object key) or remove(Object key, Object value) methods from java.util.Map to delete any mapping where the value is greater than 40 USD. Though the approach is right, the answer is wrong.

Friday, June 22, 2018

Top 5 Soft Skill and Career Development Books and Courses for Programmers

Most of the software developers, programmers, and coders spend a considerable amount of their time and energy on learning technologies which get obsolete in few years e.g. a new framework or a new programming language but they neglect something more important e.g. soft skills. Unlike technical stuff, soft skills will not only serve you good in your job and career but also in your life and it won't get obsolete as quickly as the new web application development framework you have just learned. Similarly, most of us put a lot of effort to get a job but after that, we don't put much effort to grow on that job, the result is many programmers and software developer stuck in their career.

Wednesday, May 30, 2018

Top 5 Free Agile Courses for Programmers and Software Engineers - Best of Lot

Technology is changing at a rapid pace and market conditions, tough competition, and time-to-market are some of the biggest concerns for today's organizations, especially for technology companies. In order to adapt this fast-changing environment, most of the companies are now using the Agile model of development, testing, and project management. This enables the organizations to efficiently cope with changes and deliver faster and that's why for a programmer or an IT professional, a solid knowledge of Agile methodologies and framework is important. It doesn't matter whether you know the Waterfall model of development or not but it does matter whether you have worked in an Agile environment or not. In order to educate programmers about Agile, I have shared some of the books to learn Agile in past and today I am going to share some of the free online Agile courses you can take to learn Agile methodologies at your own pace.

Tuesday, March 27, 2018

Finally, Java 10 has var to declare Local Variables - JDK 10 New Feature

Hello guys, In this series of new features of Java 10 articles, today,s I am going to talk about probably the most popular and most useful, the introduction of var keyword (well, it's not really a keyword but I'll you later about it) in Java. If I am not wrong, this feature was supposed to come on Java 9 but dropped later. Finally, Java also has var keyword to declare variables which allows you to declare a variable without their type e.g. instead of doing String str = "Java" you can now just say var str = "Java". This may not sound much gain when declaring String or an int variable but consider about complex types with generics, this will surely save a lot of typing and also improves the readability of code.

Monday, March 5, 2018

3 Books to Learn Eclipse IDE for Java JEE Programmers - Best of Lot

In order to become a good Java developer solid knowledge of Eclipse IDE, or whatever IDE you use, like Netbeans or IntelliJIDea, is a must. Java has been blessed with excellent tooling which turbo-charge application development. IDEs or Integrated Development Environment allows you to code, run, test, and debug from just one tool. They are an immense productivity booster. Since I have started Java development coding in Notepad, TextPad, and JCreator, I know how it feels having the power of IDEs with you. There are three big IDEs in Java world, Eclipse, NetBeans and IntelliJIDea. First two are free, and the third one requires the license. I use Eclipse, and it's also the most popular IDE in Java world.

Sunday, February 18, 2018

How to fix Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory in Java

This error means your code or any external library you are using in your application is using the SLF4J library, an open source logging library, but it is not able to find the required JAR file e.g. slf4j-api-1.7.2.jar hence it's throwing Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory. If you look at the error, you will see that it's saying it is not able to find the class org/slf4j/LoggerFactory or org.slf4j.LoggerFactory. The package name indicates that it's part of SLF4j, hence you need SLF4j JAR files e.g. slf4j-api-1.7.2.jar in your application's classpath. So, go ahead and download the JAR file from SLFj website or from Maven Central repository and restart your application.

Monday, February 12, 2018

Top 5 Java Design Pattern Courses for Experienced Java Developers

Hello guys, today, we'll talk about design patterns and some of the best online courses to learn design patterns in Java from scratch. If you are wondering what is a design pattern and why Java developers should learn them? then let me give you a brief overview. Design patterns are nothing but a tried and tested solutions of common programming problems, for example, the creational design patterns deal with the problems of object creation. They exist from a long time but made popular by famous Gang of four of Erich Gamma, John Vlissides, Ralph Johnson and Richard Helm in their classic 1994 book Design Patterns: Elements of Reusable Object-Oriented Software, also known as GOF design patterns. This book documented 24 design patterns which are reusable to solve common programming problems. 

Thursday, February 8, 2018

5 Good Books to Learn Unit testing, JUnit and TDD in Java

Unit testing is a very, very important thing to learn to adapt. I would say this is the single most practice in my book, which differentiates an excellent programmer with a professional programmer. It's one way you can see how disciplined a programmer is? It's also the best way to write clean code; a code which can stand the test of time, a code which is flexible enough to accommodate future changes and a code which you don't afraid while changing. Despite several efforts of promoting unit testing by programming community and emphasizing unit testing by many notable programmers, it's still one of the lacking practice.