쿠루마켓 ( 신발 커뮤니티 장터 )

  • 커뮤니티 형태의 장터입니다.
  • 판매글과 일상글을 올릴 수 있는 게시판입니다.

개발 동기

  • 인턴 기간 동안 많은 솔루션들이 모바일화 되는 것을 계기로 모바일 앱을 개발하게 되었습니다.
  • 평소에 신발에 관심이 많아 컨셉을 신발 커뮤니티로 잡았습니다.

개발환경

  • 개발 언어 : Android Studio(Java)
  • 개발 서버 : Firebase
  • 개발 인원 : 1명

기능상세

플레이스토어

플레이스토어

  • 구글 플레이스토어에 쿠루마켓을 검색하시면 앱을 다운 받으실 수 있습니다.

메인화면 / 로그인 / 비밀번호 재설정

스플래시 로그인 비밀번호재설정

  • 메인화면,로그인 화면과 비밀번호 재설정 화면입니다.
  • 메일주소를 치면 비밀번호 재설정 메일이 발송됩니다.

게시판 / 상세보기

리스트 상세보기

  • 게시판 : 이미지 중심의 어플리케이션이기에 쿼리의 효율성을 우선시 했습니다. 한 번에 모든 게시물을 가져오는 쿼리로는 발열 증상 및 데이터의 낭비가 심했습니다. 따라서 이를 개선하고자 스크롤의 위치에 반응해 게시물을 갱신하도록 수정하였습니다. CRUD 기능 역시 모두 구현하였습니다.
  • 상세보기 : 게시글 전체 리스트에서는 정해진 개수의 사진과 글을 확인할 수 있습니다. 이 때 게시물을 클릭하면 상세 읽기 페이지로 이동합니다. 이 곳에서는 게시물의 모든 글과 사진을 볼 수 있습니다. 작성한 글의 수정과 삭제가 가능합니다.
  • 미디어 플레이어 : ExoPlayer를 사용하여 동영상이 재생되도록 했습니다. 페이지가 넘어가거나 홈 버튼을 누를 때도 동영상 재생이 멈추도록 구현했습니다.
  • 이미지 : 이미지는 glide를 사용했습니다.

회원가입 / 회원정보 입력

회원가입 회원정보

  • 회원가입 화면과 회원정보 화면입니다.
  • 회원정보 화면의 유저 아이콘을 누르면 사진촬영 버튼과 앨범 버튼이 나옵니다.
  • 사진촬영 버튼을 누르면 카메라 권한 허용/거부 창이 나옵니다.
  • 앨범 버튼을 누르면 앨범 권한 허용/거부 창이 나옵니다.
  • 프로필 이미지를 추가할 수 있습니다.

회원목록 / 마이페이지

회원목록 회원정보창

  • 회원목록 : 가입한 회원들의 전체 목록을 보여주는 페이지입니다. 차후에는 해당 페이지에서 회원 검색과 쪽지 기능 을 만들어 신발 거래가 가능하도록 만드는 것이 목표입니다.
  • 마이페이지 : 회원가입 당시 등록했던 프로필 사진과 이름, 전화번호, 생년월일, 주소 등 회원정보를 보여주는 마이 페이지입니다. 다음 기능 추가 시 마이 페이지에서 회원정보 수정 기능을 추가할 계획입니다.

리뷰

  • 쿠루마켓 제작 과정은 모바일 프로그램에 대한 전반적인 이해를 높이는데 큰 도움을 주었습니다.
  • 파이어베이스를 사용하며 서버에 대한 준비 없이 앱을 빠르게 만들 수 있는 것은 장점이지만,만약 앱이 조금 이라도 복잡한 로직이나 쿼리에 조인이 들어간다면 파이어베이스 대신 데이터베이스 설계와 라이브러리를 적절히 사용하는 것이 좋다고 생각했습니다. 또한 사업에 대한 아이디어를 빠르게 개발 및 배포해 대중들의 반응을 살펴보기 좋다고 생각합니다.
  • 모바일 앱은 효율이 중요하다는 것을 깨달았습니다. ERP도 물론 효율이 중요하지만, 모바일 앱은 핸드폰 발 열이나 와이파이가 느려지는 등 사용자가 체감할 수 있는 요소가 많아 쉽게 불만이 생길 수 있다는 생각을 했 습니다. 현재 읽고 있는 클린코드를 완독하고 실천하며, 알고리즘 공부도 열심히 하겠다고 다짐했습니다.
  • 어느 정도의 기능이 갖춰지면 사용자들에게 중요하게 다가오는 것은 기능보다도 디자인이라는 생각을 했습니 다. 프로젝트가 끝나면 반응형 앱을 만들기 위해 React.js를 공부할 계획입니다.
  • 파이어베이스와 안드로이드의 문서를 보면서 개발했던 점이 좋았습니다. 웹 개발이나 ERP 개발 당시는 많은 부분을 주입식이나 암기에 의존하는 부분이 컸지만, 이번 프로젝트에서는 문서를 많이 참고하면서 개발 을 했습니다. 어떤 기능에 대한 설명을 보고 개발을 하니 외우지는 못해도 내가 이해하고 쓸 수 있다는 느낌이 좋았습니다. 더불어 앞으로 어떤 언어나 기능을 대하더라도 찾아서 쓸 수 있다는 자신감이 생겼습니다.