아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
대단한멧새102
대단한멧새10219.02.25

안드로이드에서 디자인 패턴?

안드로이드에선 주로 어떤 프로그래밍 디자인 패턴을 사용하나요?

55글자 더 채워주세요.
답변의 개수
2개의 답변이 있어요!
  • 객체를 하나만 써야 하는 경우 즉 스레드 풀, 캐시, 사용자 설정과 레지스트리 설정을 처리하는 객체와 그래픽 카드, Wi-Fi나 bluetooth 장치를 위한 디바이스 드라이버와 같은 경우는 해당 클래스의 인스턴스가 하나만 만들어지고, 그 인스턴스에 대한 전역 접근할 수 있게 하는 싱글턴 패턴을 쓰게되고

    뉴스피드와 같이 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들에게 연락이 가고 자동으로 정보가 갱신되는 1:N 의 관계를 정의하는 곳에는 옵저버 패턴을 쓰게 되죠.

    디자인 패턴이라는 것이 꼭 한가지만을 고집해서 특정 패턴만을 사용하지는 않습니다.

    경우에 따라 여러 종류의 패턴으로 정의되고 있으며 필요에 따라 사용되지요.

    이와 관련된 잘 정리된 사이트가 있으니 참고하셔도 되겠습니다.


  • 기본적으로 activity class 에서 view, constroller를 구현한다는 가정하에 mvc 패턴에 가깝다고 할 수 있습니다.

    위와 같은 구조에서는 activity class에 view의 조작, 비즈니스 로직이 들어가다 보니 사이즈가 큰 프로젝트에선 유지보수가 매우 어렵습니다.

    요즘 구글에서 위와 같은 약점을 인정하고 공식적으로 android architecture component라는 라이브러리를 지원을 하고 있습니다.
    위와 같은 라이브러리와 옵져버패턴을 기초로 하는 rxJava와 dataBinding, LiveData 등을 활용하면 mvvm 패턴에 가깝게 구성을 할 수 있습니다.