-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question: Tight coupling with Navigation #105
Comments
Hello 👋 Thank you very much for your feedback. We are very glad that you liked Nivelir. Regarding the issue of using Nivelir directly from ViewController, we do this only in simple modules of the demo project. There are no restrictions for using Nivelir with the Coordinator pattern, on the contrary, it will help you get rid of a lot of boilerplate code. In our project, we do not use the Coordinator template, but we have "Logic" modules that can resemble them. Thanks! |
Thanks for your thorough answer! It makes total sense. I now have even more questions😅 Would you be able to provide simplified version of your "Logic" modules/Router entities? I am especially curious about how you do the container passing between logic modules and how you wire all of these together. Another big question is who creates/initiates – who creates screens, who creates logic modules/routers, how ViewController talk to these additional navigation entities? |
We will try to prepare for you a mini-project that is similar in structure to ours 👌 |
Thanks man!! You really don't have to do that, you are too kind🙏 |
Hey! Thanks for an amazing library, you did a tremendous job!
IMO Nivelir has one of the most well-designed APIs I've come across as an Apple platforms developer, especially given the amount of complexities it hides. Abstractions are well-thought and on-point. 🤌
I am considering to use Nivelir for my next project, because I found myself solving the same problems when doing the complex global routing, but one thing I am concerned about is tight coupling between ViewControllers/Views and Navigation by invoking navigation actions directly from ViewControllers/Views. Basically the problem that Coordinator pattern is intended to solve.
I do understand that this library is not opinionated about where to invoke navigation actions (which it makes it even more cool) and it can perfectly be abstracted and delegated away to Coordinator or other assisting entities.
The question is – what is your take on it? How are you dealing with your Presentation Layer (VC/View) "knowing too much" about Navigation? Or you simply don't focus on it and it works fine for you and you don't overstretch with abstractions here by introducing something like Coordinators?
Thanks!
The text was updated successfully, but these errors were encountered: