android 패키지 분류 방법

조회수 2766회

안드로이드에서 보통 패키지로 클래스를 분류할 때 어떤 기준을 나누나요?

저는 지금까진

activity.화면별.oooActivity

fragment.화면별.oooFragmemnt

view.oooView

util.oooUtil

adapter.oooAdapter

대걍 이런 식으로 사용 중 이였는데, 임의로 만든 구조라서 이번에 제대로 바꿔보려 합니다. 그래서 다른 분들은 보통 어떤식으로 패키징을 하시는지 궁금해서 질문 남겨봅니다~.

감사합니다.

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 저는 세번째 프로젝트까지 화면 또는 기능별(1)로 패키징을 했었고, 현재는 activity, fragment 등 컴포넌트별(2)로 패키징을 하고 있는데요.

    (1)번 방법은 프로젝트 신규 인원이 프로젝트 구조를 파악하기 쉬웠습니다. 하지만 화면과 기능들이 많아지면서 패키지 수가 너무 많아져서 관리가 힘들었구요. 기능이 명확히 구분되지 않는 클래스를 어느 패키지에 소속시켜야 할지도 고민이 많이 되었습니다. 특히 어떤 프래그먼트나 뷰를 다른 패키지에서 재활용 하려 할 때 많이 찜찜했습니다.

    (2)번 방법은 기능 또는 화면 구분이 모호한 클래스를 어느 패키지에 소속시켜야 할지 고민하지 않아도 됩니다. 재활용 해도 찜찜하지 않구요. 찾고자 하는 파일이야 어차피 빠른 파일 찾기(Cmd+Shift+O)로 찾을 수 있어서 기능이나 화면별로 패키지를 나누지 않아도 찾는 데에 어렵지 않았어요. 프로젝트 개발기간이 길어질 수록 더 편하다는 느낌이 들었습니다. 단점이 있다면 하나의 패키지 안에 비슷한 기능을 하면서도 다른 곳에서 쓰이는 여러 클래스가 존재할 수 있는데 네이밍을 잘 지어주어야 했습니다. 예를 들면 ProductListInMainAdapter, ProductListInSearchAdapter 처럼 말입니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)