Skip to content

Hongdroid Hackathon / 2021.01.04 ~ 2021.01.25 / Sseuaengnim(쓰앵님)

Notifications You must be signed in to change notification settings

yamiblack/SseuAengNim

Repository files navigation

쓰앵님(공부 빼고 도와줄게, 넌 공부만 해)


서비스 소개

  • 본 서비스는 시험을 준비하는 학생 혹은 수험생이 공부에 필요한 플래너, 타이머, 그리고 커뮤니티 서비스를 제공한다.

  • '헤르만 에빙하우스의 망각곡선'와 같이 일정 기간 동안 복습을 하지 않으면 학습 내용을 잊게 되는 문제가 발생한다. 그리하여 학습자가 복습 주기를 설정하면 자동으로 이를 플래너에 추가해주는 등 해야될 공부 내용을 자동으로 플래너에 추가해준다.
  • D-day를 설정할 경우, 플래너에 자동으로 표시된다.
  • 자신이 공부한 시간을 기록할 수 있다.
  • 과목마다 다른 시험 시간을 매번 설정할 필요없이, 사전에 한 번만 설정해두면 버튼으로 바로바로 조작이 가능하다.
  • 자신이 필요한 정보를 바로바로 접할 수 있도록 자신이 원하는 주제의 게시판을 직접 만들 수 있으며, 게시글 작성도 가능하다.

상세 기능 소개

1. 플래너

  • 위 그림과 같이 계획을 추가하면 해당 일자 목록에 추가된다.

  • 위 그림과 같이 D-day를 설정하면 'D-4'에서 'D-2'로 변경된다.

2. 타이머

2.1 공부시간 타이머

  • 위 그림과 같이 '시작' 버튼을 터치하면 공부시간을 측정하고 기록할 수 있다.

  • 위 그림과 같이 기록된 공부시간을 확인할 수 있다.

2.2 시험 타이머

  • 위 그림과 같이 시험에 대한 타이머를 추가할 수 있다.

  • 위 그림과 같이 추가된 목록에서 해당 타이머를 선택하면 시험 타이머가 작동한다.

  • 위 그림과 원하는 수험생이 과목들을 추가할 수 있다.

3. 커뮤니티

  • 위 그림과 같이 게시판 목록을 확안하고 본인이 원하는 게시판을 추가할 수 있다.

  • 위 그림과 같이 게시판 내부의 게시글을 확인하고 게시글을 작성할 수 있다.

  • 위 그림과 같이 게시글의 세부 내용을 확인할 수 있다.

4. 기타 기능

4.1 회원가입 및 로그인

  • 위 그림과 같이 회원가입과 로그인을 통해 애플리케이션을 이용할 수 있다.

4.2 마이페이지

  • 위 그림과 같이 마이페이지에서 본인이 작성한 글과 댓글을 포함한 다양한 정보를 확인하고 자동 로그인 및 닉네임을 변경할 수 있다.

Package 및 Class 소개

  • MVC Pattern 적용하면서 프로젝트를 진행했다.

1. adapter Package

  • Data와 View를 연결하는 역할의 Adapter들을 분류한 Package이다.
  • BoardRecyclerViewAdapter : Firestore에서 게시판 목록을 읽어와 표시해주는 Adapter이다.
  • CommentRecyclerViewAdapter : Firestore에서 게시글의 댓글을 읽어와 표시해주는 Adapter이다.
  • MyCommentCommentRecyclerViewAdapter : Firestore에서 내가 쓴 댓글을 게시글별로 분류하여 표시하는 Adapter이다.
  • MyCommentRecyclerViewAdapter : Firestore에서 내가 댓글을 작성한 게시글을 표시하는 Adapter이다.
  • MyPageViewPagerAdapter : 마이페이지의 내가 쓴 글/내가 쓴 댓글 뷰페이저를 구현하는 Adpater이다.
  • OnStudyTimerItemClickListener : 공부 타미어와 관련된 내부의 Item을 터치하기 위한 Adapter에서 사용되는 Interface이다.
  • OnTestTimerItemClickListener : 시험 타이머와 관련된 내부의 Item을 터치하기 위한 Adapter에서 사용되는 Interface이다.
  • PlannerRecyclerViewAdapter : Firestore에서 플래너 목록을 읽어와 표시해주는 Adapter이다.
  • PostRecyclerViewAdapter : Firestore에서 게시판별 게시글을 표시하는 Adapter이다.
  • StudyTimerRecyclerViewAdpater : Firestore에서 공부 시간 목록을 읽어와 표시해주는 Adapter이다.
  • TestTimerRecyclerViewAdapter : Firestore에서 시험 타이머 목록을 읽어와 표시해주는 Adapter이다.
  • TimerPagerApdater : Timer내부의 뷰페이저를 구현하는 Adapter이다.

2. customView Package

  • 사용자에게 수월하게 보여지기 위해서 사용되는 설정을 분류한 Package이다.
  • AppGlide : URL를 통한 ImageView 표시를 수월하게 사용하기 위한 Class이다.
  • stickyScrollview.kt : ScrollView와 TabBar를 수월하게 연결해서 사용하기 위한 Class이다.

3. model Package

  • 각 기능에 맞게 Data들을 나타내기 위해 분류한 Package이다.
  • BoardData : 게시판에 대한 Data를 구성하는 Class이다.
  • CommentData : 댓글에 대한 Data를 구성하는 Class이다.
  • PlannerData : 플래너에 대한 Data를 구성하는 Class이다.
  • PostData : 게시글에 대한 Data를 구성하는 Class이다.
  • StudyTimerData : 공부 타이머에 대한 Data를 구성하는 Class이다.
  • TestTimerData : 시험 타이머에 대한 Data를 구성하는 Class이다.

4. ui Package

4.1 community Package

  • 게시판에서 사용되는 화면들을 분류한 Package이다.
  • AddBoardActivity : 게시판 추가에 대한 Activity이다.
  • CommunityFragment : 커뮤니티에 대한 Fragment이다.
  • PostDetailActivity : 게시글 세부 정보에 대한 Activity이다.
  • PostListActivity : 게시글 목록에 대한 Activity이다.
  • PostWriteActivity : 게시글 작성에 대한 Activity이다.

4.2 membership Package

  • 회원가입 및 로그인에서 사용되는 화면들을 분류한 Package이다.
  • JoinActivity : 회원가입에 대한 Activity이다.
  • LoginActivity : 로그인에 대한 Activity이다.

4.3 myPage Package

  • 마이페이지에서 사용되는 화면들을 분류한 Package이다.
  • MyPageFragment : 마이페이지에 대한 Fragment이다.
  • PrivateSettingsActivity : 마이페이지에서 개인 설정에 대한 Activity이다.

4.4 planner Package

  • 플래너에서 사용되는 화면들을 분류한 Package이다.
  • AddPlanActivity : 플래너에서 계획을 추가에 대한 Activity이다.
  • PlannerFragment : 플래너에 대한 Fragment이다.

4.5 timer Package

  • 타이머에서 사용되는 화면들을 분류한 Package이다.
  • StudyTimerFragment : 공부 타이머에 대한 Fragment이다.
  • TestTimerFragment : 시험 타이머에 대한 Fragment이다.
  • TimerFragment : 타이머에 대한 Fragment이다.
  • TimerHistoryActivity : 공부 시간의 기록에 대한 Activity이다.

5. 그 외 Class

  • Constants.kt : 애플리케이션을 개발할 때 사용되는 상수와 함수에 대한 Kotlin 파일이다.
  • MainActivity : SplashActivity 뒤에 나타나는 메인 화면에 대한 Activity이다.
  • SplashActivity : 애플리케이션이 시작될 때 나타나는 Splash에 대한 Activity이다.

추후 보완 내용(예정)

  • 복습 주기 및 종료 일자 반영
  • 목록에서의 수정 및 삭제 반영
  • 기타 버그 수정

사용 기술 스택

  • Android(Java & Kotlin)
  • Firebase

About

Hongdroid Hackathon / 2021.01.04 ~ 2021.01.25 / Sseuaengnim(쓰앵님)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published