iOS를 작업해보다보면 리소스 관리에 많은 고민을 하게 된다.
string으로 파일을 상당량 불러오게 된다.
let icon = UIImage(named: "settings-icon")
let font = UIFont(name: "San Francisco", size: 42)
let color = UIColor(named: "indicator highlight")
let viewController = CustomViewController(nibName: "CustomView", bundle: nil)
let string = String(format: NSLocalizedString("welcome.withName", comment: ""), locale: NSLocale.current, "Arthur Dent")
이 모든 String들을 어떻게 관리하며, 파일을 한번 바꾸려면 어떻게 한담.
골치도 이런 골치가 없다.
만약 한 파일로 캡슐화를 시켜 관리한다해도 맨날 그걸 열심히 만들고 있자니...
이런 문제를 해결하는 훌륭한 라이브러리가 있었다.
바로바로 R.swift. (Rx나 이런거랑 상관 없음ㅋㅋ)
let icon = R.image.settingsIcon()
let font = R.font.sanFrancisco(size: 42)
let color = R.color.indicatorHighlight()
let viewController = CustomViewController(nib: R.nib.customView)
let string = R.string.localizable.welcomeWithName("Arthur Dent")
이렇게 편리할 수가.
일단 pod 'R.swift' 하고 pod install
아래와 같이 Build Phases를 더해준다.
그러면 리소스 파일을 더해줄 때마다 빌드를 한번씩 해주고 호출해서 사용을 하면 된다.
컴파일 타임시에 생성이 되니 리소스를 수정한다면 꼭 빌드 한번을 돌려주자.
좀 더 깔끔하게 처리를 할 수 있다.
하하하