Reactive Clean Architecture With Vert.x

From DZone Java Zone
March 17, 2017 - 12:01am
I have recently written about Clean Architecture and provided an implementation example by Uncle Bob himself. This time, we’ll look at the implementation from a bit different angle — i.e. is it possible to implement Clean Architecture and still take advantage of modern, reactive frameworks like Vert.x? Here it comes! What Was That Clean Architecture Again? Clean Architecture divides our code into four conceptual circles – Enterprise Business Rules, Application Business Rules, Interface Adapters, and Frameworks & Drivers. Between these circles, there is a strong dependency rule – dependencies can only flow inwards (see the picture below). One of the rule’s implications is that the code in the inner part should have no knowledge of the frameworks being used. In our case, these will be Vert.x and Guice. In general, you should be able to switch UI technologies, databases, and frameworks without impacting the two inner circles.

Continue reading this article »