마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

values(strings, integers 등등) 관련 질문드립니다..

0 추천
안녕하세요

리소스 관리 관련해서 궁금한것이 있습니다..

 

저는 코드에 들어가는 문자열, 색깔, 크기 등등 모든 리소스들을

value 넣고 사용중입니다.(이렇게 하는게 원래 당연한?..건지는 모르겠지만)

 

근데 제가 좀 심하게 분리해서 사용하는 편입니다..

예를 들어 색깔로 치면 #FFFFFF 흰색이 있어도,

어느 페이지의 배경, 어느 페이지 어떤것에 버튼의 배경 등등 흰색 하나도 나누는 편입니다..

integer로 치면 0 관련해서도 for문에 0, position에 0, index의 0, 뭐 시작의 0

이렇게 하나하나 나누다 보니 0만해도 수십개가 되는편입니다...

 

유지보수나 누군가 디컴파일?해서 코드를 볼때 감추기 위해서 사용한다는 정도로 알고 사용중인데

다른 분들도 저 처럼 오바?해서 나누는지(아니면 이렇게 하는게 당연한건지..)

제가 좀 심한건지 궁금합니다..

 

앱 규모가 그리큰것도 아니고(큰건지 아닌건지도 잘 모르겠는.. 화면만 봤을때는 한 40개의 화면구조..?)

이제 반정도 만든것 같은데..

리소스당 몇백줄.. 이게 정상인건지 궁금합니다..

 

이와 관련하여 하나 더 궁금한것은 성능관련해서

코드에서 리소스에서 빼서 쓸 때 예를들어 getString(R.string.user_id)가 있을때

이 부분을 필요할때 버튼 눌렀을때 .setText(getString(R.string.user_id));

이런식으로 사용하는 것과

아니면 onCreate에서 따로 String userId = getString(R.string.user_id);

이렇게 해서 사용하는 것중 어느것이 정석적인 방법인지 궁금합니다..

 

긴글 읽어주셔서 감사합니다
익명사용자 님이 2016년 11월 25일 질문

1개의 답변

0 추천
 
채택된 답변
  1. 색은 하나만 두고 가져다 쓰는 편입니다. 
  2. 중복되는건 가급적 자제 합니다. 
  3. 누군가 디컴파일 하면 어떻습니까? 코드가 중요한게 아닙니다. 어차피 서비스가 중요한거라서 말이죠 
  4. setText(R.string.user_id) 식으로 씁니다. 
aucd29 (218,390 포인트) 님이 2016년 11월 25일 답변
감사합니다
4번이 제일 궁금했었어요 ㅎ
아무래도 String으로 한번더 저장하면 쓸데없는 낭비겠죠?
...