Skip to content
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

Migration to MVVM architecture #7

Open
rvost opened this issue Dec 23, 2022 · 0 comments
Open

Migration to MVVM architecture #7

rvost opened this issue Dec 23, 2022 · 0 comments

Comments

@rvost
Copy link
Contributor

rvost commented Dec 23, 2022

In PR #6 you mentioned a plan to move to MVVM architecture. I made a small sketch of how this can be done from the state of that PR:

PboExplorerMVVM drawio

Pseudo-UML on the left shows how PboExplorerWindow state can be split into sub-view-models. Most of the current code belongs to view models layer and can be reused now and probably refactored later.

Although adoption of MVVM doesn't require any libraries it would be beneficial to bring one to have INotifyPropertyChange and Relay (aka Delegate) commands implemented. I suggest MVVM Community Toolkit as it only contains the essentials and can be easily replaced if needed.

I've picked #6 as a starting point because there will be conflicting changes in PboExplorerWindow xaml and code-behinde, also some work of splitting PboExplorerWindow into subview already done in that PR.

If suggestions look good, I can do this migration while you working on BisUtils, but PR need to be merged first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant