2011-02-03 4 views
5

Apple은 Core FoundationFoundation Kit을 통해 사용자 기본 설정을 관리하기위한 설명서를 제공합니다. 또한 실제로는 다르다는 것을 제외하고는 어느 하나를 선택하는 데 도움이되지 않습니다 ("무료가 아닌 브리지").NSUserDefaults 대 CFPreferences 고려해야 할 사항

그래서 흥미가 있습니다. 응용 프로그램의 구성 메커니즘을 선택하는 것이 좋습니다. 아니면 동전을 던져야하나요?

감사합니다.

답변

4

NSUserDefaults을 사용해야합니다. 이는 기본 선택입니다. 나는 당신이 CFPreferences을 사용할 수 있다고 생각하지만, 당신이 그 선택을해야 할 충분한 이유가 없다면, CF -API를 명확히 알 수 있습니다.

+0

우연히 'CFPreferences'를 우연히 발견하지 못했습니다.이 기능은 여러 가지 사과 안내서에서 사용되었습니다. [this one] (http://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/PreferencePanes/Tasks/Sample.html#//apple_ref/doc/uid/20000710-BABFCABJ). 그러나 입력에 감사드립니다, 나는 경험을 가진 누군가로부터 듣고 싶었습니다. –

+4

또한, CF-API *를 제거하는 특별한 이유가 있습니까? –

+4

@ Nikita Rybak : 일반적으로 사용하기가 더 어렵습니다 (CF 객체 자동 실행 기능이 내장되어 있지 않기 때문에). CFPreferences는 특별히 자신의 응용 프로그램뿐만 아니라 모든 응용 프로그램의 기본 설정을 사용하여 작업 할 수 있도록 설계되었으므로 실제로 더 쉽습니다. 자신의 환경 설정 작업을하기 때문에 NSUserDefaults가 더 쉽습니다. 그래서 그 이유 때문에 사용해야합니다. –

0

NSUserDefaults는 사용자 범위를 읽고 쓰는 반면 CFPreferences는 사용자 범위와 컴퓨터 범위 모두에 쓰기를 지원합니다. 동일한 컴퓨터에서 응용 프로그램을 사용하는 모든 사용자에게 적용 할 수있는 컴퓨터 단위 설정에 CFPreferences를 사용할 수 있습니다.