0

앞으로 다른 플랫폼 (즉, Mac OSX)에서 다른 프로그래밍 언어로 다시 작성하려는 프로그램을 C#으로 작성하고 있습니다. 응용 프로그램은 사용자 정의 설정을 저장해야합니다. 내 질문은, 어떤 프로그래밍 언어로 읽을 수있는 형식으로 설정 파일을 저장해야합니까, 아니면 .NET에 app.config을 사용해야합니까?응용 프로그램 설정 파일이 다른 언어로 작성된 동일한 프로그램에서 작동해야합니까?

또한 각각의 이점은 무엇입니까?

답변

1

글쎄, 다른 플랫폼에서 어떻게 구현할 것인지에 달려 있습니다. 예를 들어 모노를 사용하는 경우 app.config이 좋습니다. 하지만 그렇지 않으면 좀 더 중립적 인 파일 형식을 사용하는 것이 좋습니다. XML을 손으로 편집 할 필요가없는 경우에는 특히 XML이 분명합니다. 또는 JSON을 사용할 수도 있고, 한 줄에 한 줄짜리 간단한 형식으로 key = value을 사용할 수도 있습니다.

물론 app.config XML이지만 .NET에만 해당되는 XML 형식입니다. app.config이 사용하는 형식은 일반적으로 자신의 설정 파일을 만드는 경우 일반적으로 사용하지 않는 형식입니다. 은 다른 플랫폼에서 너무 많은 번거 로움없이 app.config 파일을 읽는 것이 확실하지만, 그것에 대해 가장 자연스러운 방법은 아닙니다.

형식 선택은 부분적으로 설정이 무엇인지에 따라 결정됩니다. 예를 들어 하나의 구조화되지 않은 목록이 충분합니까? 예를 들어 XML에서 제공되는 트리 계층 구조의 이점이 있습니까?

+0

답변 해 주셔서 감사합니다. 나는 Mono를 사용하는 것을 고려해 왔지만 읽은 것에서는 뒤처지고 뒤쳐지기 위해 고생하는 듯 보인다. 설정 (예 :'ini ')을 저장하는 데 불필요한 XML 이외의 표준 크로스 플랫폼 형식이 있습니까? – Andy

+0

@Andy : JSON이 있습니다.하지만 개인적으로 XML을 사용하려고합니다. 약 * 모든 언어에 대한 XML 파서를 찾을 수 있습니다. 뒤에있는 모노에 관해서는 - 그것은 당신이 필요로하는 것에 달려 있습니다. 언어 지원 측면에서 유지되지만 WPF는 찾을 수 없습니다. –

+0

Typical. 내 응용 프로그램은 WPF이고, WPF를 지원하는 모노 대체 프로그램이 있습니까? 솔직히 말하면, 잠시 후에 내 앱은 두 개의 파일 경로 만 저장하면되므로 과도하다고 생각하는 이유가 있지만 그렇게 생각하면 아무것도 남을 것입니다! 아마도 XML이 지원되는 형식 일 가능성이 높은 것처럼 XML을 보게 될 것이고 앞으로 더 많은 설정을 쉽게 추가 할 수있을 것입니다. 명확히하기 위해, 같은 플랫폼에있는 동일한 프로그램이 동일한 설정 파일을 사용할 수 있도록하는 것이 좋은 생각이라고 생각하십니까? 다른 사용자가 다른 플랫폼을 만들도록 강요하는 것과는 대조적으로 ... – Andy

관련 문제