[HN Gopher] DDD, Hexagonal, Onion, Clean, CQRS, How I put it all... ___________________________________________________________________ DDD, Hexagonal, Onion, Clean, CQRS, How I put it all together (2017) Author : sdeframond Score : 41 points Date : 2022-12-10 16:55 UTC (6 hours ago) (HTM) web link (herbertograca.com) (TXT) w3m dump (herbertograca.com) | hkon wrote: | Very nice. You don't need all of it for every project. But onion | and dependency injection is my default setup. | twawaaay wrote: | Don't put it together. Learn all this stuff, understand it | deeply. Then use it when you find it improves whatever you are | working on. | | If you start putting it all together you will most likely only | confuse other developers, especially juniors. Don't do it. The | point of gathering all this knowledge should be making the | application simpler and easier to maintain. So introduce stuff | gradually and only when you find the added complexity pays out. | skrtskrt wrote: | Imo when it's done well it doesn't look like complexity at all | and makes it simpler, not more complicated, even if there are | more "layers" | twawaaay wrote: | In my experience, when people look for a way to include | something in the project it almost always results in more | complexity. | | A question like "how do I put it all together" signals focus | on tools rather than focus on the product. When developers | learn new things they frequently look for opportunity to use | them. This preoccupation with the tool they just learned | usually happens at the cost of the product. They are looking | for a way to add things to the project rather than look for | ways to remove unnecessary things. | | The right state of mind for architect/designer is to seek | learning/understanding paradigms, tools, technologies, etc. | to have a library of solutions for when they are needed and | be able to recognise when it is the right time to do it, not | to try to find a way to use something they just learned. | Akronymus wrote: | As a junior who previously got thrown into the deep end on one | project, where I have been essentially useless for way too | long, but now am having actual guidance, and do one part at a | time: I can only second that. | | Also: train your juniors, please. Getting thrown into the deep | end REALLY hurts the speed of learning. | hkon wrote: | These are established and well known patterns. Better other | people get to learn them sooner. The seasoned developers have | probably experienced the problem they solve and the juniors | might be saved from doing the same mistakes as others have | before them. | | The argument that juniors will have a hard time understanding | it can be said about anything you don't like / don't want. And | then you can begin to lay it on thick. It's a convenient scape | goat for sure. ___________________________________________________________________ (page generated 2022-12-10 23:00 UTC)