2025.01.06 ~ 2025.02.21 / 6명
-
PrePay는 여러 사람이 함께 사용하는 가게에 금액을 미리 선결제하고, QR 코드를 통해 간편하게 결제할 수 있도록 돕는 어플리케이션입니다.
-
사용자들은 그룹을 생성하고 참여할 수 있으며 그룹에 등록된 가게에서 선결제된 금액을 사용하여 결제할 수 있습니다.
-
그룹은 공개 그룹과 비공개 그룹으로 나누어져 있습니다.
공개 그룹 : 특정 사용자가 기부형식으로 가게에 금액을 선결제 하며 누구나 금액을 사용가능
비공개 그룹 : 회사나, 동아리 등 특정 사용자들만 사용 가능한 그룹으로 비밀번호를 통해 입장 가능
|
|
|
|
|
|
|
|
김기훈 (Android & 팀장) |
차현우 (Android) |
조성윤 (Android) |
서현석 (Android) |
김성수 (Back-end) |
경이현 (Back-end) |
-
Front-End : Kotlin, Android Studio
-
Back-End : Java17, Spring boot, Spring Data JPA, Spring Security
-
Infra : Amazon EC2, Docker, Jenkins, Nginx
-
DB : Mysql
-
Tools : Git, Jira, Notion
C:.
├─.gradle
│ ├─8.11.1
│ │ ├─checksums
│ │ ├─executionHistory
│ │ ├─expanded
│ │ ├─fileChanges
│ │ ├─fileHashes
│ │ └─vcsMetadata
│ ├─buildOutputCleanup
│ └─vcs-1
├─.idea
│ ├─dataSources
│ │ └─4063f9e9-6a34-4c40-b20e-12ee78d77031
│ │ └─storage_v2
│ │ └─_src_
│ │ └─schema
│ └─modules
├─build
│ ├─classes
│ │ └─java
│ │ ├─main
│ │ │ └─com
│ │ │ └─d111
│ │ │ └─PrePay
│ │ │ ├─aop
│ │ │ ├─bootpay
│ │ │ │ ├─request
│ │ │ │ ├─response
│ │ │ │ └─util
│ │ │ ├─config
│ │ │ ├─controller
│ │ │ ├─dto
│ │ │ │ ├─request
│ │ │ │ └─respond
│ │ │ ├─exception
│ │ │ ├─global
│ │ │ ├─model
│ │ │ ├─repository
│ │ │ ├─schedule
│ │ │ ├─security
│ │ │ │ ├─config
│ │ │ │ ├─controller
│ │ │ │ ├─dto
│ │ │ │ ├─entity
│ │ │ │ ├─jwt
│ │ │ │ ├─oauth2
│ │ │ │ ├─repository
│ │ │ │ └─service
│ │ │ ├─service
│ │ │ └─value
│ │ └─test
│ │ └─com
│ │ └─d111
│ │ └─PrePay
│ ├─generated
│ │ ├─querydsl
│ │ │ └─com
│ │ │ └─d111
│ │ │ └─PrePay
│ │ │ ├─model
│ │ │ └─security
│ │ │ └─entity
│ │ └─sources
│ │ └─headers
│ │ └─java
│ │ ├─main
│ │ └─test
│ ├─libs
│ ├─reports
│ │ ├─problems
│ │ └─tests
│ │ └─test
│ │ ├─classes
│ │ ├─css
│ │ ├─js
│ │ └─packages
│ ├─resources
│ │ └─main
│ ├─test-results
│ │ └─test
│ │ └─binary
│ └─tmp
│ ├─bootJar
│ ├─compileJava
│ │ └─compileTransaction
│ │ ├─backup-dir
│ │ └─stash-dir
│ ├─compileTestJava
│ │ └─compileTransaction
│ │ ├─backup-dir
│ │ └─stash-dir
│ ├─jar
│ └─test
├─gradle
│ └─wrapper
└─src
├─main
│ ├─java
│ │ └─com
│ │ └─d111
│ │ └─PrePay
│ │ ├─aop
│ │ ├─bootpay
│ │ │ ├─request
│ │ │ ├─response
│ │ │ └─util
│ │ ├─config
│ │ ├─controller
│ │ ├─dto
│ │ │ ├─request
│ │ │ └─respond
│ │ ├─exception
│ │ ├─global
│ │ ├─model
│ │ ├─repository
│ │ ├─schedule
│ │ ├─security
│ │ │ ├─config
│ │ │ ├─controller
│ │ │ ├─dto
│ │ │ ├─entity
│ │ │ ├─jwt
│ │ │ ├─oauth2
│ │ │ ├─repository
│ │ │ └─service
│ │ ├─service
│ │ └─value
│ └─resources
└─test
└─java
└─com
└─d111
└─PrePay
1️⃣ 영수증 제공 및 결제 내역 공유
- 모든 결제에 대해 영수증을 자동 제공하여 투명한 거래를 보장합니다.
- 모임원 전체가 실시간으로 결제 내역을 확인할 수 있어 관리가 용이합니다.
2️⃣ 공개 선결제 모임 지원
- 누구나 사용할 수 있는 공개 선결제 모임을 지원합니다.
- 기부 형식의 선결제가 가능하며, 안전하고 투명한 운영이 가능합니다.
3️⃣ 편리한 결제 내역 관리
- 기존의 수기 관리 방식의 불편함을 해소하여 보다 체계적인 관리가 가능합니다.
- 결제 내역을 디지털화하여 빠르고 정확한 기록 확인이 가능합니다.
4️⃣ 유연한 금액 사용 방식
- 선결제된 금액을 자유롭게 설정 및 관리할 수 있어 효율적인 비용 운용이 가능합니다.
김기훈 : 선결제 앱을 개발하면서 프로젝트에서 MVVM(Model-View-ViewModel) 패턴을 사용하여 코드의 유지보수성과 확장성을 높였습니다. 팀원들간의 협업과 Jira를 활용하여 일정 관리를 진행하여 프로젝트를 잘 마무리하였습니다. 이 프로젝트를 통해 협업과 Jira, 안드로이드 디자인 패턴에 대해 학습할 수 있어 좋았습니다.
차현우 : 코틀린을 처음 접하면서 어려움을 많이 겪었지만 MVVM 패턴을 학습하고, 모바일 XML 디자인에서 어떤 부분을 신경 써야 하는지 알 수 있었습니다. 코틀린의 동작구조(Model-View, Adapter, RecyclerView 등)를 학습하고 모바일 프로젝트 협업의 기틀을 다질 수 있었습니다.
조성윤 : 코틀린을 처음 사용해봐서 초기에 어려웠지만, MVVM 패턴에 적응하면서 이걸 왜 쓰는지에 대한 이해를 하였습니다. 또한 디자인 패턴을 학습하며 어떻게 하면 가독성과 유지보수성을 높일 수 있는지 배웠고, 안드로이드 환경에서 어떻게 코드를 작성할지 배울 수 있었습니다.
서현석 : 안드로이드 개발을 하며 코틀린을 배우면서 모바일 앱이 어떤 식으로 구현되는지 학습할 수 있었고, 개발자로서의 저의 역량이 많이 향상된 것도 느꼈습니다. 또한 모바일 UI에 대해서 깊이 고민해 볼 수 있는 좋은 기회였습니다.
김성수 : 6인 프로젝트를 진행하며 Hibernate를 학습하고 도입하는 과정에서 많은 것을 배울 수 있었습니다. 뿐만 아니라 Docker, Jenkins를 이용해 EC2에 배포를 직접 해보면서 배포의 흐름을 익힐 수 있었습니다.
경이현 : 스프링 프레임워크의 동작 방식을 이해할 수 있었던 프로젝트였습니다. 또한, JPA가 내부적으로 어떻게 작동하는지 학습할 수 있었고, 특히 N+1 문제를 직접 경험하며 이를 해결하는 과정에서 효율적인 JPA 활용법을 익힐 수 있었습니다.


