I have been working on a mobile application for one week, for personal education and enhancement. I have some experience with WPF and MVVM, I have no experience with mobile development.
The idea is to make a cross platform application, while testing some coding philosophies :
- Reactive programming (ReactiveUI)
- Vertical slicing, if possible (blog 1, blog 2)
I plan to use the following components :
- Prism.Unity.Forms : seems to provide application structure, ioc, navigation, seems widely used, and done by top notch people
- ReactiveUI, ReactiveUI.XamForms, ReactiveUI.Fody : WhenAnyValue, ObservableAsPropertyAttribute, ReactiveAttribute (tutorial), not using them looks like a huge missed opportunity to me
The current structure of my Visual Studio is the following :
- Csproj
- ViewModels
- CreateExercisePageViewModel
- HomePageViewModel
- Views
- CreateExercisePage
- HomePage
- ViewModels
I managed the following :
- Set the HomePage as the initial Page, contained inside a NavigationPage, by using the navigation functionalities of Prism.
- Declare a named button in XAML, set its Command property through a OneWay binding created in code behind, using ReactiveUI functionalities (like shown in the tutorial, using the WhenActivated method)
- Navigate to the second page (CreateExercisePage), using Prism navigation
One issue is that there are a few articles on the web, that do comparisons between Prism and ReactiveUI (google Prism vs ReactiveUI).
So the question is : Am I doing something wrong by using both at the same time ?
I have no problem for now, but will I run into one ? And even if I don't, does it make sense to use them both at the same time ?