Evolving a Pragmatic, Clean Architecture – A Craftsman’s Guide
5:00 pm LONDON, london , london, London
Watch the session on youtube: http://youtu.be/qM4RlRf9gLY
This is a virtual Meetup occuring at 5PM UK time (GMT). The live session will be broadcast on https://www.virtualjug.com. Just click to join when the time comes! The recording will be available immediately afterward.
Take part in the live session discussion on our slack channel: https://bit.ly/2ramaDW
Are you in a mood for a brainstorm? Join this critical review of the major decisions taken in a typical enterprise application architecture and learn to balance pragmatism with your design goals. Find out how to do just-in-time design to keep as much use-cases as simple as possible.
The core purpose of this presentation is to learn to strike a balance between pragmatism and maintainability in your design. Without continuous refactoring, a simple design will inevitably degenerate into a Big Ball of Mud, under the assault of the new features and bugfixes. On the other hand, very highly-factored code can burden the take-off of the development and end up freezing the mindset in some rigid ‘a-priori’ design.
The end goal of this talk is to challenge you to rethink critically the architecture of your own systems, and seek ways to simplify it to match your actual needs, with a pragmatic mindset.
“Architecture is the art of postponing decisions”, said Uncle Bob. This talk takes this idea further and explains an optimal mindset about designing enterprise applications: Evolving (Continuously Refactoring) a Pragmatic (Simple), Clean (aka Onion) Architecture, aiming to provide Developer Safety™️ and Comfort™️. It’s the philosophy that Victor distilled over the past 5 years, designing and implementing 9 applications as IBM Lead Architect, and delivering trainings and advising many other companies.
You’ll learn how to break data into pieces (Fit Entities, Value Objects, Data Transfer Objects), how to keep the logic simple (Facades, Domain Services, logic extraction patterns, Mappers, AOP), layering to enforce boundaries (keeping DTOs out of your logic, Dependency Inversion Principle), and many more, all in a dynamic, interactive and extremely entertaining session.
Speaker: Victor Rentea
Victor is one of the top Technical Trainers in Romania. He trained and coached more than 1000 developers of 30+ companies over the 6 years of his training activity.
At IBM, even though they call him a Lead Architect, he writes code each day: he’s maniac about Clean Code, so expect seeing some hard-core refactoring.
Victor is a key community member: organized the largest 3 Bucharest Java User Group meetups in history. In 2018 he founded the Bucharest Software Craftsmanship Community in which he runs open sessions about clean code, refactoring, pair programming and TDD. He posts daily on LinkedIn and Twitter (@VictorRentea) thoughts about culture, technical excellence and Software Craftsmanship.