IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
Java Annotated Monthly – December 2018
Happy winter/summer solstice and any associated festivals and holidays you may or may not celebrate! This month’s annotated contains a mix of news and talks from the various autumn conferences, and some light reading to tide you over until the new year.
Java News
A lot of the news in this section came from Devoxx Belgium, which seems to be the place to announce things after Oracle Code One, or re-iterate messages from that conference. All the talks from Devoxx were streamed and recorded – see the Tweet below for more details of just some of the presentations.
- Java Magazine: Understanding Oracle JDK Releases in Transition – a good overview of the license changes in Java 11, and the differences between the Oracle JDK and OpenJDK (by Oracle)
- Java Magazine: What’s new in JDK 11
- Java in 2018: Change is the Only Constant by Mark Reinhold (video) – I saw this live at Devoxx, it’s a good overview of the state of Java right now.
- Java Futures, Devoxx 2018 Edition BY Brian Goetz (video) – I haven’t had a chance to watch this talk fully yet but I want to. It covers some of the features we can look forward to in future releases of Java.
- Amazon Release Corretto: A Multiplatform Java OpenJDK Build with No-Cost Support – announced at Devoxx, another option if you like your JDKs free.
- Next: Streamlining the JCP Program – the Java Community Process continues to evolve, which is particularly important with the faster release cadence of Java and with Java EE becoming Jakarta EE.
[1 of 12] Thread
2018 #Devoxx BE sessions by the @Oracle Java Platform Team are available for replay. Which are your favorites?@Java Together#OpenJDK #JDK #Java— Sharat (@Sharat_Chander) November 20, 2018
Java Tutorials & Tips
This month’s tips and tutorials are a mix of classic Java, up-and-coming-not-released-yet Java, and newish stuff you should probably be using soon. For daily tips during December (up until Christmas), see the annual Java Advent Calendar.
Another year, another Java advent calendar https://t.co/pxPuwUDviu pic.twitter.com/IUGrNonqBT
— Java Advent Calendar (@JavaAdvent) December 1, 2018
- Amazon Corretto: Another OpenJDK – with steps on how to get started with it.
- Java Magazine: Value Types are Coming to the JVM – what are value types and why should we care?
- Game of Life Lessons: Static Smells – suggests that static methods are a smell. While they are in the context of this article, it’s worth remembering that in the new functional-friendly post-Java-8 world static methods have their own place.
- How to Use Java HashMap Effectively – the introductory stuff is too basic for most of you, but the info about some of the methods added in Java 8 is useful to know.
- Var with Style: Local Variable Type Inference in Java 10 – there’s a lot of confusion about when to use var and what it’s good for. Stuart Marks is a good person to help clear up these questions.
- JUnit5 Assertion Migration Strategy – really liked this practical article on how to move from JUnit 4 to JUnit 5. Also don’t forget IntelliJ IDEA can help you migrate from JUnit 4 to 5.
- Comprehensive Step-By-Step Guide on How to Upload Open-Source Java Library to Maven Central – if you’ve never developed a library used by others, you probably won’t realize this can be a non-trivial task.
- How to handle checked exception in lambda expression- Part 1 – checked exceptions are a bit nasty in lambda expressions, so here’s one way to deal with that.
- 26 Reasons Why Using Optional Correctly Is Not Optional – some tips on how to use Optional, useful for seeing some of the newer methods introduced since Java 8.
- How to Solve Your Java Performance Problems (Part 1) – or: having a methodical approach is more likely to lead to success than stabbing wildly in the dark.
- Shortest Code and Lowest Latency – another interesting read if performance is your thing.
- Give Me a break, or: How to Make Awesome Puzzlers with Java 12 – switch expressions are a preview feature in Java 12, get a heads-up on what they look like now.
Languages, Frameworks and Libraries
Micro is all the rage these days.
- Is Boilerplate Code Really So Bad? – my talk from Oracle Code One, an overview of Kotlin plus some of the newer features in Java.
- Finding Symmetry – overview of the API of Eclipse collections, a useful and fast set of collections for the JVM.
- MicroProfile, the microservice programming model made for Istio – tutorial for using MicroProfile with Istio (ooh look, cloud and microservices together, buzzword bingo).
- Micronaut Tutorial: How to Build Microservices with this JVM-based Framework – if it’s got “micro” in the title, it’s probably Important To Learn.
- Micronaut Tutorial: Part 2: Easy Distributed Tracing, JWT Security and AWS Lambda Deployment
- Serverless, Java and FN Project, first steps – tutorial for getting started with FN Project, something I keep telling myself I’ll look into one day.
Culture & Community
Other interesting articles that aren’t specifically Java-related.
- We Propose the Emerging Technology Analysis Canvas (ETAC) – in other words: let’s have a consistent way to evaluate technology before we jump in and use it.
- Yak shaving and fixing – or: if you enjoy it, it’s a Good Thing to take the time to fix stuff that annoys you.
- Why giving back is important to the DevOps culture – remember DevOps is not just a list of tools, but a culture.
- Eclipse Foundation Survey 2018 – complete this to give the Eclipse foundation a view into how you and your organization sees open source.
And Finally
Here’s a chance to catch up on the IntelliJ IDEA and other JetBrains news that you might have missed:
- IntelliJ IDEA 2018.3 and 2018.3.1 were released!
- Take a look at our What’s New in IntelliJ IDEA screencasts.
If you have any interesting or useful Java / JVM news to share via Java Annotated Monthly, leave a comment or drop me a message via Twitter.