2013-10-15 2 views
1

내 배경은 C#입니다. OS X에서 Xamarin Studio로 iOS 앱을 작성하기 시작했습니다. 작은 응용 프로그램이고 iOS 버전으로 끝나면 Android 용으로 출시하고 싶습니다.Xamarin을 사용하여 NS * 객체를 추상화합니다.

NSUserDefaults을 사용하여 앱에 사용 된 설정을 저장하려고합니다. 나의 첫 번째 패스는 NSDictionary을 사용하고 사전을 저장하는 것이었다. Xamarin 설명서는 NSDictionaryIDictionaryIDictionary<NSObject, NSObject>에서 상속 된 것을 보여줍니다.

내 저장소 클래스에서 NSObject을 추상화하려는 노력의 가치가 있습니까? 그렇다면 비즈니스 논리에서 네이티브 C# 유형을 사용하지만 데이터를로드하고 저장할 때 NSObject으로 /에서 변환 할 수있는 저장소/모델을 제공하십시오.

IDictionary에 대한 첫 번째 단락으로 돌아 가면 IDictionary<NSObject, NSObject>으로 변환하는 저장소를 만들어야하지만 나머지 코드베이스에서는 IDictionary<string, string>을 사용해야합니까? 나는이 전략을 시도 할 때 오르막 전투에 맞설 것 같은 느낌이 든다.

저는이 시점에서 약간의 분산 현상이 발생했기 때문에 아직 플랫폼에 익숙하지 않아서 어떤 질문을 할 지 확신하지 못합니다. 아마도 내 혼란을 요약하는 방법은 "언제 네이티브 C# 형식을 사용해야합니까? NS 형식을 사용해야합니까?"입니다.

답변

1

가능한 한 많은 코드를 재사용하여 응용 프로그램을 다른 Xamarin 지원 플랫폼으로 이식하려고합니까?

그렇다면 가능한 한 코드에서 NS * 유형을 추상화하는 데 시간을 투자하십시오.

그렇지 않은 경우에는 추상화하고 걱정하지 마세요. 아무 이유없이 추상화하면 불필요한 복잡성이 추가됩니다.

+0

가 나는 안드로이드 버전을 시작하기 전에 iOS 버전을 마무리하고 싶지만 그래, 나는 크로스 플랫폼을 목표로합니다 출시. –

관련 문제