我的背景是 C#。我已经开始在 OS X 上使用 Xamarin Studio 来编写 iOS 应用程序。这是一个小应用程序,一旦完成 iOS 版本,我想为 Android 发布。
我正在尝试使用NSUserDefaults
来存储应用程序中使用的设置。我的第一关是使用NSDictionary
和保存字典。Xamarin 文档显示NSDictionary
继承自IDictionary
和IDictionary<NSObject, NSObject>
.
在我的存储库类中抽象出来是否值得NSObject
?然后我会在我的业务逻辑中使用本机 C# 类型,但让我的存储库/模型能够NSObject
在加载和保存数据时进行转换。
回到我关于 的第一段IDictionary
,我是否应该让存储库转换为/从IDictionary<NSObject, NSObject>
但IDictionary<string, string>
在代码库的其余部分中使用?我有一种感觉,如果我尝试这种策略,我将面临一场艰苦的战斗。
在这一点上,我有点杂乱无章,所以对这个平台很陌生,我不确定要问什么问题。也许总结我的困惑的一种方法是“我什么时候应该使用本机 C# 类型,什么时候应该使用 NS* 类型?”