This presentation was recorded for GOTO Byte-Sized. #GOTOcon #YOW https://gotopia.tech Hannes Lowette - Head of Learning & Development at Axxes, Monolith Advocate, Speaker & Whiskey Lover @@Belenar82 READ MORE "Building Software Like a Bag of Marbles: A ‘SOLID’ Approach for Software Developers" https://gotopia.tech/articles/247 Check out the full talk: https://youtu.be/wkFx2R4uk2A RESOURCES https://twitter.com/hannes_lowette https://github.com/Belenar https://github.com/Belenar/Axxes.ToyCollector https://linkedin.com/in/hanneslowette ABSTRACT If you have ever played with LEGO®, you will know that adding, removing or changing features of a completed castle is not as easy as it seems. You will have to deconstruct large parts to get to where you want to be, to build it all up again afterwards. Unfortunately, our software is often built the same way. Wouldn’t it be better if our software behaved like a bag of marbles? So, you can just add, remove or replace them at will? Most of us have taken different approaches to building software: a big monolith, a collection of services, a bus architecture, etc. But whatever your large-scale architecture is, at the granular level (a single service or host), you will probably still end up with tightly coupled code. Adding functionality means making changes to every layer, service or component involved. It gets even harder if you want to enable or disable features for certain deployments: you will need to wrap code in feature flags, write custom DB migration scripts, etc. There must be a better way! So what if you think of functionality as loose feature assemblies? We can construct our code in such a way that adding a feature is as simple as adding the assembly to your deployment, and removing it is done by just deleting the file. We would open the door for so many scenarios! In this talk, I will explain how to tackle the following parts of your application to achieve this goal: ASP.NET, Entity Framework, Onion Architecture, IoC and database migrations. And most of all when you would want to do this. Because that depends… [...] Download slides and read the full abstract here: https://yowlondon.com/2022/sessions/2332 RECOMMENDED BOOKS Saleem Siddiqui • Learning Test-Driven Development • https://amzn.to/35OMb3n David Farley • Modern Software Engineering • https://amzn.to/3GI468M Dave Farley & Jez Humble • Continuous Delivery • https://amzn.to/3ocIHwd Roy Osherove • The Art of Unit Testing • https://bit.ly/3obiKNB Kent Beck • Test Driven Development • https://amzn.to/36kchvd Nicole Forsgren, Jez Humble & Gene Kim • Accelerate • https://amzn.to/367RI5o https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.instagram.com/goto_con https://www.facebook.com/GOTOConferences #GOTOByteSized #ByteSized #ObjectOrientedProgramming #OOP #Microservices #Monolith #SoftwareArchitecture #OnionArchitecture #ASPdotNET #dotNET #SOLID #HannesLowette #Axxes Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
Get notified about new features and conference additions.