2015-02-03 4 views
1

저는 Swift와 iOS 프로그래밍에 초보자이며, 현재 Swift 앱을 손에 쥐고 있습니다. 나는 Constants.swift 파일 (기본적으로 응용 프로그램에서 사용하는 상수를 저장하는)을 넣어야하는이 문제를 겪었으며 혼란은 주로 MVC 논리에 의해 발생합니다. 내가 적당하다고 생각하는 두 가지 옵션이 있습니다.Constants.swift를 넣을 위치는 어디입니까?

  1. MVC 프레임 워크 외부에 Constants.swift을 넣어 특정 파티에 속하지 않도록하십시오. 이론적 설명 :이 방법은 모든 구성 요소에서 편리하게 참조 할 수 있습니다.

  2. 컨트롤러에 Constants.swift을 넣습니다. 이유 : 컨트롤러는 응용 프로그램마다 다르므로 Constants.swift도 마찬가지입니다. 모델과 뷰는 일반적이므로 상수를 저장하는 데 사용해서는 안됩니다.

그러나 위의 두 가지 중 어느 것을 사용해야하는지, 또는 더 좋은 옵션이 있는지는 알 수 없습니다. 너 모두 어떻게 생각하니?

+0

정말 어떤 유형의 상수와 무엇을 사용하고 있는지에 따라 달라집니다. –

답변

0

난 당신이 그들과 함께 할 그들처럼 액세스 할 수있는 클래스에 상수를 분리해야한다고 생각 :

Configurations.Constants.width or Car.Constant.speed 

당신이 그들을 저장하는 정적 특성을 가진 구조체를 사용할 수 있습니다.

사실인지 모르지만 상수에 따라 다르지만 하나의 파일에 모두 프로그램 상수가 있거나 일반적으로 모든 상수에서 액세스해야하는 상수가있는 파일은 하나도 없습니다. 다른 구성 요소는 설계 문제를 나타낼 수 있습니다. 가까운 클래스 나 관련된 클래스에 저장하면 Cocoa의 MVC에 문제가 없습니다.

+1

이것은 단지 상수 접근을 어색하게 길게 만든다. 전역 상수는 클래스의 일부일 필요는 없으며 클래스 상수는 상수라는 사실을 알릴 필요가 없습니다. –

+1

구조체에 그룹화하고 정적으로 만들려는 경우 Constants라고 할 필요는 없지만 그 문제가 무엇인지 모릅니다. 그리고 MVC에서 상수를 사용하는 방법에 대해 질문합니다. 그가 말한 것처럼 상수가 모델에 존재한다는 것은 아무런 문제가 없습니다. 실제로 상수가 무엇인지에 달려 있습니다. 어쨌든 모든 상수를 가진 파일을 갖는 것은 일반적이지 않습니다. – rdprado

관련 문제