Java Weekly, Issue 185
Lots of interesting writeups on Java 9 this week.
Here we go…
1. Spring and Java
===== >> Introducing Spring Cloud Function [spring.io]
Spring has always adopted POJO-based approaches, now it’s time to focus on functional approaches. Spring Cloud is getting enhanced with a possibility of defining beans from function implementations – everything well integrated with Reactor.
>> How much projections can help? [blog.arnoldgalovics.com]
Using projection instead of entity-based fetching can significantly improve overall performance – which is not a surprise.
>> From Microservices to Service Blocks using Spring Cloud Function and AWS Lambda [kennybastani.com]
A practical look at Service Blocks using Spring Cloud Function and AWS Lambda. If you’re interested in seeing Spring Cloud Function in action – definitely have a look.
[.t-bg-white .l-pa2 .l-d-i]#https://blog.frankel.ch/scala-vs-kotlin/4/#gsc.tab=0[>> Scala vs Kotlin: Multiple Inheritance and the Diamond problem] #[blog.frankel.ch]
Scala and Kotlin have their own solutions to problems caused by multiple inheritance – worth having a look.
>> Mocking HTTP, Mockito style [specto.io]
When working with microservices, we often need to mock/stub HTTP endpoints – Hoverfly is one of the better tools for doing that.
>> Support for Java 9 in IntelliJ IDEA 2017.2 [jetbrains.com]
Java 9 will be (hopefully) released soon and IDE providers are coming up with new features for their tools – this time, we can have a look at new support in Intellij IDEA.
>> 5 Things You Need to Know When Using Hibernate with Mysql [thoughts-on-java.org]
Hibernate already supports most of the MySql’s features, but there are still a few things to remember that are not entirely abstracted away.
Also worth reading:
-
===== >> Assuring Architectural Rules with ArchUnit [hascode.com]
-
===== >> Basic Spring web application in Java, Kotlin and Scala – comparison [rskupnik.github.io]
-
===== >> Java Command-Line Interfaces (Part 6): JOpt Simple [marxsoftware.blogspot.com]
-
===== >> 5 Step Recipe: Everything You Need to Know for Staying Up-to-Date in Java [blog.takipi.com]
-
===== >> Java Command-Line Interfaces (Part 7): JCommander [marxsoftware.blogspot.com]
-
===== >> Java Annotated Monthly – July 2017 [jetbrains.com]
-
===== >> Java EE 8 – June recap [blogs.oracle.com]
-
===== >> Pragmatic Functional Programming [cleancoder.com]
Webinars and presentations:
-
===== >> Git Questions – How and When do I Merge or Rebase? [jetbrains.com]
-
===== >> Java Performance Engineer’s Survival Guide [infoq.com]
Time to upgrade:
-
===== >> Spring Tool Suite 3.9.0 released [spring.io]
-
===== >> Spring for Apache Hadoop 2.5.0 GA released [spring.io]
-
===== >> Bean Validation 2.0 CR 2 released [beanvalidation.org]
-
===== >> Spring Cloud Finchley M1 is available. [spring.io]
-
===== >> Hibernate Validator 6.0.0.CR3 is out with Bean Validation 2.0.0.CR3 support [in.relation.to]
-
===== >> Mockito 2.8.53 is out [github.com]
2. Technical
===== >> Project Package Organization [dolszewski.com]
Package structure in Java projects is often neglected or applied mindlessly – here we can see a comparison of the two most popular approaches: package-by-layer vs. package-by-feature.
>> Converting Queries to Commands [michaelfeathers.silvrback.com]
Raising the abstraction level and passing commands to objects can result in better decoupling – and Java 8 Lambda Expressions make it much easier and concise.
Also worth reading:
-
===== >> Fine tuning embedded jetty inside of spark framework. ** [blog.codecentric.de]
-
===== >> Gatling Load Testing Part 2 – Extending Gatling [blog.codecentric.de]
3. Musings
===== >> How to Write Test Cases [daedtech.com]
There is no universal answer to this problem – pick one of the scientific methods, follow it, and use the best tools possible.
>> Why Expert Developers Still Make Mistakes [daedtech.com]
We should make mistakes – those expose lacks in our knowledge that we can eventually fix.
Also worth reading:
-
===== >> The Paradox of Apple Watch [bitquabit.com]
-
===== >> Is There a Single Method for the Internet of Things? [queue.acm.org]
-
===== >> Why I Hate Slack and You Should Too [bitquabit.com]
-
===== >> On crossing the bridge into unit testing land [ontestautomation.com]
-
===== >> Maintenance hell? No, thanks! [blog.codecentric.de]
4. Comics
>> Working sixty hours a week [dilbert.com]
>> You don’t take pride in your work [dilbert.com]
>> Leave early today [dilbert.com]
5. Pick of the Week
===== >> A Look at JUnit 5’s Core Features & New Testing Functionality [stackify.com]