Welcome to my new blog series! First, a bit about me. I’m a .NET software architect, with over 25 years of experience writing software, mainly on Microsoft tech. I’ve written 2 books on Microsoft press, one on SharePoint development and one on AJAX development, back when we called it “AJAX”. Since then I’ve been working on C#/.NET projects through my career in .NET startups and medical device companies.
Having spent the last 7 years writing micro services, I’ve been wanting to crossover into Java. Especially after reading books and taking classes with my friend Chris Richardson of micro services.io fame (having written excellent books on the topic).
I’ll be going down this journey on a Mac, but you can follow along on Windows or Linux as well, as the tooling is available on all platforms. The target audience of this series is not Java developers, but .NET developers. I’ll be explaining how to write professional Java applications with the understanding that you know how to do it in .NET, and want to transfer those skills over.
First, a note about tools. The right tools can make all the difference. With that said, I’ll be using IntelliJ from JetBrains for my Java coding. At work, we use Rider for .NET Development, a far superior tool over Visual Studio, mainly due to its superior performance especially over large codebases. Rider and IntelliJ are basically the same IDE experiences just targetting different runtimes.
Download IntelliJ Idea here: https://www.jetbrains.com/idea/ I’m using the Ultimate SKU which does cost $169 for the first year, as it has support for Spring Boot which will be our main runtime.
And if you need it, you can get Rider here, for a better .NET experience: https://www.jetbrains.com/rider/
Other alternatives exist, including Eclipse which you can get for free at https://eclipseide.org/, and Visual Studio Code which is a great all around swiss army knife of an IDE.
Next, let’s talk about scope. You and I are .NET developers, slinging microservices, running them in Docker, and deploying to Azure on Container Services or Azure Kunernetes. The goal of this series will be to write a simple Java web api application, use messaging such as Azure Service Bus, Rabbit or Kafka, and use a NOSQL backend data store, and then deploy the Java app in a container running on an app service or kubernetes.
Ready? Buckle up, grab the tools, and look for a post coming on Friday.
Leave a Reply