Reputation: 1
Me and a friend are currently working on a new project together, and we would like it to be cross-platform, and look native on all platforms. I was looking for a cross-platform framework to use, and Flutter seemed like a really good option to use, because you can use a single codebase, and have a native UI across all platforms. But, is it even worth it to have a single codebase, if not only the UI presentation code, but also the application logic code has many OS specific functions? Even if we had a single codebase, and it didn't look native across platforms, there is still many conditionals.
He uses Windows, and I use Mac and Windows, so it's not a big issue for me to port changes from one codebase to the other, or vice versa. But, at the same time, it's also not an issue to test functionality in a single codebase across multiple OSes for me.
Our initial prototype was coded in Python and Tkinter, which worked fairly well for testing. Of course though, they did not look native across platforms, and there was still a lot of conditional statements in the first place. We weren't expecting it to be great for cross-platform support, which is why we started looking for others.
Upvotes: 0
Views: 171
Reputation: 96
You should strive to ensure that only the presentation code and implementation code of the data layer were platform-specific, the domain layer should be completely platform-independent, as well as the interfaces of the data layer. To avoid a large number of ifs, substitute different implementations of the view and data layer for the same interface
Upvotes: 0