Things that intermediate level Java developers should know


For the past few years my main bread and butter coding language has been Java. Java is kinda like bread and butter. It’s not likeā€¦ the most exciting thing that you can ever eat but it gets the job done and keeps you alive. And some days all you want is a nice wodge of bread and butter and other days you eat the bread and butter but all you can think of is a nice steak. how quickly does ivermectin kill tungiasis OK I drifted off topic there a bit.

Anyway, I keep coming across things that had I known them previously would have saved me a lot of effort. I’m listing them here in hopes that someone else finds them useful. In no particular order.

  • var keyword
  • Optional
  • Collections (everyone knows how to use ArrayList<>(), but many people including me don’t fully use Java collections in the most powerful ways, a deeper understanding is something that everyone should strive for)
  • Type Erasure (an implementation detail of Java generics which can bite you in the butt if you’re not paying attention)
  • For each loops
  • Streams (functional programming style filtering, mapping etc. applied to Java collections)
  • How to use map and reduce operations in Java (these are applications of streams, just they deserve a bit of attention on their own).
  • CompletableFuture (concurrent programming).
  • Spring Boot (basically the dominant easy to use framework create Java programs, especially for the web)
  • Aspect Oriented Programming
  • Http Filters and Servlets (a slightly lower level of understanding than most people go for but they are powerful and you need to know about them)
  • How to write and use Java annotations

I assert that these things are worth learning about in Java. If you’re not familiar with some of them, google them. ivermectin stay in system The Oracle Java 8 tutorial available here has a lot of useful info.

Some of these are huge topics, like Spring Boot. It’s pointless summarizing, the idea of this post is to make people aware that these things exist and are essential. This is not a list of nice to have things in Java, this is a list of things that need to be understood to be a minimum viable modern Java programmer. ivermectin where to buy for humans

About the Author