This channel is seriously underrated! I used to think there wasn’t much content out there focusing on best practices and real-world experience-just endless tutorials on syntax and libraries. But I was wrong; this is some top-notch content. By the way, me and a whole team of Software Engineers are working on a project to produce similar content, and it’d be amazing if you’d consider joining us!
Great video and clear explanation! Could you make a video explaining the Redux toolkit architecture? I think it is kinda complex I mean the holistic part of it. Not the actual implementation, but the concepts of how it is built and how it works.
Why is it called repositories instead of just "external data"? If we talk to clients via one port, what's the purpose of all the other ports? Do they simply mean external interfaces that can be changed according to the client like maybe Http port, rpc port and so on? Also where are the adapters in your code? The controllers are the adapters?
Good questions. The term Repository comes from a Repository Design Pattern which is a collection-like data-mapping layer between a domain and data source. Ports are divided by domain, so one port can implement for ex. post-related interfaces, while another one tackles user-related code. And yes, they're just interfaces. Controllers and repositories are 2 types of adapters in our case, yes.
I have to admit that I cannot tell the difference between those two models. I guess the example is too easy to see any (maybe if we would take as an example a distributed system with many applications talking to each other) because in layer model you have controller -> service -> repository and hexagonal there is the same way of communication. In spring boot for example we will not have any implementation of repository interface because spring boot will take care of it for us.
This channel is seriously underrated! I used to think there wasn’t much content out there focusing on best practices and real-world experience-just endless tutorials on syntax and libraries. But I was wrong; this is some top-notch content.
By the way, me and a whole team of Software Engineers are working on a project to produce similar content, and it’d be amazing if you’d consider joining us!
Thank you so much for your kind words! 🎉
Good luck with your project, unfortunately I have no free time as YT takes a lot of it 😄
Great video and clear explanation! Could you make a video explaining the Redux toolkit architecture? I think it is kinda complex
I mean the holistic part of it. Not the actual implementation, but the concepts of how it is built and how it works.
Why is it called repositories instead of just "external data"?
If we talk to clients via one port, what's the purpose of all the other ports? Do they simply mean external interfaces that can be changed according to the client like maybe Http port, rpc port and so on?
Also where are the adapters in your code? The controllers are the adapters?
Good questions. The term Repository comes from a Repository Design Pattern which is a collection-like data-mapping layer between a domain and data source.
Ports are divided by domain, so one port can implement for ex. post-related interfaces, while another one tackles user-related code. And yes, they're just interfaces.
Controllers and repositories are 2 types of adapters in our case, yes.
I have to admit that I cannot tell the difference between those two models. I guess the example is too easy to see any (maybe if we would take as an example a distributed system with many applications talking to each other) because in layer model you have controller -> service -> repository and hexagonal there is the same way of communication. In spring boot for example we will not have any implementation of repository interface because spring boot will take care of it for us.
Exactly, Spring Boot takes care of the ports when you use a repository 🙂
@SoftwareDeveloperDiaries so it seems like when you writing layered architecture in spring boot it looks like a hexagonal one 😅
Need more HLD content