폴더링

  1. Network (서버 통신 로직)
  2. Presentation (뷰 관련 로직)
  3. Utils (유틸성 클래스, 함수들) ex. TextWatcher, multi-part 이름받는 함수/클래스

컨벤션

1. TODO, FIXME 주석문 이용합니다.

단기 처방 및 완벽하지 않은 해결책일 경우 해당 주석문을 사용합시다.

2. 클래스와 함수명은 반드시 그 의도를 명확하게 구분할 수 있는 이름으로 만듭니다.

private fun setVisibleInEmptyUserPostView(){
    cl_empty_user_post.visibility = View.VISIBLE
}

2-1). 함수 사용시 그 의도가 명확하지 않은경우 간단하게 주석으로 의도를 기술합니다.

혹은 함수 내부에서 명확하지 않은 부분은 주석으로 명확한 의도를 기술합니다.

override fun onActivityResult(
    requestCode: Int,
    resultCode: Int, 
    data: Intent?
) {
	super.onActivityResult(requestCode, resultCode, data)
    
    //이미지를 선택하고 결과가 들어온경우 
	if (requestCode == REQUEST_CODE_PICK_IMAGE &&
        resultCode == Activity.RESULT_OK && 
        data != null
    ){
        //...
    }