We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.

Radu Toev • 5 years ago

Hi. Very informative article, so thank you for spending the time writing it.
Would you mind sharing your thoughts on implicit vs explicit dependencies. By the looks of it all dependencies are implicit.

psisoyev • 5 years ago

Hi, thank you for reading!

Actually, almost all dependencies between modules (services) are explicit.
The only implicit dependency is `canoeClient`.
For example:
We have a `chatStorage: `ChatStorage.Service[Any]` dependency in `SubscriptionLogic.Live` service.
This dependency is passed in `Main#buildProgram`, where we instantiate chatStorage by calling `with ChatStorage.InMemory`.
`ChatStorage.InMemory` has a value `chatStorage`, which is exactly the value `SubscriptionLogic` is looking for.
I hope I have answered your question. If not - please don't hesitate to ask.

Aleksey Yakushev • 5 years ago

Thanks. How much time you spend to study ZIO in general, before writing this blog articles. I try to use ZIO, but I can't deep understand profit of using it. It looks like there is not enough knowledge in scala or effects or something else. Could you recommend something to read or themes ti study?

psisoyev • 5 years ago

Hi. It's hard to say how much time I have spent on it as I was reading about it and watching videos already a while ago. The biggest profit I see is that you fully control the behavior of your application. Also, ZIO provides a great concurrency toolkit. I would advise going through official ZIO documentation https://zio.dev/docs/overvi... and watching https://www.youtube.com/wat... . In this video, John shows some great usage examples. My biggest advice is to try it. For me, the easiest way to learn something is by building something. Try checking out my project https://github.com/psisoyev... and playing with it. Building your own application would be even better. Have fun!

Sergey Shevchik • 5 years ago

Thank you! This article is a great explanation to start with. Everything is so clear :) You would be a good mentor

psisoyev • 5 years ago

Hi, thank you for your warm words :)