HTML

10 Top Programming Languages of 2019 By Salaries

Since last a couple of the week, I have been doing some research about what to learn in 2019 when I stumbled about StackOverflow's Developer Survey. It's one of the best surveys for software developers, which provides useful insights about programming and IT world. One of the things I really like about this survey was its several lists like the list of top 10 programming languages and the most loved frameworks by programmers, but the one I found most useful was the list of top paying technologies. This is a great list and allow you to choose what you can learn in 2019 to go to the next level in your career in terms of both financial and career growth.

Top 10 Data Science and Machine Learning Certification Courses from Udemy, Coursera, and Pluralsight - Best of Lot

If you work in the technology field today like you are a programmer or software engineer then I am sure you have heard about terms like Data Science, Machine Learning, Deep Learning, Artificial Intelligence etc. They are the latest technologies which are impacting every single sector just like IT does it when it comes the first time. It doesn't matter if you are working for a bank or insurance sector, airspace or defense, all fields were impacted by IT and in near future, they will be impacted by machine learning and artificial intelligence. If you are wondering, let me give you a brief overview. Machine learning is all about training machines to do the job which was only possible by humans before, for example seeing a photo and recognizing what is the object like a car, a human or a cucumber.

Difference between first level and second level cache in Hibernate

The main difference between first level and second level cache in Hibernate is that the first level is maintained at the Session level and accessible only to the Session, while the second level cache is maintained at the SessionFactory level and available to all Sessions. This means, you can use the first level cache to store local data, i.e. the data which is needed by the Session, and you can use the second-level cache to store global data, i.e. something which can be shared across sessions. This is also one of the frequently asked Hibernate Interview questions and accessible in both telephonic rounds as well as on face to face interview, in both fresher and experienced level interviews.

Top 5 Courses to learn System Design and Software Architecture in 2019- Best of Lot

Software design or System design is one of the tricky concepts to master. You can quickly learn a programming language like Java or Python but creating software using that programming language is a totally different thing. That's where software design and coding skills comes to rescue. It's actually an art to structure your program, design your modules, specify boundaries and interactions with other parts of the system so that they are easier to read, maintain, and flexible to change. It's one of the most essential skills for a software developer but often gets ignored. If you look for an online course to learn Software design and architecture, you won't find many, forget about good ones.

Difference between a List and ArrayList Reference Variable in Java?

Someone who is just starting with Java programming language often has doubt about how we are storing an ArrayList object in List variable, what is the difference between List and ArrayList? Or why not just save the ArrayList object in ArrayList variable just like we do for String, int, and other data types. Well, the main difference between List and ArrayList is that List is an interface while ArrayList is a class. Most importantly, it implements the List interface, which also means that ArrayList is a subtype of List interface. In Java or any object-oriented language, supertype of a variable can store an object of subtype.

5 Free Linux Courses for Programmers and IT Professionals to Learn Online

Linux is one of the most popular operating systems to run server-side applications. I have seen almost all Java applications running on Linux barring a couple of them which runs on Windows as service. If you take out standalone apps like IDEs or tools, most of the real-world Java applications run on Linux, e.g. payment gateways, trading systems, and other financial applications. That's why it's very important for any programmer, IT professional, or a developer to learn and understand Linux, both the operating system, as well as the command line.

Top 10 Spring MVC and REST Annotations with Examples for Java Programmers

Hello guys, welcome to my third article on exploring essential annotations from the Spring framework, the most popular framework for Java development. In the first article, I have shared some of the most useful Spring Framework annotations, which were based upon Core Spring functionalities like dependency injection, inversion of control, and configuration, and in the second article, we have learned about important Spring Cloud annotations like @EnableConfigServer, @EnableEurekaSever, and @EnableDiscoveryClient. Now that you know those essential Spring annotations it's time to move towards Spring MVC and REST, one of the most used parts of Spring Framework.

Top 10 Online Courses to learn Data Structure and Algorithms in Java Programming - Best of Lot

Hello guys, In the past, I have shared a lot of useful resources like books and tutorials to learn Data Structure and Algorithms in Java. I have also shared a lot of Data Structure and Algorithmic interview questions like this and their solutions in Java, but I have constantly got queries about excellent courses to learn Data Structure and Algorithms in Java. Even though the topics are completely independent with the programming language, Java developer definitely likes the online courses which teach Data Structure and Algorithms in Java and that's why my recent post about best algorithms courses, which includes algorithms courses from JavaScript and Python didn't impress my readers.

How to use Queue Collection in Java? An example Tutorial

The JDK provides an implementation of several data structure in Java collection framework, e.g., ArrayList is a dynamic array, LinkedList represents a linked list, HashMap represents a hash table data structure, and Queue interface represent queue data structure. Btw, If you are not familiar with data structure itself, then you can also see Introduction to Data Structures & Algorithms in Java, an excellent course to start with the essential data structure in Java. The Queue data structure allows you to process elements in the first in first out order, and that's why it is also known as a FIFO data structure. In order to provide first in primary out functionality, it allows you to insert data at one end and delete data from other ends, also known as consuming data. If you need to process objects in the FIFO order, you can use a Queue to store them.

How to write a Generic method in Java

A method is called generic method if you can pass any type of parameter to it and it will function the same e.g. it allows the same logic to be applied to different types. It's known as a type-safe method as well.


1) You can declare Generic methods not only on Generic or parameterized class but also on regular classes which not generic.

2) The type declaration like <T> should come after modifiers like public static but before return type like the void, int, or float. Here is an example of a generic or parameterized method declaration

public static <T> void swap(T a, T b){

}

Top 5 Free Core Spring, Spring MVC, and Spring Boot Courses for Beginners to learn Online

I have been sharing a lot of resources e.g. books and courses recently and when I published my list of Top 5 courses to learn Spring and Hibernate, many of my readers asked about a similar list of free courses to learn Spring Framework like Core Spring, Spring MVC, Spring Security, and Spring Boot. That request was always back of my mind but I couldn't get time to put together a list, which I can share with you guys, but today is the day. In this list, I have compiled some of the best online free courses to learn Spring Framework from scratch, online at your own pace. You can not only learn core Spring like the framework which provides dependency injection, but also Spring MVC, the most important framework for a Java Web Developer, Spring Security, and Spring Boot to take your career to next level.

Top 10 Free Java Courses for Beginners and Experienced Programmers

The Internet is full of useful resources and no matter what you want to learn there is something useful available for free. You just need to commit your time and effort. But at the same time, it's difficult to choose in the huge sea of free tutorials and courses on the internet. If you are not careful, you will spend most of your time browsing and changing courses without learning anything. That's where a curated list helps. Curation is my hobby and passion. I love to read books and courses which allows me to curate useful resources and share with you guys.

Eclipse Netbeans Keyboard Shortcut Mapping for Java programmer

If you are a Java developer who has been using Eclipse for Java development, but you need to use Netbeans for your current project due to various reason,, then this article is for you. Whenever we transition between tools, we need the equivalent of one into other. For example, if you are Eclipse power user who is used to Ctrl + Shift + R and Ctrl + Shift + T then as soon as you start using Netbeans, you miss those shortcut. One thing to keep your productivity up is to quickly find the equivalent shortcut in a new tool, e.g., in Netbeans if you are switching from Eclipse or vice-versa. In this article, I am going to share the Netbeans equivalent of 10 useful Eclipse shortcuts for Java developers. You will benefit if you have to use any of these IDEs.

7 Linux cURL command Examples for Testing RESTful Web Services from Command Line

The curl or cURL command of Linux is a very powerful and versatile command which allows you to send sophisticated HTTP request right from your Linux command line window. You can use the cURL command to test your RESTful Web Services by sending GET and POST request, doing authentication, saving a cookie in the file etc. The curl command is, in fact, the go-to tool for many Java and Spring developers working in web application and consuming data from the secured RESTful Web Services, but you can also use it test your simple REST Web APIs without security. I have used it many times to check if our Web service is up or not, or is there any error while accessing those services.

Top 5 Courses to Learn Git in 2019 - Best of Lot

There is no doubt that Git and Github have become standard source control and code repository for software developers. There was a time when multiple version control rules the world like CVS, SVN, VSS, Mercury, and TFS but slowly and for better, everything has converged to Git. Now, almost 70 to 80% programmer uses Git for version control and Github repository, both public and private for storing their source codes.  When it comes to using a source control tool like SVN or CVS, most of the programmers use them using IDE like from IntelliJIDEA or Eclipse and they are hardly familiar with the command line. This is particularly true for old source control software like SVN and CVS but Git & Github has changed that culture a bit.

Top 21 Java HashMap Interview Questions and Answers

The java.util.HashMap is one of the workhorses of JDK. Along with ArrayList, it is one of the most used classes from Java's collection framework. There is hardly a real-world Java project, where I haven't seen the use of HashMap. It is an implementation of hash table data structure and it's not a surprise that HashMap is so useful, as someone has rightly said, "if you could have just one data structure, make it a hash table". The hash table data structure allows you to search for a value in O(1) time if you have key. In Java, there are several implementations of hash table data structure exists like Hashtable, ConcurrentHashMap, LinkedHashMap, etc but HashMap is your general purpose map.

Top 5 Free Course to Learn Bash and Shell Scripting in Linux Online

Hello guys, the importance of Linux is well known but what many programmers don't know about how to write shell scripts to make most of it.  Some of them even not familiar with various Linux shell like bash, csh, or ksh, which further limit their ability. If you don't know bash is a UNIX shell and command language which is also a default login shell for many Linux system and Mac OS. It provides the ability to write scripts to do things programmatically.  Shell scripting is an important skill to become an efficient developer or programmer. It allows you to automate trivial tasks which otherwise takes away your valuable time. It also allows you to do thing quickly.

Difference between Correlated Subquery and Self-contained (non-correlated) subquery in SQL

Hello guys, today, I am going to talk about one of the common SQL concepts of subqueries, a query inside another query. There are two types of subqueries in SQL, correlated subquery and self-contained subquery, also known as nested, non-correlated, uncorrelated or simply a subquery. The main difference between them is, self-contained subqueries are independent of the outer query, whereas correlated subquery has a reference to an element from the table in the outer query. In other words, In the case of the nested subquery, both primary and subquery can run independently. But, in the case of the correlated subquery, you can not run them individually because subquery refers to rows from the outer query.

How to make HTTP Request from a Java Program - Example Tutorial

If you are thinking is it possible to send an HTTP request from a Java program and if yes, how to send a simple HTTP GET request in Java, then you have come to the right place. In this article, I'll show you how you can use the HttpURLConnection class from java.net package to send a simple HTTP request in Java. But, first let me answer your first question, is it possible to send HTTP request in Java? Yes, it's possible and you can send any kind of HTTP request e.g. GET, POST, PUT, DELETE, HEAD, or PATCH. The java.net package provides a class called HttpURLConnection, which can be used to send any kind of HTTP or HTTPS request from Java program.

Top 5 Free Big Data Courses to Learn Hadoop, Spark Online - Best of Lot

If you want to learn Big Data technologies in 2019 like Hadoop, Apache Spark, and Apache Kafka and you are looking for some free resources e.g. books, courses, and tutorials then you have come to the right place. In this article, I am going to share some of the best free online courses to learn Hadoop and Spark from Udemy and Pluarlsight at your own pace. I personally like to start with FREE resources before I have enough knowledge to choose the right book or enroll in a little expensive course. It's also my passion to surf web to find great free resources and share with you guys.

Can you add a non-abstract method on an interface in Java?

Well, prior to Java 8, it wasn't possible to add non-abstract methods in Java but nowadays you can add non-abstract static, default, and private methods in Java interface. The static and default methods were supported as part of interface evolution in Java 8 and you can add private methods on an interface from Java 9 onwards. Since long, many Java programmers feel that there is no real use of an interface, well that's completely wrong, given how interface allows you to write generic, decoupled code, most of those sentiments comes from no implementation on the interface.

Top 5 Free Courses to learn Nodejs in 2019 - Best of lot

Node JS has completely changed the way JavaScript is used for development. Earlier JavaScript was considered as a client-side language because it runs on a browser and mostly used for client-side validations, animations, and interaction. Node.js takes that to the next level by allowing JavaScript to run on a server-side, which means you can now write JavaScript applications which can execute without a browser. Node JS uses Google Chrome's execution engine and asynchronous processing to do this. All you need to is include node.js script in your application, and you are ready to create server-side applications in JavaScript, which wasn't possible until a few years back.

Top 10 Spring Framework Annotations for Java Developers

There is no doubt that Spring framework is one of the most popular Java frameworks and it has made the life of Java developer easy by providing some awesome features in the last 15 years. Spring uses dependency injection to configure and bind your application together but it doesn't force you to implement one of its interfaces. This allows you to code POJO (plain old Java objects), a class with methods and attributes to do most of your stuff. Then the questions come, how do Spring provides those magical features if it doesn't ask you to implement their interface, well they use annotations and many of them. You will find some of the most common annotations in this article, which is must for a Java developer to work with Spring.

Top 5 Free courses to Learn CSS and Bootstrap in 2019 - Best of Lot

Bootstrap is one of the most popular front-end libraries which provides a customizable template of HTML, CSS, and JS for creating a modern and responsive website. All the nice website you see these days with large fonts and slick form fields are built using Bootstrap. If you want to learn Bootstrap and looking for some good online courses then you have come to the right place. In this article, I am going to share some of the awesome Bootstrap courses which are also free and you can use them to kick-start your journey with the Bootstrap framework. If you are interested in modern web development this is the framework you must learn this year.

Top 5 Spring Framework Books for Java developers (Includes Spring Security and Spring Boot) - Best of lot

Spring framework is one of the most popular frameworks in the Java world which used to develop Java application, both core Java, and web application. It is also one of the most job oriented skill for Java developer, hence many beginners and intermediate Java programmers try to learn Spring framework by their own. Though there are some good Spring training courses available online, books are still the most popular and preferred way to learn Spring frameworks like Spring core, Spring Boot, Spring MVC, Spring Batch or Spring Security.  I often receive queries for Spring book recommendations e.g. which Spring book is good for beginners, or which Spring book is good for intermediate and advanced developers, which book should I read to learn Spring boot, Spring Cloud, Spring Batch or Spring security etc?

Top 5 Free Courses to Learn Jenkins, Docker, and Kubernetes in 2019 - Best of Lot

Hello guys, you might have heard about DevOps and all the attention it is getting now. The DevOps is a new phenomenon and there is a mad race among senior developers to become a DevOps engineer. Well, I am not one of them as my passion is for becoming a software architect but I have certainly spent some time learning DevOps just to increase my knowledge of the field as I strongly believe in the phrase, jack of all and master of one :-). In DevOps world, tools matters a lot and whole of the DevOps phenomenon to create an automated pipeline for delivering a quality software heavily relies on cleaver uses of tools like Maven, Jenkins, Docker, Kubernetes, and others.

Is it Possible to take Spring Professional v5.0 Certification without training course?

Just until a couple of years ago, It wasn't possible to take Spring Professional certification without a mandatory expensive training course from Pivotal, but from 10th May 2017 onwards, you can take Spring Certification without training course. Yes, you read it correctly, it's now possible to become Spring certified developer without spending USD 3200 on a mandatory Spring training, like the Core Spring training. For years, Pivotal, company behind Spring framework ensured that a Java developer can only get a Spring Professional certification by first going to into a 4-day training run by Pivotal and its partner around the world.

Top 5 Free Docker Courses for Java and DevOps Engineers - Best of Lot

If you are an application developer working in Java or C# or any other language and wants to become a DevOps engineer or someone who wants to learn Docker then you have come to the right place. In this article, I am going to share some of the free Docker courses you can use take online to learn Docker by yourself. These courses are great for both beginners and intermediate developers who have basic ideas about Docker. If you don't know what is a Docker and how it works then let me give you a brief introduction. Before starting just look at the Docker's logo which is a whale carrying containers, does that strike something? Well, if you add this image with the name Docker you might think about shipping companies, which carry containers from one part of the world to another.

How to use PreparedStatement in JDBC Java? An Example

PreparedStatement is used to execute specific queries which are supposed to run repeatedly, for example, SELECT * from Employees WHERE EMP_ID=?. This query can be run multiple times to fetch details of different employees. If you use PreparedStatement like above than database assist in query preparation, which is faster and more secure. Such kind of queries are compiled, and their query plans are cached at database side to every time you execute it, you will get a faster response as opposed to using simple queries via Statement object, like SELECT * from Employees WHERE EMP_ID + emp_id.

Top 10 Free Courses to Learn Algorithms and Data Structure in 2019

Algorithms and Data Structure are two of the most fundamentals and important topics from Computer Science which is used everywhere in software development. I strongly believe that a good knowledge of these two topics are also key to become a better programmer because a person who has a good understanding of algorithms and data structures can make thoughtful choices and write programs which can handle changes better and perform well. They are also important to crack coding interviews at top tech companies like Google, Microsoft, Amazon, Facebook, and Apple, which puts a lot of emphasis on candidate's ability to use existing data structure and algorithms to solve complex problems they have never seen before.

A complete Guide to Remote debugging a Java application in Eclipse

The remote debugging of Java program is an ultimate tool in the arsenal of a Java developer, which is often become the last and only tool to investigate a bug on a Java application running on remote host e.g. on Linux server or Windows server. Almost all major Java IDE provides remote debugging like NetBeans, Eclipse, and IntelliJ IDEA, but I mostly use Eclipse for Java coding and so it's my preferred tool to remote debug a Java program. In order to set up remote debugging in Eclipse, you need to do a couple of tasks e.g. you need to start your JVM with debugging parameters or arguments and then you need to create a "remote debug configuration" in Eclipse IDE itself.

Top 5 Free Courses to Learn C# in 2019 - Best of Lot

Many people underestimate the power of C# and never think highly of it when they talk about programming languages, but the truth is that C# is one of the popular programming languages of today's world, just behind JavaScript, SQL, and Java on StackOverFlow's Developer Survey for last a couple of years. There are a lot of jobs and opportunity available for experienced C# developers. It's one of the important languages for developers working with Microsoft technologies like Windows and SQL Server. It is also one of the most popular programming languages for developing desktop GUI, surpassing Java Swing completely in last a couple of years. I have seen many big investment banks switched from Swing to C# for their GUI development work.

Top 5 Spring Cloud Annotations Every Java Developers should Learn

If you are developing Java application for Cloud then you should learn Spring Cloud, a great framework and extension of popular Spring framework which can help you to develop a cloud-native Java application. Spring Cloud provides several necessary services required for a cloud-based Java application like configuration management, service discovery, circuit breakers, intelligent routing, micro-proxy, a control bus, one-time tokens, global locks, leadership election, distributed sessions, cluster state etc. On top of that, it builds on the Spring framework so it automatically provides the essential features like dependency injection and inversion of control, which results in loosely coupled and easy to test Java application.

Top 5 Free HTML and CSS Courses to Learn Frontend Web Development in 2019 - Best of Lot

HTML and CSS are two pillars of web development, they are used to create web pages you see every day. HTML provides the structure to your web page and CSS provides them the style to look better. If you want to become a front-end web developer or web designer then a good knowledge of HTML and CSS is a must. Even though modern day web development is all about framework and library e.g. Angular and React, you still need to know HTML and CSS to understand what's going on and troubleshoot any issue you face while developing a web application. Btw, JavaScript is another pillar of web development but we'll not discuss this article. I have already shared some good books and courses to learn JavaScript before

15 People Java Developers Should Follow on Twitter

If you are passionate about Java and would like to follow Java bloggers into Twitter then here is my list of 15 people you can follow on Twitter to keep yourself up-to-date and engage in Java world. These people regularly share the latest things in Java, JVM, Spring, Hibernate, and other Java technology. By following them, you will not only know about their latest work but also what's happening in Java world. You might be thinking just 15 people, well, there are many more which is not in this list but I regularly share their twitter handles via my twitter account @javinpaul and @Javarevisited. If you are following me then you will automatically get to know about them.

Top 10 JavaScript (Frontend + Backend) Frameworks and Libraries Web Developer Should Learn in 2019

There is no doubt that JavaScript is now the #1 programming language in the world and also the king of web development. If you want to become a web developer who can quickly create websites like you see on the internet then a good knowledge of JavaScript and various, popular JavaScript web development framework is very important for you. These framework has completely changed the way people develop web application a decade ago. After node.js, its even possible to create a complete web application from front-to-back using just one programming language, JavaScript. That's why it has become the favorite programming language of all Full-stack Web Developers.

10 Books to Prepare Technical Programming/Coding Job Interviews

If you are preparing for a technical interview on software development sector and looking for some great books to boost your preparation, then you have come to the right place. In the past, I have hared some of the best online courses to prepare coding interviews, and in this article, I am going to share some of the best programming/coding interview books to prepare well for any software development jobs. These books are enough to crack even the toughest of the job interviews at GoogleAmazon, or Microsoft. They provide excellent coverage of all essential topics for programming job interviews like data structure and algorithms, system design, algorithm design, computer science fundamentals, SQL, Linux, Java, Networking, etc.

How to solve Arithmetic overflow error converting IDENTITY to data type tinyint, smallint or int in Microsoft SQL Server database

Last year we had a production issue where one of our backup jobs was failing while inserting Orders aggregated from other systems into our SQL Server database. The reason was dreaded "Arithmetic overflow error converting IDENTITY to data type int" because the table was using IDENTITY feature of SQL Server to generate OrderId, and Identity has breached it a maximum value, which is around 2.1 billion, precisely 2,147,483,647. The error "Arithmetic overflow error converting IDENTITY to data type int" comes when IDENTITY value is inserted into a column of data type int, but the value is out-of-range. For example, if the current value of Identity becomes more than 2,147,483,647, then you cannot store that into an int column because it's more than the maximum value of int in SQL Server.

Top 5 Free Courses to Learn Web Development in 2019 - Best of Lot

Hello guys, I have been sharing a lot of free online courses and books on various technology and programming language e.g, Python, Java, C++, JavaScript, PHPReact, Angular, Spring in this blog from quite some time and today I have brought some great free courses to learn the basics of web development. Web Development is an important skill for programmers in this era of Startups. As a programmer or software developer, you should know how to create a website and how to create a mobile app of your own. Though it's not easy. Coding is like art and many people born with coding sense, I mean they love coding, they love to create stuff like websites, mobile apps, games etc and they love to automate things.

Top 10 Programming Languages Programmers can Learn in 2019 - (Java, Python, and JavaScript)

Hello guys, 2018 is coming to end and 2019 is approaching fast. This is the time, most of us start making our goals e.g. physical goals, educational goals, and financial goals. As a programmer, one of our goals is to learn new technologies and programming languages, but which languages should you learn? Since learning a programming language requires both time and patience, you should learn a language which is worth the effort i.e. it can reward you a better job and career growth. In this article, I am going to share with you the top 10 programming languages you can learn for 2019.

5 Free Oracle and Microsoft SQL Server Online Courses

If you are an application developer, e.g., someone developing a server-side application using Java or .NET or any other programming language which uses a database like Oracle and Microsoft SQL Server or a junior DBA then you must learn these database technologies to effectively work in your Job. Even though your organization might have DBAs or Database Administrators to help you with the database, more often than not, it's application developers who end up writing SQL scripts to create data, upload data, query data, and writing complex stored procedures and triggers to implement application functionalities. DBAs job mostly does database installation, access control, security, and other database admin stuff.

Why Java is the best programming language for beginners and people want to learn coding

I often receive questions like which is a first programming language to learn first, Is Java a good programming language to start with,  how good Java is as a first programming language, which is the best programming language for beginners, or shall I start with Java or Python. Well, the answer to all these questions is, Java is one of the most popular programming languages, and there are a lot of reasons to learn Java, starting with Job opportunity to leverage community support. In the context of beginning programming or choosing Java as the first language, my most significant reason is that it's simpler to learn. The last generation of programmers started learning to program using languages like BASIC and then grew up learning C and C++ with Java as their second or third programming language.

10 Resources to Prepare well for your Programming Job Interview Questions

If you are a fresher or final year graduate preparing for your placement interview, or a Java developer preparing for your next job and looking for some websites, blogs, and forums for programming interview questions then you have come to the right place. In this article, I am going to share some of the really good websites and resources which will help you to prepare and do well on programming interviews. Though there are a large number of good books with lots of programming questions like Cracking the Coding Interview and Programming interview exposed, they are not the most interactive or comprehensive resources. Since with times, interviews are also changing you need to keep yourself updated with latest programming job interviews and Java questions.

50+ Microsoft SQL Server Phone Interview Questions and Answers

Are you preparing for an SQL Server Interview? or, a Java developer position where SQL Server skills are important? If yes, then here are a couple of frequently asked Microsoft SQL Server Interview questions you should practice before going for your interview. These questions are also good to brush-up your Database and SQL fundamentals which is always asked as part of interviews.These list contains not only godo SQL Server interview questions but also some basic SQL questiosn which you will see everywhere. The list is useful for both beginners and intermediate develoeprs and DBAs with 0 to 2 years of exeprience.

1. What is normalization? (answer)
Normalization is processed to reduce duplication from tables. They help to reduce storage space by removing duplicate but after a certain normal form, it also makes difficult to query data. A table should at least be in 3rd normal form for all practical purpose.

How Binary Search Algorithm Works - Java Example Without Recursion

The binary search algorithm is one of the fundamental Computer Science Algorithms and used to search an element in a sorted input set. It's much faster than the linear search which scans each and every element and improves performance from O(n) to O(logN) for searching an element in the array. In order to perform the binary search, you need a sorted array, so you can either ask the user to enter array in sorted order or you should sort the array before performing the binary search. It's also one of the popular algorithms on Programming Job interviews. Interviewer often asks candidates to implement binary search algorithm by hand in their favorite programming languages like Java, C++, Python. or JavaScript.

Top 10 Java 9 Tutorials and Courses - Best of Lot Must Read

It's been more than a year or so since JDK 9 was launched and the new year is probably the best time to learn Java 9 and get yourself familiar with new features and enhancements on existing APIs. The highlight of JDK 9 release was Project Jigsaw or Module system. The Java 9 Platform Module System allows Java to move forward by modularizing the JDK as well as adding modules as first-class citizens to Java, but that's not the only thing to look forward, there are many small changes which are very useful in day-to-day coding. For me the static factory methods introduced in List, Set, and Map to create an immutable list, set and the map is the most interesting one. Along with several changes on Stream API and Optional class. Those are the ones, I will most likely to use as soon as we start with JDK 9.

Top 100 Data Structure and Algorithm Interview Questions for Java Programmers

Data structure and algorithms are a core part of any Programming job interview. It doesn't matter whether you are a C++ developer, a Java developer or a Web developer working in JavaScript, Angular, React, or Query. As a computer science graduate, it's expected from a program to have strong knowledge of both basic data structures e.g. array, linked list, binary tree, hash table, stack, queue and advanced data structures like the binary heap, trie, self-balanced tree, circular buffer, etc. I have taken a lot of Java interviews for both junior and senior positions in the past, and I have been also involved in interviewing C++ developer. One difference which I have clearly noticed between a C++ and a Java developer is their understanding and command of Data structure and algorithms.

What's wrong with using SELECT * in a SQL Query?

I have read many articles on the internet where people suggest that using SELECT * in SQL query is a bad practice and you should always avoid that, but they never care to explain why? Some of them will say you should always use an explicit list of columns in your SQL query, which is a good suggestion and one of the SQL best practices I teach to junior programmers, but many of them don't explain the reason behind it.  Unless you explain some reasons why one should not use SELECT * in queries, it's difficult to convince many SQL developers,  many of whom have started learning SQL by doing SELECT * from EMP in Oracle database. In this article, I will try to bridge that gap by giving some practical reasons why using SELECT * in SQL query is not a good idea.

Top 5 Free Apache Spark Course for Java, Scala, and Python Programmers to learn Online

Hello guys, if you are thinking to learn Apache Spark to start your Big Data journey and looking for some awesome free resources e.g. books, tutorials, and courses then you have come to the right place. In this article, I am going to share some of the best, free online Apache Spark courses for Java, Scala, and Python developers. If you don't know what is Apache Spark? and Why it's so important in the Big Data world then let me give you a brief overview first. Apache Spark is another cluster computing framework like Hadoop which is used to analyze a huge data set, but it's much faster as compared to Hadoop which makes it ideal for today's high computing needs e.g. processing huge amount of data.

How to Prepare for Java Certifications like OCAJP, OCPJP, or OCEJWCD?

No doubt that Oracle's Java certification is one of the most valuable certifications for IT industry and helps you to get a better job, better pay, and a better rise in your current salary. It also improves your recognition and job prospects because many big clients demands certified Java programmers for their mission-critical applications. Because of enormous popularity and usefulness, many Java developers and computer science graduate aspire for Java certifications. I often receive queries like, what is the best way to prepare for Java certifications like OCAJP or OCPJP? Or I am already coding in Java, do I need to make explicitly for this exam to do well or my Java development experience is enough? I have 5 years of experience in Java, do I need to prepare for OCAJP 8 or OCPJP 8 exam? Etc.

Top 5 books to learn Java Virtual Machine, Garbage Collection, and Performance in-depth

In the last couple of years, I have seen a trend of many Java developers wants to learn more and more about JVM internals and how Java Virtual Machine and it's different component works. This trend was not so strong in the last decade, but with more and more focus on concurrency, performance, and scalability, Java developer is exploring JVM internals, Garbage collection, and Performance tuning in more detail. Unfortunately, there are not many good books to learn about JVM internals and its different components but fortunately, we have an excellent Java Virtual Machine specification to learn fundamentals. It is also the most up-to-date reference because Java and JVM are kept changing, especially after Java 10.

Top 5 Free JDBC Courses for Java Programmers - Best of Lot

If you are a Java programmer and looking for some free JDBC courses to start learning database access in Java, then you have come to the right place. In this article, I am going to share some of the free online JDBC (Java Database Connectivity) courses from popular sites like Udemy and Pluarlsight to give you a head-start in your long journey of writing real-world Java application which interacts with the database. Since Data is the utmost important part of any Java application, it's imperative to have a good knowledge of how to interact with the database from Java application and JDBC is the first step in that direction.

10 Essential JVM Options for a Java Production System

Hello guys, this is a brief guide of relevant JVM options which you will often see in production Java systems. As a Java developer, you should know what these JVM options means, their importance, and how they affect your application. You will find that most of the JVM options are related to heap memory, garbage collection and to log some details, e.g., heap dump, necessary for troubleshooting heap related issues like a memory leak or excessive memory consumption. It's Ok if you don't know these Java virtual machine options yet, but you should be familiar with them, and that's the objective of this article. Btw, how do you find the JVM options your application is using? Well, you can see the startup scripts through which your application is started.

5 Best Courses to Learn Spring Boot in Depth in 2019

Hello guys, if you remember, one of my goals was to learn Spring Boot in 2019, and I have started working towards it. As I have talked about my 3 point action plan to learn new technology, the first step is to attend some online courses and start building from that. If you are not sure what is Spring Boot and why should you learn Spring Boot then let me tell you that it should be the first Java framework you should learn in 2019. The Spring Boot makes it really easy to work with the Spring framework by removing all the starting hurdles with respect to setup and configuration. In one word, it makes it possible to write Spring-based Java application and run them like core Java application, e.g. from the main method.

10 Tools Java Developers Should Learn in 2019

We are just a week away to 2019 and many programmers have already started making a good process to their goals for 2019, which is very good, but if you are someone, who is still not sure what to learn in 2019 then you have come to the right place. In past, I have shared 10 things Java developers to learn in 2019 and last week I published top 5 Java Frameworks to learn, but there is one topic which kept coming from my readers.  The question which I have received this week a couple of times form my fellow Java developers and readers is which tools Java programmers should learn in 2019? or what are some good Java tools used in application development? and finally, what should I learn in 2019? I have been answering this question by writing blog posts e.g. 10 Testing Tools Java developers should learn in 2019 and in this article, I am going to share some of the best Java tools you can learn in 2019.

Top 5 Books to Learn Python for Beginners - Best of All

Python is one of the most popular programming languages, and there is a vast demand for Programmers who knows Python. Even though I am a Java Programmer, I am learning Python. In the real world, you often find that a big project in a bank or insurance domain leveraging several technologies together, like Java, C++, Python, UNIX, SQL, and several others. Being a Polyglot programmer also pays off well. You also create a better impression on Interviews. I know many interviewers who prefer to interview programmer who knows more than one language.

Top 5 Free Android App Development Courses for Beginners in 2019

Hello guys, Happy New Year 2019. I am sure you all have made your goals and started planning on how to achieve them. If you are passionate about creating mobile games and applications and want to learn how to develop Android apps or want to become an Android application developer then you have come to the right place. In this course, I am going to share some of the best and free Android development courses for Java programmers and others. You might know that earlier Java was the only language which is used to create Android applications but since last year, Google has announced Kotlin as the official language for Android app development which means you can use either Kotlin or Java to create Android apps.

3 ways to create random numbers in a range in Java

Many times you need to generate random numbers, particular integers in a range but unfortunately, JDK doesn't provide a simple method like nextIntegerBetween(int minInclusive, int maxExclusive), because of that many Java programmers, particularly beginners struggle to generate random numbers between a range, e.g., random integers between 1 to 6 if you are creating a game of dice, or random number between 1 to 52 if you are creating a game of playing cards, and you need to choose a random card, or most commonly random numbers between 1 to 10 and 1 to 100. Then, the question comes, how to solve this problem? How to generate random int values between a range? Well, you need to do a little bit of work.

Top 5 Free Courses to learn Machine Learning and Deep Learning in 2019

Hello guys, Happy New year 2019. We are already in the second week of January and I am sure you all have made your goals and may be looking for the ways and resources to achieve them. If one of your goals is to learn Machine learning and Deep learning in 2019 then you have come to the right place. In this course, I am going to share some of the best free courses to learn Machine learning and Deep learning online. Btw, If you are thinking to learn Data Science, Machine learning, or Deep learning than you are not alone, more and more people are starting with these advanced skills around the world.

How to Convert a List or Set of String to Comma Separated String (CSV) in Java 8

Before Java 8, it was not straightforward to convert a list of String to a comma-separated String. You have to loop through the collection or list and join them manually using String concatenation, which can take up more than 4 lines of code. Of course, you could encapsulate that into your own utility method and you should but JDK didn't provide anything useful for such a common operation. Btw, things have changed. From Java 8 onwards you can do this easily. JDK 8 has provided a utility class called StringJoiner as well as added a join() method into String class to convert a List, Set, Collection or even array of String objects to a comma separated String in Java.

Top 5 Free Courses to Learn Swift Programming for iOS Developers

Hello guys, how are you doing this lazy Saturday? You might be thinking, as a Java developer why I am suggesting you learn Swift, but the truth is that I am not suggesting you abandon Java and join Swift, I am suggesting you join Swift if you want to develop iOS applications. We all use Apple's product and we love them, I have used iPod, iPhone, iPad, Apple Watch, and even MacBook and every time I use their product I just say wow and Swift are no different from that. It's a programming language from Apple so you will find all the features which makes Apple product great. It's simply because Apple has kept education in mind while creating it. If you have an iPad, you might have also seen the Swift Playground app, which is also a great app to learn Swift and iOS.

Grouping By, Partition By, Joining, and Counting in Stream - 10 Examples of Collectors in Java 8

As the name suggests, Collectors class is used to collect elements of a Stream into Collection. It acts as a bridge between Stream and Collection, and you can use it to convert a Stream into different types of collections like List, Set, Map. Btw, it not just limited to that, it even provides functionalities to join String, group by, partition by and several other reduction operators to return a meaningful result. It's often used along with collect() method of Stream class which accepts a Collectors. In this article, we'll learn Collectors by following some hands-on examples.

Top 5 Free Ruby and Rails Courses to Learn Online - Best of Lot

Hello guys, welcome to this post, here you will find some of the best free courses to learn Ruby programming language and Ruby on Rails framework online. If you don't know what is Ruby and what is Rails framework then let me tell you that its one of the simplest programming language with little to no syntax. If you are new to programming or never coded before then also developing a Ruby application will be much easier than choosing any other programming language like Python or Java. When it comes to developing web development, the Ruby on Rails also makes your job easy by making several useful assumptions based upon convention, which means you can do more by writing less code.

How DispatcherServlet process a request in Spring MVC Application?

One of the common question in Spring MVC is, how does DispatcherServlet process a request in Spring MVC? or What is the role of DispatcherServlet in Spring MVC framework? This is an excellent question to any Java or Spring web developer, the answer to this question shows how much you know about Spring MVC framework and its working. Actually, DispatcherServlet plays a significant role in Spring MVC. It acts as a front controller, and all incoming request passes through it, of course, you can configure this in URL pattern of DispatcherServlet declaration in web.xml, but this is the case for many Spring based web application.

Top 5 Sorting Examples of Comparator and Comparable in Java 8

The JDK 8 release has completely changed the way you compare objects and sort them in Java. The new features of Java 8 language e.g. lambda expression and method reference has made it easier to implement both Comparator and Comparable interface, as you don't need Anonymous class for inline implementation. Now, you can create Comparators in just one line by using lambdas and method reference as we'll see in this article. Other features like providing default and static methods on interfaces have also made a huge difference when it comes to Comparator. They helped Java API designer to redesign and evolve existing interfaces, which wasn't possible earlier without breaking existing clients of those interfaces.

Top 5 Free Courses to Learn PHP and MySQL in 2019

If you want to build web applications in quick time then PHP and MySQL is a good choice. PHP and MySQL are incredibly powerful open source technologies that allow programmers and web developers to create functional websites and apps that go way beyond basic HTML. PHP is specially created to generate interactive and dynamic websites and also known as server-side scripting language while MySQL is one of the leading relational databases along with Oracle and Microsoft SQL server. While it may seem intimidating to create a website using PHP and MySQL, especially for someone who has no experience in coding, it's not that difficult. With the right guidance and resources e.g. books and courses you can put together a PHP MySQL website in a week or so.

10 Technologies Programmers Can Learn in 2020

Hello Guys, we are just a few months away from 2020 now, and many of you might have already made your goals about what to learn in 2020, but if you haven't then you have come to the right place. In this article, I am sharing some of the best framework and libraries for web development, mobile app development, and big data, an application developer can learn in 2020. The New Year will be all about the mobile. Machine learning, and next-generation web with a greater focus on big data technologies like Hadoop and Spark, but you can still learn the popular Java and Web development frameworks like React, Node.js, Spring Boot to take your career to the next level. These frameworks are tried and tested and will be here for at least the next 5 years to come.

Java String 101 - Everything You Want to Know about String in Java

someone might question that why do we need another article about string in Java, haven't we had enough about the string is already written? Yes, I agree there are a lot of articles related to Java string covering topics like how to use Java String, an example of Java string and almost everything you can do with string in Java. But, I wanted to document my experience of using String in Java and some nasty and little-known things I discovered about the Java String class, which may not be obvious to many Java developers. A string is available in almost every programming language and its probably the most used data structure or a data type, hence a good knowledge of String is very important for every Java developers.

5 Free Object-Oriented Programming Online Courses for Programmers

The OOP or Object Oriented Programming is a paradigm which allows you to write a program by modeling real-world things in terms of class and object. It not only make to represent a real-world thing in the programming world smoother but also allow you to manage the complexity of your program. Even though there are several programming paradigms, e.g., procedural and functional, most of the code we write today is object-oriented, and some of the most of popular programming languages are object-oriented, e.g., Java, Python, PHP, and JavaScript all supported object-oriented programming.

Top 20 System and Software Design Interview Questions for Java Programmers

System design questions are an important part of programming job interviews and if you want to do well, you must prepare this topic. In the past, when I shared my list of programming interview questions, I have shared a couple of System design questions but my readers kept asking me for more questions, as it is a hard topic to master and more and more practice is needed. I had my own list of questions which I have collected from various interviews with friends and colleagues but I needed more questions for this article and my own preparation then I stumbled upon the Grokking System Design Interview course. It's an excellent resource because it not only gives you a lot of System design question but also provide all the knowledge and tools you need to solve those questions.

Top 10 Java 8 Tutorials and Courses - Best of Lot, Must Read

It's a long time since Java 8 was released and there are so many Java 8 tutorials are written by Oracle, bloggers, and other peoples, but which should you read? Which tutorials are worth of your time? Actually, this question is asked to me by one of my reader called John, he was asking me about some good Java 8 tutorials, which he can read to start with. This encouraged me to take a look at some of the Java 8 tutorials available on the internet and form a list of best. I have just used three criteria, content, language, and length. Because tutorials complement books, they should not be like the book. They should be small enough to complete in a few hours and complete enough to give useful information. I also like tutorials, which discusses practical problems and examples.

50+ Basic Core Java Interview Questions with Hints and Answers

If you are preparing for your next Core Java interview and looking for some common question to practice or check your knowledge, then you have come to the right place. In this article, I'll share 50 Core Java Interview Questions from various companies. I have already discussed the answers to these questions in this blog or Javarevisited, so I have just put the link. First, you should try to answer it yourself and if you cannot then go to the link and find the answer. You can also compare your answer with mine and learn a few things here and there. In most of my interview post, I have also shared some common techniques to drive interview towards your comfort zone and how to leave a long-lasting impression on the interviewer, you can use those techniques to do well on your Java interviews.

7 Free Selenium Courses to Learn Automation Testing in Java

Testing is an integral part of software development and we have long been relied on manual testing by testers and QA professional to ship quality software and find bugs, but that's not sustainable anymore. There is an increased focus on automation testing nowadays and Selenium is leading the way with its web drivers. If you don't know what is selenium, it's a free automation testing tool for web applications. It can work with different web browsers like Chrome, Firefox, Internet Explorer, Opera and simulate human-like behavior. By using Selenium you can programmatically interact with all the different elements in a webpage. You can click on them, input text, extract text and so much more.

Top 5 Java EE Bad Practices Java Developers should Avoid

Here are some of the bad coding practices you should avoid while working for a Java EE application or Java Web application in general, which runs on a Web Server like Tomcat or Enterprise Server like JBoss, WebLogic, or IBM WebSphere:

1) Calling System.exit() from a Web application
It is never a good idea for a web application to attempt to shut down the application container. A call to System.exit() is probably part of leftover debug code or code imported from a non-J2EE application. You can further read my article "Don't use System.exit() on Java web application" to learn more about.

Top 5 Spring Boot Annotations with Examples for Java Developers

Annotations have completely changed the way you write Java code. It's now impossible to write any Java code without using annotations but that's for good. They provide a lot of value and that's why it's important for a Java developer to get familiar with essential annotations of the framework he or she is using. When I think about Java, some of the essential annotations which come in our mind is @Override, @SuppressWarning and @Deprecated. Similarly, if you are using Spring Boot framework, an extension of Spring framework which aims to simplify the Java development with Spring, you will often end of using a couple of annotations like @SpringBootApplication or @EnableAutoConfiguration.

Top 5 Free TypeScript Courses for Angular Developers to Learn Online - Best of Lot

If you are interested in learning TypeScript or Angular, one of the popular JavaScript framework for developing front-end, which uses TypeScript and looking for some resources e.g. books, tutorials and courses then you have come to the right place. In this article, I am going to share some of the best, free TypeScript online courses you can use to learn this powerful programming language. For those who don't know TypeScript, it's a new dynamically typed programming language from Microsoft which augments JavaScript's programming syntax by adding some new features which help in object-oriented application development, particularly introduction of Types.

How to print all leaf nodes of a Binary Tree in Java without Recursion

In the last article, you have learned how to print all leaf nodes of a binary tree in Java by using Recursion, a useful technique to solve binary tree problems and in this article, we'll answer the same question without using Recursion. Why should we do this? Well, it's a typical pattern on a programming job interview to solve the same problem using both Recursion and Iteration. Since some questions are easy to solve using recursion like linked list problems, binary tree-based problems, tower of Hanoi, or Fibonacci series but their non-recursive solution is comparatively tricky, interviewer test candidates against this shift in the algorithm.

How to Pass Spring Professional 5.0 Certification in 2019

Hello guys, if you have been self-preparing for Spring Professional 5.0 exam then you might have struggled with which topics to prepare and which topics to leave out. I often receive questions like does Spring Boot is part of Core Spring certification? Will there be any questions from Spring Security and Spring Data? Does Spring Cloud also part of this exam or not? Unfortunately, there is no detailed, semester like a syllabus for Pivotal's Core Spring certification. The only information which is available is on their exam brief pdf which lists the purpose of the exam and essential topics and their percentage breakdown in terms of their weight in the actual exam. Since the Spring framework is vast and it's very difficult to prepare, a good understanding of what is required and what is not is very important.

Top 5 Free C++ Courses to Learn Programming Online - Best of Lot

C++ is one of the most popular and powerful object-oriented programming languages and if you want to do low-level stuff then it's the best language to start with. Most of the complex software e.g. Operating Systems, Database Management Systems, and Powerful trading systems are written in C++. While many of us have learned to program by using C and C++, let me honest with you learning C++ is challenging. There are many areas which are tough to grasp e.g. points but you will learn them slowly and that's where these free C++ course will help you.

How to Rotate an Array to Left/Right by a Given Number in Java - Coding Problem

Hello guys, welcome to this post with another array-based coding problem. In the last article, we've learned about finding missing numbers in the array with duplicates and today we'll solve the problem of rotating an array by left or right by a given number. For example, suppose an integer array {1, 2, 3} is given and it was asked to rate this array to the left by 3 then the result array will look like {2, 3, 1} because it was rotated twice on left. Similarly, if you are asked to rotate the same array twice by right then you'll get {1, 2, 3}, the same array is back. This is an interesting problem and it's quite easy to solve but I have seen many programmers struggle with this one as well. So, a little bit of practice and learning will not hurt.

3 Books and Courses to Learn RESTful Web Services using Spring and Java

Hello guys, if you know Spring framework then there is a good chance that you have heard about the classic Spring in Action book by Craig Walls. It's one of the best books to learn Spring and many Java developers, including me, has learned Spring from that. But, even though the Spring in Action 5th Edition is one of the best books to learn Spring framework, it's just not enough to learn intricacies of developing a modern, full-featured RESTful Web Service using Spring Framework. It does have a chapter on developing RESTful Web Services and nicely explains concepts like @RestController, @ResponseBody, @ResponseStatus, HTTP message converters, content negotiation but that barely touch the surface of developing a production quality RESTFul Web Service.

3 Ways to change Embedded Tomcat Server Port in Spring Boot Application

If you know Spring Boot really simplifies the web development by embedding essential libraries as well as a tomcat server to run Java web application. By default, this tomcat server listens on port 4588 and by any reason if you want to change than Spring boot provides several configuration options to achieve that. For example, I wanted tomcat to listen on port 8080 because port 80 is forwarded to 8080 in our Linux machine and we wanted our clients to provide our client with a clean URL without a port.

What is ContextLoaderListener in Spring MVC - 10 Things Java Programmer Should Know

The ContextLoaderListner is one of the important components of the Spring MVC framework, probably the most important after DispatcherServlet itself. It is used to create root context and responsible for loading beans which are shared by multiple DispatcherServlet like beans related to the service layer and data access layer. In general, When you develop Spring MVC based web application and also using Spring in the services layer, you need to provide two application-contexts. The first one is configured using ContextLoaderListener and the other is configured using DispatcherServlet. The DispatcherServlet is responsible for loading web component specific beans like controllers, view resolvers and handler mappings while as I said before, ContextLoaderListener is responsible for loading middle-tier and data-tier beans which forms the back end of Spring applications.

Top 5 Free jQuery Online Training Courses for Web Developers - Best of Lot

Hello guys, if you are thinking to learn jQuery and looking for some awesome free resources e.g. books, tutorials, and online courses then you have come to the right place. In this article, I am going to share some of the best free jQuery courses from Udemy and Pluarlsight which you can take to learn this awesome JavaScript library. In the past, I have also shared some free books and tutorials on jQuery, which complements these courses. You can also take a look at then while learning different parts of jQuery.  Before I share these free courses, let me brief you about what jQuery is and why you should learn it? Well, jQuery is a JavaScript library but unlike any other library it is very powerful and makes the client side scripting really easy.

10 Books Java Developers Should Read in 2019

Hello guys, If you are Java developer and wondering what to read in 2019 then you have come to the right place. In this article, I am going to share 10 books on Java, Spring, and related technology a Java developer can read. I have included books for both experienced Java developer who is more inclined to learn about architecture stuff,  developing for Cloud, MicroService, Java 9, and Spring 5 features and thinking of learning Kotlin to improve their productivity, but I have not forgotten to junior and less experienced Java developers or some who are thinking to start their journey into Java world in 2019.

How to implement PreOrder traversal of Binary Tree in Java - Example Tutorial

The easiest way to implement the preOrder traversal of a binary tree in Java is by using recursion. The recursive solution is hardly 3 to 4 lines of code and exactly mimic the steps, but before that, let's revise some basics about a binary tree and preorder traversal. Unlike array and linked list which have just one way to traverse, I mean linearly, binary tree has several ways to traverse all nodes because of its hierarchical nature like level order, preorder, postorder and in order. Tree traversal algorithms are mainly divided into two categories, the depth-first algorithms, and breadth-first algorithms. In depth-first, you go deeper into a tree before visiting the sibling node, for example, you go deep following the left node before you come back and traverse the right node.

Top 5 Spring Security Online Training Courses for Java Developers

Security is one of the most important aspects of a modern web application, be it a Java web application, .NET or writing using any other web technology. In the Java world, Spring Security rule the security space. It's one of the rare frameworks which provided many security features e.g. authentication, authorization, session management, remember me and several other useful features out-of-the-box. Since there was no competition to Spring security and it does its job very well, it soon becomes the de-facto standard for implementing security in both Java web applications, REST APIs and core Java applications. The rise of the Spring framework certainly helps it to cement its place as well.

Top 50 Java Generics and Collection Interview Questions

Java Collection and Generic are a very important topic for Java Interviews. They also present some of the hardest questions to a programmer when it comes to interviews, especially Generics. It's not easy to first understand what a particular piece of code doing with those question mark and other signs and then the pressure of interviews also makes it hard to answer complex usage of Generics.  But, with proper preparation and paying attention to both Java Collection and Generic, you can solve that hurdle. If you are looking for Java job but hasn't done well in the interviews you have given so far then you have come to the right place. In this blog, I have shared a lot of Java interview questions on various topics and difficulty levels.