mapbox / mapbox-navigation-ios

Turn-by-turn navigation logic and UI in Swift on iOS
https://docs.mapbox.com/ios/navigation/
Other
860 stars 310 forks source link

Merge MapboxNavigation and MapboxNavigationUI #110

Closed bsudekum closed 7 years ago

bsudekum commented 7 years ago

I think we should look into merging MapboxNavigationUI into MapboxNavigation. I think one of the big reasons against this is bloat; you'd have to use AWS polly + core even if you don't use it. If this is the only standing reason, let's investigate conditionally importing these libraries.

/cc @1ec5 @frederoni

1ec5 commented 7 years ago

There are other reasons to avoid mixing low-level navigation logic with UI view controllers and their logic. As an example, it would be straightforward to modify the non-UI library to run on watchOS or use it in other use cases where a conventional turn-by-turn UI is undesirable. Blurring the lines between the navigation logic and the UI elements will inevitably make it more difficult for a developer to use just the logic but not the UI.

Making the AWS dependencies optional is an orthogonal issue that we should consider regardless, to improve the experience for applications that need to use the UI with other speech engines (say, for Chinese support).

What's the motivation behind merging the two libraries?

bsudekum commented 7 years ago

Keeping as is.