在 Xamarin 中使用 .NET 包装的 API 的优势

Advantages of using APIs wrapped with .NET in Xamarin

大约一年前,我制作了一个 iOS 应用程序,可以在您所在位置附近找到任何类型的餐馆并显示有关它们的信息。我使用 FourSquare api 进行了一次网络服务调用,以获取以 json 格式返回的所有数据,然后对其进行解析并在应用程序的 UI 上显示信息。现在我想使用 Xamarin.Android 创建一个 android 应用程序,因为我正在学习使用 Xamarin 工作室和 C#。当我创建一个 Xamarin.Android 应用程序并转到包然后添加包时,我看到有一个 Foursquare api 包,它周围有一个 .NET 包装器。这是网站 url:

https://www.nuget.org/packages/Foursquare.Api/

所以我的问题是这是如何工作的?添加这个包是否意味着我不必再进行网络服务调用,而是所有数据都存储在这个包中,我只需要像从本地数据库获取信息一样获取所有数据?使用这个包而不是仅仅调用 Foursquare 的 Web 服务有什么好处?

这样想:

这个 Foursquare API 只是您要使用的 Web 服务的 .NET 包装器。因此,有人已经为您完成了所有艰苦的工作,因此您可以简单地在应用程序中使用返回的数据。

这对你意味着什么?

嗯,这意味着您不必编写任何 REST 消费代码,您可以将更多精力放在实际应用程序以及您需要基于 Foursquare 对象实现的任何业务逻辑上。

为避免进一步混淆,此数据的获取方式与您编写自己的 Web 服务以访问来自 Foursquare API 端点的数据的方式相同。

优点:

  • 已经为你写好了
  • 您不需要了解他们的 REST API
  • 通常遵循每种语言的最佳实践,因此易于使用(创建的对象、方法等)

缺点:

  • REST 端点可能会更新,并且在更新之前不会反映在包中
  • 如果项目不是开源的,框架中的任何 bugs/issues 都很难解决
  • 可能是缺少有关如何使用包装器的文档